diff --git a/controllers/extClientHttpController.go b/controllers/extClientHttpController.go index 46eef4f5..22dfbbb4 100644 --- a/controllers/extClientHttpController.go +++ b/controllers/extClientHttpController.go @@ -313,8 +313,14 @@ func createExtClient(w http.ResponseWriter, r *http.Request) { var extclient models.ExtClient extclient.Network = networkName extclient.IngressGatewayID = macaddress - //get extclient from body of request - err := json.NewDecoder(r.Body).Decode(&extclient) + node, err := functions.GetNodeByMacAddress(networkName, macaddress) + if err != nil { + returnErrorResponse(w, r, formatError(err, "internal")) + return + } + extclient.IngressGatewayEndpoint = node.Endpoint + ":" + strconv.FormatInt(int64(node.ListenPort), 10) + + err = json.NewDecoder(r.Body).Decode(&extclient) if err != nil && !errors.Is(err, io.EOF) { returnErrorResponse(w, r, formatError(err, "internal")) return diff --git a/models/.extclient.go.swp b/models/.extclient.go.swp new file mode 100644 index 00000000..63b92648 Binary files /dev/null and b/models/.extclient.go.swp differ diff --git a/models/extclient.go b/models/extclient.go index e2007bab..44c15ab7 100644 --- a/models/extclient.go +++ b/models/extclient.go @@ -41,5 +41,5 @@ type ExtClient struct { Address string `json:"address" bson:"address"` LastModified int64 `json:"lastmodified" bson:"lastmodified"` IngressGatewayID string `json:"ingressgatewayid" bson:"ingressgatewayid"` - IngressGatewayEnpoint string `json:"ingressgatewayendpoint" bson:"ingressgatewayendpoint"` + IngressGatewayEndpoint string `json:"ingressgatewayendpoint" bson:"ingressgatewayendpoint"` }