Commit 3fc41d5e authored by Andrey Mirtchovski's avatar Andrey Mirtchovski Committed by Russ Cox

net: parse aliases in /etc/hosts correctly

Previous behaviour only picked the first entry (official hostname) but not the aliases.

R=rsc
CC=golang-dev
https://golang.org/cl/193092
parent 6d8829e9
......@@ -40,9 +40,11 @@ func readHosts() {
if len(f) < 2 || ParseIP(f[0]) == nil {
continue
}
h := f[1]
old, _ := hs[h]
hs[h] = appendHost(old, f[0])
for i := 1; i < len(f); i++ {
h := f[i]
old, _ := hs[h]
hs[h] = appendHost(old, f[0])
}
}
// Update the data cache.
hosts.time, _, _ = os.Time()
......
......@@ -24,6 +24,12 @@ var hosttests = []hostTest{
IPv4(127, 1, 1, 1),
}},
hostTest{"loki", []IP{}},
hostTest{"ullr", []IP{
IPv4(127, 1, 1, 2),
}},
hostTest{"ullrhost", []IP{
IPv4(127, 1, 1, 2),
}},
}
func TestLookupStaticHost(t *testing.T) {
......
......@@ -3,6 +3,8 @@
127.0.0.3 odin # inline comment
::2 odin
127.1.1.1 thor
# aliases
127.1.1.2 ullr ullrhost
# Bogus entries that must be ignored.
123.123.123 loki
321.321.321.321
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment