From a31abf8f0909f623793c3c602b4a7aae36267114 Mon Sep 17 00:00:00 2001 From: abhishek9686 Date: Tue, 17 Jun 2025 17:06:22 +0530 Subject: [PATCH] add inet gw validate check on update node api --- controllers/node.go | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/controllers/node.go b/controllers/node.go index e4ed2851..b412d9cf 100644 --- a/controllers/node.go +++ b/controllers/node.go @@ -626,6 +626,7 @@ func updateNode(w http.ResponseWriter, r *http.Request) { logic.ReturnErrorResponse(w, r, logic.FormatError(err, "badrequest")) return } + if !servercfg.IsPro { newData.AdditionalRagIps = []string{} } @@ -638,6 +639,13 @@ func updateNode(w http.ResponseWriter, r *http.Request) { ) return } + if newNode.IsInternetGateway && len(newNode.InetNodeReq.InetNodeClientIDs) > 0 { + err = logic.ValidateInetGwReq(*newNode, newNode.InetNodeReq, newNode.IsInternetGateway && currentNode.IsInternetGateway) + if err != nil { + logic.ReturnErrorResponse(w, r, logic.FormatError(err, "badrequest")) + return + } + } relayUpdate := logic.RelayUpdates(¤tNode, newNode) if relayUpdate && newNode.IsRelay { err = logic.ValidateRelay(models.RelayRequest{ @@ -670,19 +678,9 @@ func updateNode(w http.ResponseWriter, r *http.Request) { logic.UpdateRelayed(¤tNode, newNode) } if !currentNode.IsInternetGateway && newNode.IsInternetGateway { - err = logic.ValidateInetGwReq(*newNode, newNode.InetNodeReq, false) - if err != nil { - logic.ReturnErrorResponse(w, r, logic.FormatError(err, "badrequest")) - return - } logic.SetInternetGw(newNode, newNode.InetNodeReq) } if currentNode.IsInternetGateway && newNode.IsInternetGateway { - err = logic.ValidateInetGwReq(*newNode, newNode.InetNodeReq, true) - if err != nil { - logic.ReturnErrorResponse(w, r, logic.FormatError(err, "badrequest")) - return - } logic.UnsetInternetGw(newNode) logic.SetInternetGw(newNode, newNode.InetNodeReq) }