Browse Source

Merge pull request #508 from gravitl/bugfix_v0.9.0_server_key_removal

Bugfix v0.9.0 server key removal
dcarns 3 years ago
parent
commit
07b2055abf

+ 1 - 1
compose/docker-compose.caddy.yml

@@ -40,7 +40,7 @@ services:
     container_name: netmaker-ui
     depends_on:
       - netmaker
-    image: gravitl/netmaker-ui:v0.9.0
+    image: gravitl/netmaker-ui:v0.9.1
     links:
       - "netmaker:api"
     ports:

+ 1 - 1
compose/docker-compose.contained.yml

@@ -38,7 +38,7 @@ services:
     container_name: netmaker-ui
     depends_on:
       - netmaker
-    image: gravitl/netmaker-ui:v0.9.0
+    image: gravitl/netmaker-ui:v0.9.1
     links:
       - "netmaker:api"
     ports:

+ 1 - 1
compose/docker-compose.nodns.yml

@@ -36,7 +36,7 @@ services:
     container_name: netmaker-ui
     depends_on:
       - netmaker
-    image: gravitl/netmaker-ui:v0.9.0
+    image: gravitl/netmaker-ui:v0.9.1
     links:
       - "netmaker:api"
     ports:

+ 1 - 1
compose/docker-compose.reference.yml

@@ -41,7 +41,7 @@ services:
     container_name: netmaker-ui
     depends_on:
       - netmaker
-    image: gravitl/netmaker-ui:v0.9.0
+    image: gravitl/netmaker-ui:v0.9.1
     links:
       - "netmaker:api"
     ports:

+ 1 - 1
compose/docker-compose.yml

@@ -40,7 +40,7 @@ services:
     container_name: netmaker-ui
     depends_on:
       - netmaker
-    image: gravitl/netmaker-ui:v0.9.0
+    image: gravitl/netmaker-ui:v0.9.1
     links:
       - "netmaker:api"
     ports:

+ 6 - 0
controllers/networkHttpController.go

@@ -275,12 +275,18 @@ func updateNetwork(w http.ResponseWriter, r *http.Request) {
 		returnErrorResponse(w, r, formatError(err, "badrequest"))
 		return
 	}
+
 	rangeupdate, localrangeupdate, err := logic.UpdateNetwork(&network, &newNetwork)
 	if err != nil {
 		returnErrorResponse(w, r, formatError(err, "badrequest"))
 		return
 	}
 
+	// if newNetwork.IsDualStack != currentNetwork.IsDualStack && newNetwork.IsDualStack == "no" {
+	// 	// Remove IPv6 address from network nodes
+	// 	RemoveNetworkNodeIPv6Addresses(currentNetwork.NetID)
+	// }
+
 	if rangeupdate {
 		err = logic.UpdateNetworkNodeAddresses(network.NetID)
 		if err != nil {

+ 32 - 0
logic/networks.go

@@ -260,6 +260,38 @@ func UpdateNetworkLocalAddresses(networkName string) error {
 	return nil
 }
 
+// RemoveNetworkNodeIPv6Addresses - removes network node IPv6 addresses
+func RemoveNetworkNodeIPv6Addresses(networkName string) error {
+
+	collections, err := database.FetchRecords(database.NODES_TABLE_NAME)
+	if err != nil {
+		return err
+	}
+
+	for _, value := range collections {
+
+		var node models.Node
+		err := json.Unmarshal([]byte(value), &node)
+		if err != nil {
+			fmt.Println("error in node address assignment!")
+			return err
+		}
+		if node.Network == networkName {
+			node.IsDualStack = "no"
+			node.Address6 = ""
+			node.PullChanges = "yes"
+			data, err := json.Marshal(&node)
+			if err != nil {
+				return err
+			}
+			node.SetID()
+			database.Insert(node.ID, string(data), database.NODES_TABLE_NAME)
+		}
+	}
+
+	return nil
+}
+
 // UpdateNetworkNodeAddresses - updates network node addresses
 func UpdateNetworkNodeAddresses(networkName string) error {
 

+ 3 - 0
logic/wireguard.go

@@ -325,6 +325,9 @@ func setWGKeyConfig(node models.Node) error {
 func removeLocalServer(node *models.Node) error {
 	var ifacename = node.Interface
 	var err error
+	if err = RemovePrivKey(node.ID); err != nil {
+		Log("failed to remove server conf from db "+node.ID, 1)
+	}
 	if ifacename != "" {
 		if !ncutils.IsKernel() {
 			if err = RemoveConf(ifacename, true); err == nil {