Issue Type: | Bug |
---|---|
Priority: | 4 - Normal |
Status: | Resolved |
Created at: | 2015-03-31T05:26:46.000Z |
Updated at: | 2015-04-20T18:51:34.000Z |
Created by: | Former user |
---|---|
Reported by: | Former user |
Assigned to: | Former user |
Fixed: A fix for this issue is checked into the tree and tested.
(Resolution Date: 2015-04-20T18:51:34.000Z)
2015-04-30 Newton (Release Date: 2015-04-30)
lx: golang net.Interfaces() -> netlink rib: address family not supported by protocol .
I've isolated the first net issue from OS-3967 "golang build tests fail on lx ubuntu64 14.04.003"
The following code runs fine on kvm ubuntu and smartos:
package main import ( "fmt" "net" "runtime" ) func main() { _, err := net.Interfaces() if err != nil { fmt.Printf("Built with Go Version: %s\n", runtime.Version()) fmt.Println(err) panic("golang net.Interfaces() is returning an err.") } }
But fails on
818cc79e-ceb3-11e4-99ee-7bc8c674e754 lx-ubuntu-14.04 20150320 other eb4128ec-cf12-11e4-960d-8780cec6463f lx-centos-6 20150320 other
with the the same output:
Built with Go Version: go1.2.1 netlink rib: address family not supported by protocol panic: golang net.Interfaces() is returning an err. goroutine 1 [running]: runtime.panic(0x497b00, 0xc21000a270) /usr/lib/go/src/pkg/runtime/panic.c:266 +0xb6 main.main() /root/test-net-if.go:14 +0x1cf
ADDITIONAL DETAILS
I tried compiling both using the latest golang built from source 1.4.2 and the version packaged with ubuntu 14.04. The attached binary was built using the golang package on lx ubuntu 14.04.
After the call to recvfrom in lx_recvfrom, the address family of the sockaddr is not being properly translated to the proper Linux value.
illumos-joyent commit fcf0f42 (branch master, by Patrick Mooney)
OS-4131 lxbrand AF_NETLINK should be handled consistently
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>