diff options
| author | Brad Fitzpatrick <bradfitz@golang.org> | 2015-12-14 18:22:23 +0000 |
|---|---|---|
| committer | Brad Fitzpatrick <bradfitz@golang.org> | 2015-12-14 20:41:36 +0000 |
| commit | 5a88e54fdafb7742e4429fcf9e93019dd58df7b9 (patch) | |
| tree | 06527585e6f33c6b60ddaa0d49c29615f67d9ca1 /src | |
| parent | 2190750ce1f52cbbe2d7e3052e85c775d8259b0f (diff) | |
| download | go-5a88e54fdafb7742e4429fcf9e93019dd58df7b9.tar.xz | |
net: make LookupPort with empty service mean 0
Fixes #13610
Change-Id: I9c8f924dc1ad515a9697291e981ece34fdbec8b7
Reviewed-on: https://go-review.googlesource.com/17755
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Diffstat (limited to 'src')
| -rw-r--r-- | src/net/lookup.go | 5 | ||||
| -rw-r--r-- | src/net/lookup_test.go | 6 |
2 files changed, 11 insertions, 0 deletions
diff --git a/src/net/lookup.go b/src/net/lookup.go index 6e0cf62aec..7aa111ba92 100644 --- a/src/net/lookup.go +++ b/src/net/lookup.go @@ -123,6 +123,11 @@ func lookupIPDeadline(host string, deadline time.Time) (addrs []IPAddr, err erro // LookupPort looks up the port for the given network and service. func LookupPort(network, service string) (port int, err error) { + if service == "" { + // Lock in the legacy behavior that an empty string + // means port 0. See Issue 13610. + return 0, nil + } port, _, ok := dtoi(service, 0) if !ok && port != big && port != -big { port, err = lookupPort(network, service) diff --git a/src/net/lookup_test.go b/src/net/lookup_test.go index 07b3686d50..fa2c6367db 100644 --- a/src/net/lookup_test.go +++ b/src/net/lookup_test.go @@ -591,6 +591,12 @@ var lookupPortTests = []struct { {"tcp", "65536", 0, false}, {"udp", "-1", 0, false}, {"udp", "65536", 0, false}, + + // Issue 13610: LookupPort("tcp", "") + {"tcp", "", 0, true}, + {"tcp6", "", 0, true}, + {"tcp4", "", 0, true}, + {"udp", "", 0, true}, } func TestLookupPort(t *testing.T) { |
