|
|
Created:
13 years, 6 months ago by mikio Modified:
13 years, 5 months ago CC:
r, gri, bradfitz, rh, rsc, golang-dev Visibility:
Public. |
Descriptionnet: add network interface identification API
This CL introduces new API into package net to identify the network
interface. A functionality of new API is very similar to RFC3493 -
"Interface Identification".
Patch Set 1 : diff -r 01b6a240e0b7 https://go.googlecode.com/hg/ #
Total comments: 8
Patch Set 2 : diff -r 8f4462cc4bdc https://go.googlecode.com/hg/ #
Total comments: 6
Patch Set 3 : diff -r 3b02534fe256 https://go.googlecode.com/hg/ #Patch Set 4 : diff -r 3b02534fe256 https://go.googlecode.com/hg/ #
Total comments: 18
Patch Set 5 : diff -r d857654eedd8 https://go.googlecode.com/hg/ #
Total comments: 20
Patch Set 6 : diff -r fa2bae213af8 https://go.googlecode.com/hg/ #
Total comments: 14
Patch Set 7 : diff -r 596c547538d6 https://go.googlecode.com/hg/ #
MessagesTotal messages: 28
Hello golang-dev@googlegroups.com (cc: golang-dev@googlegroups.com), I'd like you to review this change to https://go.googlecode.com/hg/
Sign in to reply to this message.
a couple of small points in the portable code. http://codereview.appspot.com/4437087/diff/70036/src/pkg/net/interface.go File src/pkg/net/interface.go (right): http://codereview.appspot.com/4437087/diff/70036/src/pkg/net/interface.go#new... src/pkg/net/interface.go:19: if hwa == nil { if len(hwa) == 0 { http://codereview.appspot.com/4437087/diff/70036/src/pkg/net/interface.go#new... src/pkg/net/interface.go:25: if i < len(hwa)-1 { drop the test, always add : and then return s[:len(s)-1] http://codereview.appspot.com/4437087/diff/70036/src/pkg/net/interface.go#new... src/pkg/net/interface.go:76: return index, err for ... { if name == ifi.Name { return ifi.Index, nil } } return 0, os.ENOENT http://codereview.appspot.com/4437087/diff/70036/src/pkg/net/interface.go#new... src/pkg/net/interface.go:96: return name, err ditto
Sign in to reply to this message.
http://codereview.appspot.com/4437087/diff/70036/src/pkg/net/interface.go File src/pkg/net/interface.go (right): http://codereview.appspot.com/4437087/diff/70036/src/pkg/net/interface.go#new... src/pkg/net/interface.go:19: if hwa == nil { On 2011/05/27 05:07:38, r wrote: > if len(hwa) == 0 { Done. http://codereview.appspot.com/4437087/diff/70036/src/pkg/net/interface.go#new... src/pkg/net/interface.go:25: if i < len(hwa)-1 { On 2011/05/27 05:07:38, r wrote: > drop the test, always add : and then > return s[:len(s)-1] Done. http://codereview.appspot.com/4437087/diff/70036/src/pkg/net/interface.go#new... src/pkg/net/interface.go:76: return index, err On 2011/05/27 05:07:38, r wrote: > for ... { > if name == ifi.Name { > return ifi.Index, nil > } > } > return 0, os.ENOENT Done. http://codereview.appspot.com/4437087/diff/70036/src/pkg/net/interface.go#new... src/pkg/net/interface.go:96: return name, err On 2011/05/27 05:07:38, r wrote: > ditto Done.
Sign in to reply to this message.
Hello golang-dev@googlegroups.com, r@golang.org (cc: golang-dev@googlegroups.com), Please take another look.
Sign in to reply to this message.
FYI. http://codereview.appspot.com/4437087/diff/83001/src/pkg/net/interface.go File src/pkg/net/interface.go (right): http://codereview.appspot.com/4437087/diff/83001/src/pkg/net/interface.go#new... src/pkg/net/interface.go:23: for i := 0; i < len(hwa); i++ { for _, b := range hwa { ... Also it would probably better to use a bytes.Buffer here (not that it really matters): var buf bytes.Buffer for i, b := range hwa { if i > 0 { buf.WriteByte(':') } fmt.Fprintf(&buf, "%02x", b) } return buf.String() http://codereview.appspot.com/4437087/diff/83001/src/pkg/net/interface.go#new... src/pkg/net/interface.go:54: // InterfaceIndex maps the network interface name specified in s/in/by/ ? http://codereview.appspot.com/4437087/diff/83001/src/pkg/net/interface.go#new... src/pkg/net/interface.go:72: // InterfaceName maps the network interface index speficied in s/speficied/specified/ s/in/by/
Sign in to reply to this message.
http://codereview.appspot.com/4437087/diff/83001/src/pkg/net/interface.go File src/pkg/net/interface.go (right): http://codereview.appspot.com/4437087/diff/83001/src/pkg/net/interface.go#new... src/pkg/net/interface.go:23: for i := 0; i < len(hwa); i++ { On 2011/05/27 17:24:16, gri wrote: > for _, b := range hwa { ... > > Also it would probably better to use a bytes.Buffer here (not that it really > matters): > > var buf bytes.Buffer > for i, b := range hwa { > if i > 0 { > buf.WriteByte(':') > } > fmt.Fprintf(&buf, "%02x", b) > } > return buf.String() better idiomatic things are welcome. Done. http://codereview.appspot.com/4437087/diff/83001/src/pkg/net/interface.go#new... src/pkg/net/interface.go:54: // InterfaceIndex maps the network interface name specified in On 2011/05/27 17:24:16, gri wrote: > s/in/by/ ? Done. http://codereview.appspot.com/4437087/diff/83001/src/pkg/net/interface.go#new... src/pkg/net/interface.go:72: // InterfaceName maps the network interface index speficied in On 2011/05/27 17:24:16, gri wrote: > s/speficied/specified/ > s/in/by/ Done.
Sign in to reply to this message.
Hello golang-dev@googlegroups.com, r@golang.org, gri@golang.org (cc: golang-dev@googlegroups.com), Please take another look.
Sign in to reply to this message.
Hello golang-dev@googlegroups.com, r@golang.org, gri@golang.org (cc: golang-dev@googlegroups.com), Please take another look.
Sign in to reply to this message.
FYI. Leaving this to somebody who actually understands network interfaces. - gri http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface_stub.go File src/pkg/net/interface_stub.go (right): http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface_stub.g... src/pkg/net/interface_stub.go:14: // network interfaces. Otheriwse interfaceTable returns a mapping s/Otheriwse interfaceTable/Otherwise it/ Apply same corrections in all files. http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface_stub.g... src/pkg/net/interface_stub.go:15: // of specific interface. s/of/of a/ http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface_stub.g... src/pkg/net/interface_stub.go:21: // on all network interfaces. Otherwise interfaceAddrTable s/on/of/ or /for/ ? not sure what this should be, or if "on" is correct http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface_stub.g... src/pkg/net/interface_stub.go:21: // on all network interfaces. Otherwise interfaceAddrTable s/Otherwise interfaceAddrTable/Otherwise it/ http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface_stub.g... src/pkg/net/interface_stub.go:22: // returns addresses on specific interface. s/on/on a/ (or of a, for a, - same as above)
Sign in to reply to this message.
http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface.go File src/pkg/net/interface.go (right): http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface.go#new... src/pkg/net/interface.go:35: Name string e.g. "eth0" ? http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface.go#new... src/pkg/net/interface.go:36: Type string what is type? worth enumerating? could use docs in any case. http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface.go#new... src/pkg/net/interface.go:45: func EnumerateInterface() ([]Interface, os.Error) { Enumerate seems like a big word for Go. I wonder if the other Gophers would prefer just "Interfaces" for this. http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface.go#new... src/pkg/net/interface.go:84: if index == ifi.Index { you already passed index to interfaceTable(index)? is this check necessary too?
Sign in to reply to this message.
http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface.go File src/pkg/net/interface.go (right): http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface.go#new... src/pkg/net/interface.go:35: Name string On 2011/05/27 21:54:44, bradfitz wrote: > e.g. "eth0" ? Done. http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface.go#new... src/pkg/net/interface.go:36: Type string On 2011/05/27 21:54:44, bradfitz wrote: > what is type? worth enumerating? could use docs in any case. Type shows media or link-type. I agree with you, it's not useful information because if someone needs more accurate things they will use MIB. I realized that what I would like to see is Flags, which contains state of interface, type of interface, not media/link type. Done. http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface.go#new... src/pkg/net/interface.go:45: func EnumerateInterface() ([]Interface, os.Error) { On 2011/05/27 21:54:44, bradfitz wrote: > Enumerate seems like a big word for Go. > > I wonder if the other Gophers would prefer just "Interfaces" for this. Thanks, changed. Done. http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface.go#new... src/pkg/net/interface.go:84: if index == ifi.Index { On 2011/05/27 21:54:44, bradfitz wrote: > you already passed index to interfaceTable(index)? is this check necessary too? Removed redundant check. Done. http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface_stub.go File src/pkg/net/interface_stub.go (right): http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface_stub.g... src/pkg/net/interface_stub.go:14: // network interfaces. Otheriwse interfaceTable returns a mapping On 2011/05/27 21:47:12, gri wrote: > s/Otheriwse interfaceTable/Otherwise it/ > > Apply same corrections in all files. Done. http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface_stub.g... src/pkg/net/interface_stub.go:15: // of specific interface. On 2011/05/27 21:47:12, gri wrote: > s/of/of a/ Done. http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface_stub.g... src/pkg/net/interface_stub.go:21: // on all network interfaces. Otherwise interfaceAddrTable On 2011/05/27 21:47:12, gri wrote: > s/on/of/ or /for/ ? not sure what this should be, or if "on" is correct Done. http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface_stub.g... src/pkg/net/interface_stub.go:21: // on all network interfaces. Otherwise interfaceAddrTable On 2011/05/27 21:47:12, gri wrote: > s/Otherwise interfaceAddrTable/Otherwise it/ Done. http://codereview.appspot.com/4437087/diff/56040/src/pkg/net/interface_stub.g... src/pkg/net/interface_stub.go:22: // returns addresses on specific interface. On 2011/05/27 21:47:12, gri wrote: > s/on/on a/ (or of a, for a, - same as above) Done.
Sign in to reply to this message.
Hello golang-dev@googlegroups.com, r@golang.org, gri@golang.org, bradfitz@golang.org (cc: golang-dev@googlegroups.com), Please take another look.
Sign in to reply to this message.
Ping. On Sun, May 29, 2011 at 2:40 PM, <mikioh.mikioh@gmail.com> wrote: > Hello golang-dev@googlegroups.com, r@golang.org, gri@golang.org, > bradfitz@golang.org (cc: golang-dev@googlegroups.com), > > Please take another look. > > > http://codereview.appspot.com/4437087/ >
Sign in to reply to this message.
What about remove interface_stub? All OSes get interface_$(GOOS).go in Makefile. Plan 9 gets: func interfaceTable(ifindex int) ([]Interface, os.Error) { return nil, os.EPLAN9 }... Windows gets: func interfaceTable(ifindex int) ([]Interface, os.Error) { return nil, os.NewSyscallError("interfaceTable", syscall.EWINDOWS) }... or something like this?
Sign in to reply to this message.
On Thu, Jun 2, 2011 at 1:52 PM, <robert.hencke@gmail.com> wrote: > What about remove interface_stub? > > All OSes get interface_$(GOOS).go in Makefile. I'd rather not go that way because a) already sendfile_stub.go and cgo_stub.go exist, b) we must have more two shim files for both Darwin and FreeBSD.
Sign in to reply to this message.
On 2011/05/27 02:38:58, mikioh wrote: > Hello mailto:golang-dev@googlegroups.com (cc: mailto:golang-dev@googlegroups.com), > > I'd like you to review this change to > https://go.googlecode.com/hg/ It is possible to be in love with a CL? If so, I am. Regards Albert P.S. Tested this patch on a Linux machine with both Ethernet and IPoIB interfaces and it works very well.
Sign in to reply to this message.
Looks good; main concern is just error handling. I am a little worried about overloading the word 'interface' but I don't see a better option. http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go File src/pkg/net/interface.go (right): http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go#new... src/pkg/net/interface.go:15: // HardwareAddr represents the hardware address of the interface. // A HardwareAddr represents a physical hardware address. http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go#new... src/pkg/net/interface.go:18: // String returns the string form of the hardware address. delete; we typically don't bother with this one unless there's something interesting to add. http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go#new... src/pkg/net/interface.go:19: func (hwa HardwareAddr) String() string { s/hwa/a/ http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go#new... src/pkg/net/interface.go:36: Flags int // e.g., syscall.IFF_UP, syscall.IFF_MULTICAST It would be nice if you didn't have to depend on syscall for the flag bits. http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go#new... src/pkg/net/interface.go:42: func (ifi *Interface) Addr() ([]IP, os.Error) { Shouldn't this return []Addr? http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go#new... src/pkg/net/interface.go:52: func InterfaceAddrs() ([]IP, os.Error) { Same? http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go#new... src/pkg/net/interface.go:56: // InterfaceIndex maps the network interface name specified by I think these should be func InterfaceByIndex(index int) (*Interface, os.Error) func InterfaceByName(name string) (*Interface, os.Error) Then you can find out more than just one field. http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go#new... src/pkg/net/interface.go:60: return 0, os.EINVAL The errors need detail. See other errors in this package. Applies throughout. http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface_bsd.go File src/pkg/net/interface_bsd.go (right): http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface_bsd.go... src/pkg/net/interface_bsd.go:90: return "other" return "media" + itoa(int(media)) http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface_stub.go File src/pkg/net/interface_stub.go (right): http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface_stub.g... src/pkg/net/interface_stub.go:9: import ( can drop ( )
Sign in to reply to this message.
All done. http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go File src/pkg/net/interface.go (right): http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go#new... src/pkg/net/interface.go:15: // HardwareAddr represents the hardware address of the interface. On 2011/06/02 15:13:32, rsc wrote: > // A HardwareAddr represents a physical hardware address. Done. http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go#new... src/pkg/net/interface.go:18: // String returns the string form of the hardware address. On 2011/06/02 15:13:32, rsc wrote: > delete; we typically don't bother with this one unless > there's something interesting to add. Done. http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go#new... src/pkg/net/interface.go:19: func (hwa HardwareAddr) String() string { On 2011/06/02 15:13:32, rsc wrote: > s/hwa/a/ Done. http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go#new... src/pkg/net/interface.go:36: Flags int // e.g., syscall.IFF_UP, syscall.IFF_MULTICAST On 2011/06/02 15:13:32, rsc wrote: > It would be nice if you didn't have to depend on syscall for the flag bits. Agreed, added methods to Interface instead. Done. http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go#new... src/pkg/net/interface.go:42: func (ifi *Interface) Addr() ([]IP, os.Error) { On 2011/06/02 15:13:32, rsc wrote: > Shouldn't this return []Addr? Done. http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go#new... src/pkg/net/interface.go:52: func InterfaceAddrs() ([]IP, os.Error) { On 2011/06/02 15:13:32, rsc wrote: > Same? Done. http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go#new... src/pkg/net/interface.go:56: // InterfaceIndex maps the network interface name specified by On 2011/06/02 15:13:32, rsc wrote: > I think these should be > > func InterfaceByIndex(index int) (*Interface, os.Error) > func InterfaceByName(name string) (*Interface, os.Error) > > Then you can find out more than just one field. Makes sense. Done. http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface.go#new... src/pkg/net/interface.go:60: return 0, os.EINVAL On 2011/06/02 15:13:32, rsc wrote: > The errors need detail. See other errors in this package. > Applies throughout. Done. http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface_bsd.go File src/pkg/net/interface_bsd.go (right): http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface_bsd.go... src/pkg/net/interface_bsd.go:90: return "other" On 2011/06/02 15:13:32, rsc wrote: > return "media" + itoa(int(media)) At this point linkType is not needed, removed. Done. http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface_stub.go File src/pkg/net/interface_stub.go (right): http://codereview.appspot.com/4437087/diff/64044/src/pkg/net/interface_stub.g... src/pkg/net/interface_stub.go:9: import ( On 2011/06/02 15:13:32, rsc wrote: > can drop ( ) Done.
Sign in to reply to this message.
Hello r@golang.org, gri@golang.org, bradfitz@golang.org, robert.hencke@gmail.com, fullung@gmail.com, rsc@golang.org (cc: golang-dev@googlegroups.com), Please take another look.
Sign in to reply to this message.
LGTM Please make the changes below and I'll submit it. http://codereview.appspot.com/4437087/diff/63059/src/pkg/net/interface.go File src/pkg/net/interface.go (right): http://codereview.appspot.com/4437087/diff/63059/src/pkg/net/interface.go#new... src/pkg/net/interface.go:57: // SupportsBroadcast returns true if ifi supports a broadcast CanBroadcast http://codereview.appspot.com/4437087/diff/63059/src/pkg/net/interface.go#new... src/pkg/net/interface.go:75: // SupportsMulticast returns true if ifi supports a multicast CanMulticast http://codereview.appspot.com/4437087/diff/63059/src/pkg/net/interface.go#new... src/pkg/net/interface.go:87: return nil, os.NewError("netif: invalid interface") These should all say "net:" (the package name) http://codereview.appspot.com/4437087/diff/63059/src/pkg/net/interface.go#new... src/pkg/net/interface.go:92: // Interfaces tries to enumerate network interfaces. Interfaces returns a list of the system's network interfaces. http://codereview.appspot.com/4437087/diff/63059/src/pkg/net/interface.go#new... src/pkg/net/interface.go:97: // InterfaceAddrs tries to enumerate network interface addresses. Interfaces returns a list of the system's network interface addresses. http://codereview.appspot.com/4437087/diff/63059/src/pkg/net/interface.go#new... src/pkg/net/interface.go:102: // InterfaceByIndex returns an interface specified by index. s/an/the/ http://codereview.appspot.com/4437087/diff/63059/src/pkg/net/interface.go#new... src/pkg/net/interface.go:117: // InterfaceByName returns an interface specified by name. s/an/the/
Sign in to reply to this message.
http://codereview.appspot.com/4437087/diff/63059/src/pkg/net/interface.go File src/pkg/net/interface.go (right): http://codereview.appspot.com/4437087/diff/63059/src/pkg/net/interface.go#new... src/pkg/net/interface.go:57: // SupportsBroadcast returns true if ifi supports a broadcast On 2011/06/03 16:50:07, rsc wrote: > CanBroadcast Done. http://codereview.appspot.com/4437087/diff/63059/src/pkg/net/interface.go#new... src/pkg/net/interface.go:75: // SupportsMulticast returns true if ifi supports a multicast On 2011/06/03 16:50:07, rsc wrote: > CanMulticast Done. http://codereview.appspot.com/4437087/diff/63059/src/pkg/net/interface.go#new... src/pkg/net/interface.go:87: return nil, os.NewError("netif: invalid interface") On 2011/06/03 16:50:07, rsc wrote: > These should all say "net:" (the package name) Done. http://codereview.appspot.com/4437087/diff/63059/src/pkg/net/interface.go#new... src/pkg/net/interface.go:92: // Interfaces tries to enumerate network interfaces. On 2011/06/03 16:50:07, rsc wrote: > Interfaces returns a list of the system's network interfaces. Done. http://codereview.appspot.com/4437087/diff/63059/src/pkg/net/interface.go#new... src/pkg/net/interface.go:97: // InterfaceAddrs tries to enumerate network interface addresses. On 2011/06/03 16:50:07, rsc wrote: > Interfaces returns a list of the system's network interface addresses. Done. http://codereview.appspot.com/4437087/diff/63059/src/pkg/net/interface.go#new... src/pkg/net/interface.go:102: // InterfaceByIndex returns an interface specified by index. On 2011/06/03 16:50:07, rsc wrote: > s/an/the/ Done. http://codereview.appspot.com/4437087/diff/63059/src/pkg/net/interface.go#new... src/pkg/net/interface.go:117: // InterfaceByName returns an interface specified by name. On 2011/06/03 16:50:07, rsc wrote: > s/an/the/ Done.
Sign in to reply to this message.
Hello r@golang.org, gri@golang.org, bradfitz@golang.org, robert.hencke@gmail.com, fullung@gmail.com, rsc@golang.org (cc: golang-dev@googlegroups.com), Please take another look.
Sign in to reply to this message.
*** Submitted as http://code.google.com/p/go/source/detail?r=9f4046737460 *** net: add network interface identification API This CL introduces new API into package net to identify the network interface. A functionality of new API is very similar to RFC3493 - "Interface Identification". R=r, gri, bradfitz, robert.hencke, fullung, rsc CC=golang-dev http://codereview.appspot.com/4437087 Committer: Russ Cox <rsc@golang.org>
Sign in to reply to this message.
Hello On 2011/06/03 18:35:44, rsc wrote: > *** Submitted as http://code.google.com/p/go/source/detail?r=9f4046737460 *** > net: add network interface identification API The rawFlags field that was added to Interface near the end of this CL breaks code like this: ifaces, err := net.Interfaces() if err != nil { panic(err) } log.Printf("%+v", ifaces) for _, iface := range ifaces { log.Printf("%v", iface.IsUp()) } Maybe Interface needs to be an interface or Interfaces() should return *Interface? Regards Albert
Sign in to reply to this message.
Hi, On Thu, Jun 9, 2011 at 12:32 AM, <fullung@gmail.com> wrote: > The rawFlags field that was added to Interface near the end of this CL > breaks code like this: (snip) > Maybe Interface needs to be an interface or Interfaces() should return > *Interface? Does this make sense to you? <http://codereview.appspot.com/4602044/>
Sign in to reply to this message.
Hello On Wed, Jun 8, 2011 at 6:32 PM, Mikio Hara <mikioh.mikioh@gmail.com> wrote: > Hi, > On Thu, Jun 9, 2011 at 12:32 AM, <fullung@gmail.com> wrote: >> The rawFlags field that was added to Interface near the end of this CL >> breaks code like this: > (snip) >> Maybe Interface needs to be an interface or Interfaces() should return >> *Interface? > Does this make sense to you? > <http://codereview.appspot.com/4602044/> LGTM. I'll update my patch for IsMaster and IsSlave if this gets accepted. Regards Albert
Sign in to reply to this message.
I see the following issue on two separate Linux amd_64 boxes at tip: http://code.google.com/p/go/issues/detail?id=1942 On Wed, Jun 8, 2011 at 9:32 AM, Mikio Hara <mikioh.mikioh@gmail.com> wrote: > Hi, > > On Thu, Jun 9, 2011 at 12:32 AM, <fullung@gmail.com> wrote: > > > The rawFlags field that was added to Interface near the end of this CL > > breaks code like this: > (snip) > > Maybe Interface needs to be an interface or Interfaces() should return > > *Interface? > > Does this make sense to you? > <http://codereview.appspot.com/4602044/> >
Sign in to reply to this message.
On Sat, Jun 11, 2011 at 1:00 AM, Kyle Lemons <kevlar@google.com> wrote: > I see the following issue on two separate Linux amd_64 boxes at tip: > http://code.google.com/p/go/issues/detail?id=1942 Thank you for the report and nice %q. The issue will be fixed by CL 462044.
Sign in to reply to this message.
|