xref: /aosp_15_r20/external/cronet/net/base/sys_addrinfo.h (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Worker // Copyright 2009 The Chromium Authors
2*6777b538SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be
3*6777b538SAndroid Build Coastguard Worker // found in the LICENSE file.
4*6777b538SAndroid Build Coastguard Worker 
5*6777b538SAndroid Build Coastguard Worker // This is a convenience header to pull in the platform-specific headers
6*6777b538SAndroid Build Coastguard Worker // that define at least:
7*6777b538SAndroid Build Coastguard Worker //
8*6777b538SAndroid Build Coastguard Worker //     struct addrinfo
9*6777b538SAndroid Build Coastguard Worker //     struct sockaddr*
10*6777b538SAndroid Build Coastguard Worker //     getaddrinfo()
11*6777b538SAndroid Build Coastguard Worker //     freeaddrinfo()
12*6777b538SAndroid Build Coastguard Worker //     AI_*
13*6777b538SAndroid Build Coastguard Worker //     AF_*
14*6777b538SAndroid Build Coastguard Worker //
15*6777b538SAndroid Build Coastguard Worker // Prefer including this file instead of directly writing the #if / #else,
16*6777b538SAndroid Build Coastguard Worker // since it avoids duplicating the platform-specific selections.
17*6777b538SAndroid Build Coastguard Worker //
18*6777b538SAndroid Build Coastguard Worker // Note that this header transitively includes windows.h on Windows, which
19*6777b538SAndroid Build Coastguard Worker // pollutes the global namespace with thousands of macro definitions, so try to
20*6777b538SAndroid Build Coastguard Worker // avoid including this in headers. Including windows.h can also add significant
21*6777b538SAndroid Build Coastguard Worker // build overhead.
22*6777b538SAndroid Build Coastguard Worker 
23*6777b538SAndroid Build Coastguard Worker #ifndef NET_BASE_SYS_ADDRINFO_H_
24*6777b538SAndroid Build Coastguard Worker #define NET_BASE_SYS_ADDRINFO_H_
25*6777b538SAndroid Build Coastguard Worker 
26*6777b538SAndroid Build Coastguard Worker #include "build/build_config.h"
27*6777b538SAndroid Build Coastguard Worker 
28*6777b538SAndroid Build Coastguard Worker #if BUILDFLAG(IS_WIN)
29*6777b538SAndroid Build Coastguard Worker #include <winsock2.h>
30*6777b538SAndroid Build Coastguard Worker #include <ws2tcpip.h>
31*6777b538SAndroid Build Coastguard Worker #elif BUILDFLAG(IS_POSIX) || BUILDFLAG(IS_FUCHSIA)
32*6777b538SAndroid Build Coastguard Worker #include <netdb.h>
33*6777b538SAndroid Build Coastguard Worker #include <netinet/in.h>
34*6777b538SAndroid Build Coastguard Worker #include <sys/socket.h>
35*6777b538SAndroid Build Coastguard Worker #endif
36*6777b538SAndroid Build Coastguard Worker 
37*6777b538SAndroid Build Coastguard Worker #endif  // NET_BASE_SYS_ADDRINFO_H_
38