]> Cypherpunks repositories - gostls13.git/commitdiff
net: explain why we ignore the first line of Plan 9 interface-status files
authorLeon Klingele <git@leonklingele.de>
Fri, 22 Feb 2019 15:51:40 +0000 (15:51 +0000)
committerBrad Fitzpatrick <bradfitz@golang.org>
Tue, 26 Feb 2019 23:19:37 +0000 (23:19 +0000)
Change-Id: Ia0847790a597c35ebb572db6fc1b7534ecf8f006
GitHub-Last-Rev: 03f039d0abbce0e2a2bf15201948e46354950a22
GitHub-Pull-Request: golang/go#30022
Reviewed-on: https://go-review.googlesource.com/c/160446
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
src/net/interface_plan9.go

index e5d77390f86319b79588534551fae5fa803c0cc9..8fe913840649df038936e1b37f148b37ab6e20a0 100644 (file)
@@ -152,10 +152,14 @@ func interfaceAddrTable(ifi *Interface) ([]Addr, error) {
                }
                defer statusf.close()
 
+               // Read but ignore first line as it only contains the table header.
+               // See https://9p.io/magic/man2html/3/ip
+               if _, ok := statusf.readLine(); !ok {
+                       return nil, errors.New("cannot read header line for interface: " + status)
+               }
                line, ok := statusf.readLine()
-               line, ok = statusf.readLine()
                if !ok {
-                       return nil, errors.New("cannot parse IP address for interface: " + status)
+                       return nil, errors.New("cannot read IP address for interface: " + status)
                }
 
                // This assumes only a single address for the interface.