diff --git a/main.go b/main.go index 942acef..29e25ee 100644 --- a/main.go +++ b/main.go @@ -335,12 +335,14 @@ func main() { logger.Fatal("Failed to create client: %v", err) } - // Create WireGuard service - wgService, err := wg.NewWireGuardService(interfaceName, mtuInt, reachableAt, generateAndSaveKeyTo, client) - if err != nil { - logger.Fatal("Failed to create WireGuard service: %v", err) + if reachableAt != "" { + // Create WireGuard service + wgService, err := wg.NewWireGuardService(interfaceName, mtuInt, reachableAt, generateAndSaveKeyTo, client) + if err != nil { + logger.Fatal("Failed to create WireGuard service: %v", err) + } + defer wgService.Close() } - defer wgService.Close() // Create TUN device and network stack var tun tun.Device @@ -417,7 +419,7 @@ func main() { public_key=%s allowed_ip=%s/32 endpoint=%s -persistent_keepalive_interval=5`, fixKey(fmt.Sprintf("%s", privateKey)), fixKey(wgData.PublicKey), wgData.ServerIP, endpoint) +persistent_keepalive_interval=5`, fixKey(privateKey.String()), fixKey(wgData.PublicKey), wgData.ServerIP, endpoint) err = dev.IpcSet(config) if err != nil { @@ -549,7 +551,7 @@ persistent_keepalive_interval=5`, fixKey(fmt.Sprintf("%s", privateKey)), fixKey( logger.Debug("Public key: %s", publicKey) err := client.SendMessage("newt/wg/register", map[string]interface{}{ - "publicKey": fmt.Sprintf("%s", publicKey), + "publicKey": publicKey.PublicKey(), }) if err != nil { logger.Error("Failed to send registration message: %v", err)