From 33fb93df829bbf7e3727c612a012126048c57f2d Mon Sep 17 00:00:00 2001 From: egnappahz Date: Thu, 19 May 2022 12:43:40 +0200 Subject: [PATCH 1/3] Support custom ports No longer assume the port is 443/SSL --- pkg/link/link.go | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/pkg/link/link.go b/pkg/link/link.go index 3635119c..c132bbe4 100644 --- a/pkg/link/link.go +++ b/pkg/link/link.go @@ -11,6 +11,7 @@ import ( "net" "net/http" "runtime" + "strings" "sync" "time" @@ -79,8 +80,10 @@ func InitConnection(server string, cfg *config.Config, tlsConfig *tls.Config) (* config.Bool(cfg.IPv6 && bool(cfg.F5Config.Object.IPv6)), cfg.F5Config.Object.UrZ, ) - - serverIPs, err := net.LookupIP(server) + servername := strings.SplitN(server, ":", -1)[0] + serverport := strings.SplitN(server, ":", -1)[1] + log.Printf("Eggz: Server: %q", servername) + serverIPs, err := net.LookupIP(servername) if err != nil || len(serverIPs) == 0 { return nil, fmt.Errorf("failed to resolve %s: %s", server, err) } @@ -111,12 +114,12 @@ func InitConnection(server string, cfg *config.Config, tlsConfig *tls.Config) (* } l.HTTPConn, err = dtls.Dial("udp", addr, conf) if err != nil { - return nil, fmt.Errorf("failed to dial %s:%s: %s", server, cfg.F5Config.Object.TunnelPortDTLS, err) + return nil, fmt.Errorf("failed to dial %s:%s: %s", servername, cfg.F5Config.Object.TunnelPortDTLS, err) } } else { - l.HTTPConn, err = tls.Dial("tcp", fmt.Sprintf("%s:443", server), tlsConfig) + l.HTTPConn, err = tls.Dial("tcp", fmt.Sprintf("%s:%s", servername, serverport), tlsConfig) if err != nil { - return nil, fmt.Errorf("failed to dial %s:443: %s", server, err) + return nil, fmt.Errorf("failed to dial %s:%s: %s", servername, serverport, err) } } From 8553610c1327a4e089a5b5c34d11fccc5defde66 Mon Sep 17 00:00:00 2001 From: egnappahz Date: Thu, 19 May 2022 20:01:35 +0200 Subject: [PATCH 2/3] Clean up debug cmds Signed-off-by: egnappahz --- pkg/link/link.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkg/link/link.go b/pkg/link/link.go index c132bbe4..e6237495 100644 --- a/pkg/link/link.go +++ b/pkg/link/link.go @@ -82,7 +82,11 @@ func InitConnection(server string, cfg *config.Config, tlsConfig *tls.Config) (* ) servername := strings.SplitN(server, ":", -1)[0] serverport := strings.SplitN(server, ":", -1)[1] - log.Printf("Eggz: Server: %q", servername) + + if l.debug { + log.Printf("Servername: %s Serverport: %s", servername, serverport) + } + serverIPs, err := net.LookupIP(servername) if err != nil || len(serverIPs) == 0 { return nil, fmt.Errorf("failed to resolve %s: %s", server, err) From 97df33e9d3f21eb8e1040d42b17839e66c9308ff Mon Sep 17 00:00:00 2001 From: egnappahz Date: Tue, 19 Sep 2023 12:21:27 +0200 Subject: [PATCH 3/3] Update link.go use before declaration I mean, really? --- pkg/link/link.go | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/pkg/link/link.go b/pkg/link/link.go index e6237495..d50fb081 100644 --- a/pkg/link/link.go +++ b/pkg/link/link.go @@ -83,10 +83,6 @@ func InitConnection(server string, cfg *config.Config, tlsConfig *tls.Config) (* servername := strings.SplitN(server, ":", -1)[0] serverport := strings.SplitN(server, ":", -1)[1] - if l.debug { - log.Printf("Servername: %s Serverport: %s", servername, serverport) - } - serverIPs, err := net.LookupIP(servername) if err != nil || len(serverIPs) == 0 { return nil, fmt.Errorf("failed to resolve %s: %s", server, err) @@ -101,8 +97,10 @@ func InitConnection(server string, cfg *config.Config, tlsConfig *tls.Config) (* pppUp: make(chan struct{}, 1), tunUp: make(chan struct{}, 1), debug: cfg.Debug, - } - + } + if l.debug { + log.Printf("Servername: %s Serverport: %s", servername, serverport) + } if cfg.DTLS && cfg.F5Config.Object.TunnelDTLS { s := fmt.Sprintf("%s:%s", server, cfg.F5Config.Object.TunnelPortDTLS) log.Printf("Connecting to %s using DTLS", s)