commit | 489f65b52ad28c2a6f4f2dc58a3d939e9a77be47 | [log] [tgz] |
---|---|---|
author | Tim Ebringer <tim.ebringer@gmail.com> | Mon Jan 18 21:33:25 2016 +1100 |
committer | Alex Brainman <alex.brainman@gmail.com> | Thu Jan 21 23:01:56 2016 +0000 |
tree | 4163896c4e7a66d5014a9063d23d1de284c4a848 | |
parent | b203f88c7f0b81043a3f387136147d8193a0a8b8 [diff] |
net: improve netsh usage in Windows unit tests The TestInterfaceAddrsWithNetsh Windows unit test parses and compares the output of the "netsh" command against more low level Windows API calls. In at least two cases, some quirks of netsh cause these comparisons to fail. One example appears to be wi-fi adapters. After a reboot, before it has been allowed to connect to a network, netsh for IPv4 will not show an address, whereas netsh for IPv6 will. If the interface is allowed to connect, and then disconnected, netsh for IPv4 now shows an address and the test will pass. The fix is to not compare netsh output if the interface is down. A related issue is that the IPv6 version of "netsh" can return an IPv4-embedded IPv6 address where the IPv4 component of the address is in decimal form, whilst the test is expecting hexadecimal form. For example, output might be: Address fe80::5efe:192.168.1.7%6 Parameters ... Whilst this is valid notation, the fix is to recognise this format in the "netsh" output and re-parse the address into the all-hexadecimal representation that the test is expecting. Fixes #13981 Change-Id: Ie8366673f4d43d07bad80d6d5d1d6e33f654b6cc Reviewed-on: https://go-review.googlesource.com/18711 Reviewed-by: Alex Brainman <alex.brainman@gmail.com> Run-TryBot: Alex Brainman <alex.brainman@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
Go is an open source programming language that makes it easy to build simple, reliable, and efficient software.
For documentation about how to install and use Go, visit https://golang.org/ or load doc/install-source.html in your web browser.
Our canonical Git repository is located at https://go.googlesource.com/go. There is a mirror of the repository at https://github.com/golang/go.
Go is the work of hundreds of contributors. We appreciate your help!
To contribute, please read the contribution guidelines: https://golang.org/doc/contribute.html
Unless otherwise noted, the Go source files are distributed under the BSD-style license found in the LICENSE file.
If you have just untarred a binary Go distribution, you need to set the environment variable $GOROOT to the full path of the go directory (the one containing this file). You can omit the variable if you unpack it into /usr/local/go, or if you rebuild from sources by running all.bash (see doc/install-source.html). You should also add the Go binary directory $GOROOT/bin to your shell's path.
For example, if you extracted the tar file into $HOME/go, you might put the following in your .profile:
export GOROOT=$HOME/go export PATH=$PATH:$GOROOT/bin
See https://golang.org/doc/install or doc/install.html for more details.