Browse Source

dyn sec netclient changes

Abhishek Kondur 2 years ago
parent
commit
2eb5cde6ab
3 changed files with 27 additions and 24 deletions
  1. 23 1
      controllers/node.go
  2. 0 4
      mq/mq.go
  3. 4 19
      netclient/functions/daemon.go

+ 23 - 1
controllers/node.go

@@ -591,8 +591,19 @@ func createNode(w http.ResponseWriter, r *http.Request) {
 		returnErrorResponse(w, r, formatError(err, "internal"))
 		return
 	}
+	// Delete Any Existing Client with this ID.
+	mq.DynSecChan <- mq.DynSecAction{
+		ActionType: mq.DeleteClient,
+		Payload: mq.MqDynsecPayload{
+			Commands: []mq.MqDynSecCmd{
+				{
+					Command:  mq.DeleteClientCmd,
+					Username: node.ID,
+				},
+			},
+		},
+	}
 	// Create client for this node in Mq
-	// Delete Any Existing Client
 	mq.DynSecChan <- mq.DynSecAction{
 		ActionType: mq.CreateClient,
 		Payload: mq.MqDynsecPayload{
@@ -935,6 +946,17 @@ func deleteNode(w http.ResponseWriter, r *http.Request) {
 		returnErrorResponse(w, r, formatError(err, "internal"))
 		return
 	}
+	mq.DynSecChan <- mq.DynSecAction{
+		ActionType: mq.DeleteClient,
+		Payload: mq.MqDynsecPayload{
+			Commands: []mq.MqDynSecCmd{
+				{
+					Command:  mq.DeleteClientCmd,
+					Username: nodeid,
+				},
+			},
+		},
+	}
 	returnSuccessResponse(w, r, nodeid+" deleted.")
 
 	logger.Log(1, r.Header.Get("user"), "Deleted node", nodeid, "from network", params["network"])

+ 0 - 4
mq/mq.go

@@ -26,13 +26,9 @@ var mqclient mqtt.Client
 func SetupMQTT() {
 	opts := mqtt.NewClientOptions()
 	broker, _ := servercfg.GetMessageQueueEndpoint()
-	logger.Log(0, "----------> BROKER: ", broker)
 	opts.AddBroker(broker)
 	id := ncutils.MakeRandomString(23)
 	opts.ClientID = id
-	// if secure {
-	// 	opts.SetTLSConfig(&serverctl.TlsConfig)
-	// }
 	opts.SetUsername(mqDynSecAdmin)
 	opts.SetPassword(defaultAdminPassword)
 	opts.SetAutoReconnect(true)

+ 4 - 19
netclient/functions/daemon.go

@@ -238,13 +238,7 @@ func setupMQTTSingleton(cfg *config.ClientConfig) error {
 	opts := mqtt.NewClientOptions()
 	server := cfg.Server.Server
 	port := cfg.Server.MQPort
-	opts.AddBroker("ssl://" + server + ":" + port)
-	tlsConfig, err := NewTLSConfig(server)
-	if err != nil {
-		logger.Log(0, "failed to get TLS config for", server, err.Error())
-		return err
-	}
-	opts.SetTLSConfig(tlsConfig)
+	opts.AddBroker("tcp://" + server + ":" + port)
 	mqclient = mqtt.NewClient(opts)
 	var connecterr error
 	opts.SetClientID(ncutils.MakeRandomString(23))
@@ -265,13 +259,7 @@ func setupMQTT(cfg *config.ClientConfig) error {
 	opts := mqtt.NewClientOptions()
 	server := cfg.Server.Server
 	port := cfg.Server.MQPort
-	opts.AddBroker("mqtts://" + server + ":" + port)
-	// tlsConfig, err := NewTLSConfig(server)
-	// if err != nil {
-	// 	logger.Log(0, "failed to get TLS config for", server, err.Error())
-	// 	return err
-	// }
-	//opts.SetTLSConfig(tlsConfig)
+	opts.AddBroker(fmt.Sprintf("tcp://%s:%s", server, port))
 	opts.SetUsername(cfg.Node.ID)
 	opts.SetPassword(cfg.Node.Password)
 	opts.SetClientID(ncutils.MakeRandomString(23))
@@ -316,11 +304,8 @@ func setupMQTT(cfg *config.ClientConfig) error {
 		}
 	}
 	if connecterr != nil {
-		//reRegisterWithServer(cfg)
-		//try after re-registering
-		if token := mqclient.Connect(); !token.WaitTimeout(30*time.Second) || token.Error() != nil {
-			return errors.New("unable to connect to broker")
-		}
+		logger.Log(0, "failed to establish connection to broker: ", connecterr.Error())
+		return connecterr
 	}
 
 	return nil