Browse Source

changed logs and saved private key

0xdcarns 3 years ago
parent
commit
26c70bb2f1
3 changed files with 11 additions and 4 deletions
  1. 5 3
      controllers/network.go
  2. 5 0
      netclient/functions/daemon.go
  3. 1 1
      netclient/functions/mqpublish.go

+ 5 - 3
controllers/network.go

@@ -30,7 +30,7 @@ func networkHandlers(r *mux.Router) {
 	r.HandleFunc("/api/networks/{networkname}", securityCheck(false, http.HandlerFunc(updateNetwork))).Methods("PUT")
 	r.HandleFunc("/api/networks/{networkname}/nodelimit", securityCheck(true, http.HandlerFunc(updateNetworkNodeLimit))).Methods("PUT")
 	r.HandleFunc("/api/networks/{networkname}", securityCheck(true, http.HandlerFunc(deleteNetwork))).Methods("DELETE")
-	r.HandleFunc("/api/networks/{networkname}/keyupdate", securityCheck(false, http.HandlerFunc(keyUpdate))).Methods("POST")
+	r.HandleFunc("/api/networks/{networkname}/keyupdate", securityCheck(true, http.HandlerFunc(keyUpdate))).Methods("POST")
 	r.HandleFunc("/api/networks/{networkname}/keys", securityCheck(false, http.HandlerFunc(createAccessKey))).Methods("POST")
 	r.HandleFunc("/api/networks/{networkname}/keys", securityCheck(false, http.HandlerFunc(getAccessKeys))).Methods("GET")
 	r.HandleFunc("/api/networks/{networkname}/keys/{name}", securityCheck(false, http.HandlerFunc(deleteAccessKey))).Methods("DELETE")
@@ -119,9 +119,11 @@ func keyUpdate(w http.ResponseWriter, r *http.Request) {
 		return
 	}
 	for _, node := range nodes {
-		logger.Log(3, "updating node ", node.Name, " for a key update")
+		logger.Log(2, "updating node ", node.Name, " for a key update")
 		if node.IsServer != "yes" {
-			runUpdates(&node, false)
+			if err = mq.NodeUpdate(&node); err != nil {
+				logger.Log(1, "failed to send update to node during a network wide key update", node.Name, node.ID, err.Error())
+			}
 		}
 	}
 }

+ 5 - 0
netclient/functions/daemon.go

@@ -91,6 +91,11 @@ func UpdateKeys(nodeCfg *config.ClientConfig, client mqtt.Client) error {
 		ncutils.Log("error updating wireguard key " + err.Error())
 		return err
 	}
+	if storeErr := wireguard.StorePrivKey(key.String(), nodeCfg.Network); storeErr != nil {
+		ncutils.Log("failed to save private key" + storeErr.Error())
+		return storeErr
+	}
+
 	nodeCfg.Node.PublicKey = key.PublicKey().String()
 	var commsCfg = getCommsCfgByNode(&nodeCfg.Node)
 	PublishNodeUpdate(&commsCfg, nodeCfg)

+ 1 - 1
netclient/functions/mqpublish.go

@@ -99,7 +99,7 @@ func PublishNodeUpdate(commsCfg, nodeCfg *config.ClientConfig) error {
 	if err = publish(commsCfg, nodeCfg, fmt.Sprintf("update/%s", nodeCfg.Node.ID), data, 1); err != nil {
 		return err
 	}
-	ncutils.PrintLog("sent a node update to server for node"+nodeCfg.Node.ID+", "+nodeCfg.Node.ID, 1)
+	ncutils.PrintLog("sent a node update to server for node"+nodeCfg.Node.Name+", "+nodeCfg.Node.ID, 1)
 	return nil
 }