mirror of
https://github.com/golang/go
synced 2024-11-18 13:14:47 -07:00
net: always use cgo for DNS on Android
Android has (had?) its own local DNS resolver daemon, also my fault:
007e987fee
And you access that via libc, not DNS.
Fixes #10714
Change-Id: Iaff752872ce19bb5c7771ab048fd50e3f72cb73c
Reviewed-on: https://go-review.googlesource.com/9793
Reviewed-by: David Crawshaw <crawshaw@golang.org>
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
This commit is contained in:
parent
6fd387b35b
commit
7165c9b30e
@ -85,7 +85,7 @@ func initConfVal() {
|
||||
|
||||
// hostLookupOrder determines which strategy to use to resolve hostname.
|
||||
func (c *conf) hostLookupOrder(hostname string) hostLookupOrder {
|
||||
if c.forceCgoLookupHost || c.resolv.unknownOpt {
|
||||
if c.forceCgoLookupHost || c.resolv.unknownOpt || c.goos == "android" {
|
||||
return hostLookupCgo
|
||||
}
|
||||
if byteIndex(hostname, '\\') != -1 || byteIndex(hostname, '%') != -1 {
|
||||
|
@ -272,6 +272,18 @@ func TestConfHostLookupOrder(t *testing.T) {
|
||||
},
|
||||
hostTests: []nssHostTest{{"google.com", hostLookupCgo}},
|
||||
},
|
||||
// Android should always use cgo.
|
||||
{
|
||||
name: "android",
|
||||
c: &conf{
|
||||
goos: "android",
|
||||
nss: nssStr(""),
|
||||
resolv: defaultResolvConf,
|
||||
},
|
||||
hostTests: []nssHostTest{
|
||||
{"x.com", hostLookupCgo},
|
||||
},
|
||||
},
|
||||
}
|
||||
for _, tt := range tests {
|
||||
for _, ht := range tt.hostTests {
|
||||
|
Loading…
Reference in New Issue
Block a user