| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 | package logicimport (	"encoding/json"	"github.com/gravitl/netmaker/database")type serverData struct {	PrivateKey string `json:"privatekey,omitempty" bson:"privatekey,omitempty"`}// StorePrivKey - stores server client WireGuard privatekey if neededfunc StorePrivKey(serverID string, privateKey string) error {	var newData = serverData{}	var err error	var data []byte	newData.PrivateKey = privateKey	data, err = json.Marshal(&newData)	if err != nil {		return err	}	return database.Insert(serverID, string(data), database.SERVERCONF_TABLE_NAME)}// FetchPrivKey - fetches private keyfunc FetchPrivKey(serverID string) (string, error) {	var dbData string	var err error	var fetchedData = serverData{}	dbData, err = database.FetchRecord(database.SERVERCONF_TABLE_NAME, serverID)	if err != nil {		return "", err	}	err = json.Unmarshal([]byte(dbData), &fetchedData)	if err != nil {		return "", err	}	return fetchedData.PrivateKey, nil}// RemovePrivKey - removes a private keyfunc RemovePrivKey(serverID string) error {	return database.DeleteRecord(database.SERVERCONF_TABLE_NAME, serverID)}
 |