From f225e15b2cb0326a43335f3799dbd28a0bba4ec4 Mon Sep 17 00:00:00 2001 From: Alejandro Mery Date: Tue, 22 Aug 2023 01:48:29 +0000 Subject: [PATCH] wireguard: rename EndpointAddress.Name to Host and add String() method Signed-off-by: Alejandro Mery --- pkg/wireguard/config.go | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/pkg/wireguard/config.go b/pkg/wireguard/config.go index 9af6902..345e25e 100644 --- a/pkg/wireguard/config.go +++ b/pkg/wireguard/config.go @@ -3,6 +3,7 @@ package wireguard import ( "encoding/base64" "errors" + "fmt" "io" "net/netip" "strconv" @@ -44,10 +45,23 @@ type PeerConfig struct { // EndpointAddress is a host:port pair to reach the Peer type EndpointAddress struct { - Name string + Host string Port uint16 } +func (ep EndpointAddress) String() string { + switch { + case ep.Host == "": + return "" + case ep.Port == 0: + return ep.Host + case !strings.ContainsRune(ep.Host, ':'): + return fmt.Sprintf("%s:%v", ep.Host, ep.Port) + default: + return fmt.Sprintf("[%s]:%v", ep.Host, ep.Port) + } +} + // FromString sets the EndpointAddress from a given "[host]:port" func (ep *EndpointAddress) FromString(s string) error { host, port, err := core.SplitHostPort(s) @@ -55,7 +69,7 @@ func (ep *EndpointAddress) FromString(s string) error { return err } - ep.Name = host + ep.Host = host switch { case port != "":