From f226e8f7f3f201d78c5e464f703012d2180e9f1c Mon Sep 17 00:00:00 2001 From: Owen Date: Mon, 17 Nov 2025 13:36:01 -0500 Subject: [PATCH] Import fixkey Former-commit-id: 074fee41ef1ca317361d2759b0edf7097e4cbb7c --- olm/common.go | 24 ++++-------------------- olm/olm.go | 2 +- 2 files changed, 5 insertions(+), 21 deletions(-) diff --git a/olm/common.go b/olm/common.go index 1a10eda..6ebfb51 100644 --- a/olm/common.go +++ b/olm/common.go @@ -1,8 +1,6 @@ package olm import ( - "encoding/base64" - "encoding/hex" "fmt" "net" "os/exec" @@ -142,20 +140,6 @@ func formatEndpoint(endpoint string) string { return endpoint } -func fixKey(key string) string { - // Remove any whitespace - key = strings.TrimSpace(key) - - // Decode from base64 - decoded, err := base64.StdEncoding.DecodeString(key) - if err != nil { - logger.Fatal("Error decoding base64") - } - - // Convert to hex - return hex.EncodeToString(decoded) -} - func mapToWireGuardLogLevel(level logger.LogLevel) int { switch level { case logger.DEBUG: @@ -243,8 +227,8 @@ func ConfigurePeer(dev *device.Device, siteConfig SiteConfig, privateKey wgtypes // Construct WireGuard config for this peer var configBuilder strings.Builder - configBuilder.WriteString(fmt.Sprintf("private_key=%s\n", fixKey(privateKey.String()))) - configBuilder.WriteString(fmt.Sprintf("public_key=%s\n", fixKey(siteConfig.PublicKey))) + configBuilder.WriteString(fmt.Sprintf("private_key=%s\n", util.FixKey(privateKey.String()))) + configBuilder.WriteString(fmt.Sprintf("public_key=%s\n", util.FixKey(siteConfig.PublicKey))) // Add each allowed IP separately for _, allowedIP := range allowedIPs { @@ -275,7 +259,7 @@ func ConfigurePeer(dev *device.Device, siteConfig SiteConfig, privateKey wgtypes wgConfig := &peermonitor.WireGuardConfig{ SiteID: siteConfig.SiteId, - PublicKey: fixKey(siteConfig.PublicKey), + PublicKey: util.FixKey(siteConfig.PublicKey), ServerIP: strings.Split(siteConfig.ServerIP, "/")[0], Endpoint: siteConfig.Endpoint, PrimaryRelay: primaryRelay, @@ -296,7 +280,7 @@ func ConfigurePeer(dev *device.Device, siteConfig SiteConfig, privateKey wgtypes func RemovePeer(dev *device.Device, siteId int, publicKey string) error { // Construct WireGuard config to remove the peer var configBuilder strings.Builder - configBuilder.WriteString(fmt.Sprintf("public_key=%s\n", fixKey(publicKey))) + configBuilder.WriteString(fmt.Sprintf("public_key=%s\n", util.FixKey(publicKey))) configBuilder.WriteString("remove=true\n") config := configBuilder.String() diff --git a/olm/olm.go b/olm/olm.go index 0e622ee..af68487 100644 --- a/olm/olm.go +++ b/olm/olm.go @@ -455,7 +455,7 @@ func TunnelProcess(ctx context.Context, config Config, id string, secret string, logger.Warn("Peer %d is disconnected", siteID) } }, - fixKey(privateKey.String()), + util.FixKey(privateKey.String()), olm, dev, config.Holepunch,