From: Fazlul Shahriar Date: Mon, 29 Jun 2020 05:50:50 +0000 (-0400) Subject: net: handle more interface types without a hardware address on Plan 9 X-Git-Tag: go1.15rc1~52 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=a980e8a690f59542e6e68aa4d84face19ee57a15;p=gostls13.git net: handle more interface types without a hardware address on Plan 9 We were handling loopback devices when attempting to read hardware address, but packet interfaces were not being handled. As a general fix, don't attempt to read hardware address of any device that's not inside /net. Fixes #39908 Change-Id: Ifa05e270357e111c60906110db2cc23dc7c1c49c Reviewed-on: https://go-review.googlesource.com/c/go/+/240259 Run-TryBot: David du Colombier <0intro@gmail.com> TryBot-Result: Gobot Gobot Reviewed-by: David du Colombier <0intro@gmail.com> --- diff --git a/src/net/interface_plan9.go b/src/net/interface_plan9.go index 1295017a1b..31bbaca467 100644 --- a/src/net/interface_plan9.go +++ b/src/net/interface_plan9.go @@ -68,8 +68,8 @@ func readInterface(i int) (*Interface, error) { } ifc.MTU = mtu - // Not a loopback device - if device != "/dev/null" { + // Not a loopback device ("/dev/null") or packet interface (e.g. "pkt2") + if stringsHasPrefix(device, netdir+"/") { deviceaddrf, err := open(device + "/addr") if err != nil { return nil, err