The old way to find a port was to listen :0 and then
look at what port it picked, close the listener, and then
immediately try to listen on that port.
On some Windows 7 machines that sequence fails at
the second listen, because the first one is still lingering
in the TCP/IP stack somewhere. (Ironically, most of these
are used in tests of a "second listen", which in this case
ends up being the third listen.)
Instead of this race, just return the listener from the
function, replacing usableLocalPort+Listen with
usableListenPort.
Fixes#3219.
R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/5769045
I don't know what's out there, but something
is answering to 127.0.71.111:80 on our builder,
so use a different port.
Also insert a check that the dial fails, which
would have diagnosed this problem.
Fixes#3016.
R=golang-dev, mikioh.mikioh, r
CC=golang-dev
https://golang.org/cl/5754062
I don't know enough about multicast.
Should this be disabled on all systems, not just Windows?
R=golang-dev
CC=golang-dev
https://golang.org/cl/5754060
By default the all.bash tests must not ever announce
on an external address. It's not just an OS X issue.
R=golang-dev, mikioh.mikioh
CC=golang-dev
https://golang.org/cl/5753067
* Splits into three server tests.
- TestStreamConnServer for tcp, tcp4, tcp6 and unix networks
- TestSeqpacketConnServer for unixpacket networks
- TestDatagramPacketConnServer for udp, udp4, udp6 and unixgram networks
* Adds both PacketConn and Conn test clients to datagram packet conn tests.
* Fixes wildcard listen test cases on dual IP stack platform.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/5701066
This CL changes the behavior of Dial and Listen API family.
Previous Dial and Listen allow a combo of "tcp6" and IPv4 or IPv6
IPv4-mapped address as its argument, but it also makes slightly
different behaviors between Linux and other platforms. This CL fixes
such differences across over platforms by tweaking IP-level socket
option IPV6_V6ONLY. Consequently new Dial and Listen API family will
reject arguments consists of "tcp6" and IPv4 or IPv6 IPv4-mapped
address.
This CL also adds a bit clarified unicast listener tests.
Fixes#2581.
R=rsc, minux.ma
CC=golang-dev
https://golang.org/cl/5677086
go test -short # like in the build; no external stuff
go test # long tests, + external
go test -external=false # long tests, no external
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/5696079
Fixes#2919 I believe. (gets as far as sending a CONNECT
request to my little dummy logging proxy that doesn't actually
support CONNECT now.) Untested with a real CONNECT-supporting
proxy, though.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/5708055
We should use DialUnix or ListenPacket for unixgram networks
because Dial doesn't take a local UnixAddr.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/5706043
This fixes the build of package net for GOOS=NetBSD.
Of course, a real implementation would be even better.
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/5693065
Makes it possible for client code to maintain its own profiles,
and also reduces the API surface by giving us a type that
models built-in profiles.
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/5684056