Browse Source

fix serverctl add network

afeiszli 4 years ago
parent
commit
35826caa6f
1 changed files with 16 additions and 7 deletions
  1. 16 7
      functions/helpers.go

+ 16 - 7
functions/helpers.go

@@ -7,6 +7,7 @@ package functions
 import (
 import (
 	"context"
 	"context"
 	"encoding/base64"
 	"encoding/base64"
+	"encoding/json"
 	"errors"
 	"errors"
 	"fmt"
 	"fmt"
 	"log"
 	"log"
@@ -45,18 +46,26 @@ func CreateServerToken(netID string) (string, error) {
 		return "", err
 		return "", err
 	}
 	}
 
 
+	var accessToken models.AccessToken
+        servervals := models.ServerConfig{
+			APIConnString: "127.0.0.1" + servercfg.GetAPIPort(),
+                        GRPCConnString: "127.0.0.1" + servercfg.GetGRPCPort(),
+                        GRPCSSL: "off",
+	}
+        accessToken.ServerConfig = servervals
+        accessToken.ClientConfig.Network = netID
+        accessToken.ClientConfig.Key = GenKey()
+
 	accesskey.Name = GenKeyName()
 	accesskey.Name = GenKeyName()
 	accesskey.Value = GenKey()
 	accesskey.Value = GenKey()
 	accesskey.Uses = 1
 	accesskey.Uses = 1
-	address := "127.0.0.1:" + servercfg.GetGRPCPort()
 
 
-	privAddr := ""
-	if *network.IsLocal {
-		privAddr = network.LocalRange
-	}
-        accessstringdec := address + "|"+ address + "|" + address + "|" + netID + "|" + accesskey.Value + "|" + privAddr
+        tokenjson, err := json.Marshal(accessToken)
+        if err != nil {
+                return accesskey.AccessString, err
+        }
 
 
-	accesskey.AccessString = base64.StdEncoding.EncodeToString([]byte(accessstringdec))
+        accesskey.AccessString = base64.StdEncoding.EncodeToString([]byte(tokenjson))
 
 
 	network.AccessKeys = append(network.AccessKeys, accesskey)
 	network.AccessKeys = append(network.AccessKeys, accesskey)