LEFT | RIGHT |
1 // Copyright 2011 The Go Authors. All rights reserved. | 1 // Copyright 2011 The Go Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style | 2 // Use of this source code is governed by a BSD-style |
3 // license that can be found in the LICENSE file. | 3 // license that can be found in the LICENSE file. |
4 | 4 |
5 // +build cgo,!noncgo_net | 5 // +build cgo,!netgo |
6 | 6 |
7 package net | 7 package net |
8 | 8 |
9 /* | 9 /* |
10 #include <netdb.h> | 10 #include <netdb.h> |
11 */ | 11 */ |
12 import "C" | 12 import "C" |
13 | 13 |
14 func cgoAddrInfoFlags() C.int { | 14 func cgoAddrInfoFlags() C.int { |
15 // NOTE(rsc): In theory there are approximately balanced | 15 // NOTE(rsc): In theory there are approximately balanced |
16 // arguments for and against including AI_ADDRCONFIG | 16 // arguments for and against including AI_ADDRCONFIG |
17 // in the flags (it includes IPv4 results only on IPv4 systems, | 17 // in the flags (it includes IPv4 results only on IPv4 systems, |
18 // and similarly for IPv6), but in practice setting it causes | 18 // and similarly for IPv6), but in practice setting it causes |
19 // getaddrinfo to return the wrong canonical name on Linux. | 19 // getaddrinfo to return the wrong canonical name on Linux. |
20 // So definitely leave it out. | 20 // So definitely leave it out. |
21 return C.AI_CANONNAME | C.AI_V4MAPPED | C.AI_ALL | 21 return C.AI_CANONNAME | C.AI_V4MAPPED | C.AI_ALL |
22 } | 22 } |
LEFT | RIGHT |