Skip to content

Commit 6e2587d

Browse files
authored
chore: use net.JoinHostPort (#4599)
* chore: use net.JoinHostPort Signed-off-by: zirain <[email protected]> * more fix Signed-off-by: zirain <[email protected]> * remove netutils.JoinHostPort Signed-off-by: zirain <[email protected]> --------- Signed-off-by: zirain <[email protected]>
1 parent db68027 commit 6e2587d

File tree

7 files changed

+23
-18
lines changed

7 files changed

+23
-18
lines changed

api/v1alpha1/envoygateway_helpers.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66
package v1alpha1
77

88
import (
9-
"fmt"
9+
"net"
10+
"strconv"
1011

1112
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
1213
"k8s.io/utils/ptr"
@@ -80,7 +81,7 @@ func (e *EnvoyGateway) GetEnvoyGatewayAdmin() *EnvoyGatewayAdmin {
8081
func (e *EnvoyGateway) GetEnvoyGatewayAdminAddress() string {
8182
address := e.GetEnvoyGatewayAdmin().Address
8283
if address != nil {
83-
return fmt.Sprintf("%s:%d", address.Host, address.Port)
84+
return net.JoinHostPort(address.Host, strconv.Itoa(address.Port))
8485
}
8586

8687
return ""

examples/extension-server/cmd/extension-server/main.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
package main
77

88
import (
9-
"fmt"
109
"log/slog"
1110
"net"
1211
"os"
@@ -82,7 +81,7 @@ func startExtensionServer(cCtx *cli.Context) error {
8281
logger := slog.New(slog.NewTextHandler(os.Stderr, &slog.HandlerOptions{
8382
Level: level,
8483
}))
85-
address := fmt.Sprintf("%s:%d", cCtx.String("host"), cCtx.Int("port"))
84+
address := net.JoinHostPort(cCtx.String("host"), cCtx.String("port"))
8685
logger.Info("Starting the extension server", slog.String("host", address))
8786
lis, err := net.Listen("tcp", address)
8887
if err != nil {

internal/extension/registry/extension_manager.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import (
1111
"errors"
1212
"fmt"
1313
"net"
14+
"strconv"
1415

1516
"google.golang.org/grpc"
1617
"google.golang.org/grpc/credentials"
@@ -123,13 +124,13 @@ func getExtensionServerAddress(service *egv1a1.ExtensionService) string {
123124
var serverAddr string
124125
switch {
125126
case service.FQDN != nil:
126-
serverAddr = fmt.Sprintf("%s:%d", service.FQDN.Hostname, service.FQDN.Port)
127+
serverAddr = net.JoinHostPort(service.FQDN.Hostname, strconv.Itoa(int(service.FQDN.Port)))
127128
case service.IP != nil:
128-
serverAddr = fmt.Sprintf("%s:%d", service.IP.Address, service.IP.Port)
129+
serverAddr = net.JoinHostPort(service.IP.Address, strconv.Itoa(int(service.IP.Port)))
129130
case service.Unix != nil:
130131
serverAddr = fmt.Sprintf("unix://%s", service.Unix.Path)
131132
case service.Host != "":
132-
serverAddr = fmt.Sprintf("%s:%d", service.Host, service.Port)
133+
serverAddr = net.JoinHostPort(service.Host, strconv.Itoa(int(service.Port)))
133134
}
134135
return serverAddr
135136
}

internal/gatewayapi/securitypolicy.go

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import (
99
"encoding/json"
1010
"errors"
1111
"fmt"
12+
"net"
1213
"net/http"
1314
"net/netip"
1415
"net/url"
@@ -921,16 +922,16 @@ func backendRefAuthority(resources *resource.Resources, backendRef *gwapiv1.Back
921922
// TODO: exists multi FQDN endpoints?
922923
for _, ep := range backend.Spec.Endpoints {
923924
if ep.FQDN != nil {
924-
return fmt.Sprintf("%s:%d", ep.FQDN.Hostname, ep.FQDN.Port)
925+
return net.JoinHostPort(ep.FQDN.Hostname, strconv.Itoa(int(ep.FQDN.Port)))
925926
}
926927
}
927928
}
928929
}
929930

930-
return fmt.Sprintf("%s.%s:%d",
931-
backendRef.Name,
932-
backendNamespace,
933-
*backendRef.Port)
931+
return net.JoinHostPort(
932+
fmt.Sprintf("%s.%s", backendRef.Name, backendNamespace),
933+
strconv.Itoa(int(*backendRef.Port)),
934+
)
934935
}
935936

936937
func (t *Translator) buildAuthorization(policy *egv1a1.SecurityPolicy) (*ir.Authorization, error) {

internal/kubernetes/port_forwarder.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,10 @@ package kubernetes
88
import (
99
"fmt"
1010
"io"
11+
"net"
1112
"net/http"
1213
"os"
14+
"strconv"
1315

1416
"k8s.io/apimachinery/pkg/types"
1517
"k8s.io/client-go/rest"
@@ -134,5 +136,5 @@ func (f *localForwarder) WaitForStop() {
134136
}
135137

136138
func (f *localForwarder) Address() string {
137-
return fmt.Sprintf("%s:%d", netutil.DefaultLocalAddress, f.localPort)
139+
return net.JoinHostPort(netutil.DefaultLocalAddress, strconv.Itoa(f.localPort))
138140
}

internal/xds/bootstrap/bootstrap.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,15 @@ import (
99
// Register embed
1010
_ "embed"
1111
"fmt"
12+
"net"
13+
"strconv"
1214
"strings"
1315
"text/template"
1416

1517
"k8s.io/apimachinery/pkg/util/sets"
1618

1719
egv1a1 "github.com/envoyproxy/gateway/api/v1alpha1"
18-
"github.com/envoyproxy/gateway/internal/utils/net"
20+
netutils "github.com/envoyproxy/gateway/internal/utils/net"
1921
"github.com/envoyproxy/gateway/internal/utils/regex"
2022
)
2123

@@ -199,9 +201,9 @@ func GetRenderedBootstrapConfig(opts *RenderBootstrapConfigOptions) (string, err
199201
host, port = *sink.OpenTelemetry.Host, uint32(sink.OpenTelemetry.Port)
200202
}
201203
if len(sink.OpenTelemetry.BackendRefs) > 0 {
202-
host, port = net.BackendHostAndPort(sink.OpenTelemetry.BackendRefs[0].BackendObjectReference, "")
204+
host, port = netutils.BackendHostAndPort(sink.OpenTelemetry.BackendRefs[0].BackendObjectReference, "")
203205
}
204-
addr := fmt.Sprintf("%s:%d", host, port)
206+
addr := net.JoinHostPort(host, strconv.Itoa(int(port)))
205207
if addresses.Has(addr) {
206208
continue
207209
}

test/e2e/tests/ratelimit.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ package tests
99

1010
import (
1111
"context"
12-
"fmt"
1312
"net"
1413
"testing"
1514
"time"
@@ -495,7 +494,7 @@ var RateLimitMultipleListenersTest = suite.ConformanceTest{
495494

496495
gwPorts := []string{"80", "8080"}
497496
for _, port := range gwPorts {
498-
gwAddr = fmt.Sprintf("%s:%s", gwIP, port)
497+
gwAddr = net.JoinHostPort(gwIP, port)
499498

500499
ratelimitHeader := make(map[string]string)
501500
expectOkResp := http.ExpectedResponse{

0 commit comments

Comments
 (0)