This commit is contained in:
autoantwort 2024-07-08 17:57:34 +00:00 committed by GitHub
commit fbea9c29cf
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -62,6 +62,8 @@ func BuildClientConfig(client model.Client, server model.Server, setting model.G
desiredHost := setting.EndpointAddress
desiredPort := server.Interface.ListenPort
is_ipv4 := strings.Contains(desiredHost, ".")
if is_ipv4 {
if strings.Contains(desiredHost, ":") {
split := strings.Split(desiredHost, ":")
desiredHost = split[0]
@ -71,6 +73,20 @@ func BuildClientConfig(client model.Client, server model.Server, setting model.G
log.Error("Endpoint appears to be incorrectly formatted: ", err)
}
}
} else {
if strings.Contains(desiredHost, "]") {
// IPv6 with port
split := strings.Split(desiredHost, "]")
desiredHost = split[0] + "]"
if n, err := strconv.Atoi(split[1][1:]); err == nil {
desiredPort = n
} else {
log.Error("Endpoint appears to be incorrectly formatted: ", err)
}
} else {
desiredHost = "[" + desiredHost + "]"
}
}
peerEndpoint := fmt.Sprintf("Endpoint = %s:%d\n", desiredHost, desiredPort)
peerPersistentKeepalive := ""