mirror of https://github.com/c-ares/c-ares.git
parent
affdf92306
commit
58c7940e0b
2 changed files with 0 additions and 237 deletions
@ -1,236 +0,0 @@ |
|||||||
/* MIT License
|
|
||||||
* |
|
||||||
* Copyright (c) 1998 Massachusetts Institute of Technology |
|
||||||
* Copyright (c) 2004 Daniel Stenberg |
|
||||||
* |
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy |
|
||||||
* of this software and associated documentation files (the "Software"), to deal |
|
||||||
* in the Software without restriction, including without limitation the rights |
|
||||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell |
|
||||||
* copies of the Software, and to permit persons to whom the Software is |
|
||||||
* furnished to do so, subject to the following conditions: |
|
||||||
* |
|
||||||
* The above copyright notice and this permission notice (including the next |
|
||||||
* paragraph) shall be included in all copies or substantial portions of the |
|
||||||
* Software. |
|
||||||
* |
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
|
||||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
|
||||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
|
||||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
|
||||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
|
||||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
|
||||||
* SOFTWARE. |
|
||||||
* |
|
||||||
* SPDX-License-Identifier: MIT |
|
||||||
*/ |
|
||||||
#ifndef HEADER_CARES_IPHLPAPI_H |
|
||||||
#define HEADER_CARES_IPHLPAPI_H |
|
||||||
|
|
||||||
#if defined(USE_WINSOCK) |
|
||||||
|
|
||||||
# ifndef INET_ADDRSTRLEN |
|
||||||
# define INET_ADDRSTRLEN 22 |
|
||||||
# endif |
|
||||||
|
|
||||||
# ifndef INET6_ADDRSTRLEN |
|
||||||
# define INET6_ADDRSTRLEN 65 |
|
||||||
# endif |
|
||||||
|
|
||||||
/* ---------------------------------- */ |
|
||||||
# if !defined(_WS2DEF_) && !defined(__CSADDR_DEFINED__) && \ |
|
||||||
!defined(__CSADDR_T_DEFINED) |
|
||||||
/* ---------------------------------- */ |
|
||||||
|
|
||||||
typedef struct _SOCKET_ADDRESS { |
|
||||||
LPSOCKADDR lpSockaddr; |
|
||||||
INT iSockaddrLength; |
|
||||||
} SOCKET_ADDRESS, *PSOCKET_ADDRESS; |
|
||||||
|
|
||||||
typedef struct _CSADDR_INFO { |
|
||||||
SOCKET_ADDRESS LocalAddr; |
|
||||||
SOCKET_ADDRESS RemoteAddr; |
|
||||||
INT iSocketType; |
|
||||||
INT iProtocol; |
|
||||||
} CSADDR_INFO, *PCSADDR_INFO; |
|
||||||
|
|
||||||
/* --------------------------------- */ |
|
||||||
# endif /* ! _WS2DEF_ && \ */ |
|
||||||
/* ! __CSADDR_DEFINED__ && \ */ |
|
||||||
/* ! __CSADDR_T_DEFINED */ |
|
||||||
/* --------------------------------- */ |
|
||||||
|
|
||||||
/* ------------------------------- */ |
|
||||||
# if !defined(IP_ADAPTER_DDNS_ENABLED) |
|
||||||
/* ------------------------------- */ |
|
||||||
|
|
||||||
# define IP_ADAPTER_ADDRESS_DNS_ELIGIBLE 0x0001 |
|
||||||
# define IP_ADAPTER_ADDRESS_TRANSIENT 0x0002 |
|
||||||
|
|
||||||
# define IP_ADAPTER_DDNS_ENABLED 0x0001 |
|
||||||
# define IP_ADAPTER_REGISTER_ADAPTER_SUFFIX 0x0002 |
|
||||||
# define IP_ADAPTER_DHCP_ENABLED 0x0004 |
|
||||||
# define IP_ADAPTER_RECEIVE_ONLY 0x0008 |
|
||||||
# define IP_ADAPTER_NO_MULTICAST 0x0010 |
|
||||||
# define IP_ADAPTER_IPV6_OTHER_STATEFUL_CONFIG 0x0020 |
|
||||||
|
|
||||||
# define GAA_FLAG_SKIP_UNICAST 0x0001 |
|
||||||
# define GAA_FLAG_SKIP_ANYCAST 0x0002 |
|
||||||
# define GAA_FLAG_SKIP_MULTICAST 0x0004 |
|
||||||
# define GAA_FLAG_SKIP_DNS_SERVER 0x0008 |
|
||||||
# define GAA_FLAG_INCLUDE_PREFIX 0x0010 |
|
||||||
# define GAA_FLAG_SKIP_FRIENDLY_NAME 0x0020 |
|
||||||
|
|
||||||
typedef enum { |
|
||||||
IpPrefixOriginOther = 0, |
|
||||||
IpPrefixOriginManual, |
|
||||||
IpPrefixOriginWellKnown, |
|
||||||
IpPrefixOriginDhcp, |
|
||||||
IpPrefixOriginRouterAdvertisement |
|
||||||
} IP_PREFIX_ORIGIN; |
|
||||||
|
|
||||||
typedef enum { |
|
||||||
IpSuffixOriginOther = 0, |
|
||||||
IpSuffixOriginManual, |
|
||||||
IpSuffixOriginWellKnown, |
|
||||||
IpSuffixOriginDhcp, |
|
||||||
IpSuffixOriginLinkLayerAddress, |
|
||||||
IpSuffixOriginRandom |
|
||||||
} IP_SUFFIX_ORIGIN; |
|
||||||
|
|
||||||
typedef enum { |
|
||||||
IpDadStateInvalid = 0, |
|
||||||
IpDadStateTentative, |
|
||||||
IpDadStateDuplicate, |
|
||||||
IpDadStateDeprecated, |
|
||||||
IpDadStatePreferred |
|
||||||
} IP_DAD_STATE; |
|
||||||
|
|
||||||
typedef enum { |
|
||||||
IfOperStatusUp = 1, |
|
||||||
IfOperStatusDown, |
|
||||||
IfOperStatusTesting, |
|
||||||
IfOperStatusUnknown, |
|
||||||
IfOperStatusDormant, |
|
||||||
IfOperStatusNotPresent, |
|
||||||
IfOperStatusLowerLayerDown |
|
||||||
} IF_OPER_STATUS; |
|
||||||
|
|
||||||
typedef enum { |
|
||||||
ScopeLevelInterface = 0x0001, |
|
||||||
ScopeLevelLink = 0x0002, |
|
||||||
ScopeLevelSubnet = 0x0003, |
|
||||||
ScopeLevelAdmin = 0x0004, |
|
||||||
ScopeLevelSite = 0x0005, |
|
||||||
ScopeLevelOrganization = 0x0008, |
|
||||||
ScopeLevelGlobal = 0x000E |
|
||||||
} SCOPE_LEVEL; |
|
||||||
|
|
||||||
typedef struct _IP_ADAPTER_UNICAST_ADDRESS { |
|
||||||
union { |
|
||||||
ULONGLONG Alignment; |
|
||||||
|
|
||||||
struct { |
|
||||||
ULONG Length; |
|
||||||
DWORD Flags; |
|
||||||
} s; |
|
||||||
} u; |
|
||||||
struct _IP_ADAPTER_UNICAST_ADDRESS *Next; |
|
||||||
SOCKET_ADDRESS Address; |
|
||||||
IP_PREFIX_ORIGIN PrefixOrigin; |
|
||||||
IP_SUFFIX_ORIGIN SuffixOrigin; |
|
||||||
IP_DAD_STATE DadState; |
|
||||||
ULONG ValidLifetime; |
|
||||||
ULONG PreferredLifetime; |
|
||||||
ULONG LeaseLifetime; |
|
||||||
} IP_ADAPTER_UNICAST_ADDRESS, *PIP_ADAPTER_UNICAST_ADDRESS; |
|
||||||
|
|
||||||
typedef struct _IP_ADAPTER_ANYCAST_ADDRESS { |
|
||||||
union { |
|
||||||
ULONGLONG Alignment; |
|
||||||
|
|
||||||
struct { |
|
||||||
ULONG Length; |
|
||||||
DWORD Flags; |
|
||||||
} s; |
|
||||||
} u; |
|
||||||
struct _IP_ADAPTER_ANYCAST_ADDRESS *Next; |
|
||||||
SOCKET_ADDRESS Address; |
|
||||||
} IP_ADAPTER_ANYCAST_ADDRESS, *PIP_ADAPTER_ANYCAST_ADDRESS; |
|
||||||
|
|
||||||
typedef struct _IP_ADAPTER_MULTICAST_ADDRESS { |
|
||||||
union { |
|
||||||
ULONGLONG Alignment; |
|
||||||
|
|
||||||
struct { |
|
||||||
ULONG Length; |
|
||||||
DWORD Flags; |
|
||||||
} s; |
|
||||||
} u; |
|
||||||
struct _IP_ADAPTER_MULTICAST_ADDRESS *Next; |
|
||||||
SOCKET_ADDRESS Address; |
|
||||||
} IP_ADAPTER_MULTICAST_ADDRESS, *PIP_ADAPTER_MULTICAST_ADDRESS; |
|
||||||
|
|
||||||
typedef struct _IP_ADAPTER_DNS_SERVER_ADDRESS { |
|
||||||
union { |
|
||||||
ULONGLONG Alignment; |
|
||||||
|
|
||||||
struct { |
|
||||||
ULONG Length; |
|
||||||
DWORD Reserved; |
|
||||||
} s; |
|
||||||
} u; |
|
||||||
struct _IP_ADAPTER_DNS_SERVER_ADDRESS *Next; |
|
||||||
SOCKET_ADDRESS Address; |
|
||||||
} IP_ADAPTER_DNS_SERVER_ADDRESS, *PIP_ADAPTER_DNS_SERVER_ADDRESS; |
|
||||||
|
|
||||||
typedef struct _IP_ADAPTER_PREFIX { |
|
||||||
union { |
|
||||||
ULONGLONG Alignment; |
|
||||||
|
|
||||||
struct { |
|
||||||
ULONG Length; |
|
||||||
DWORD Flags; |
|
||||||
} s; |
|
||||||
} u; |
|
||||||
struct _IP_ADAPTER_PREFIX *Next; |
|
||||||
SOCKET_ADDRESS Address; |
|
||||||
ULONG PrefixLength; |
|
||||||
} IP_ADAPTER_PREFIX, *PIP_ADAPTER_PREFIX; |
|
||||||
|
|
||||||
typedef struct _IP_ADAPTER_ADDRESSES { |
|
||||||
union { |
|
||||||
ULONGLONG Alignment; |
|
||||||
|
|
||||||
struct { |
|
||||||
ULONG Length; |
|
||||||
DWORD IfIndex; |
|
||||||
} s; |
|
||||||
} u; |
|
||||||
struct _IP_ADAPTER_ADDRESSES *Next; |
|
||||||
PCHAR AdapterName; |
|
||||||
PIP_ADAPTER_UNICAST_ADDRESS FirstUnicastAddress; |
|
||||||
PIP_ADAPTER_ANYCAST_ADDRESS FirstAnycastAddress; |
|
||||||
PIP_ADAPTER_MULTICAST_ADDRESS FirstMulticastAddress; |
|
||||||
PIP_ADAPTER_DNS_SERVER_ADDRESS FirstDnsServerAddress; |
|
||||||
PWCHAR DnsSuffix; |
|
||||||
PWCHAR Description; |
|
||||||
PWCHAR FriendlyName; |
|
||||||
BYTE PhysicalAddress[MAX_ADAPTER_ADDRESS_LENGTH]; |
|
||||||
DWORD PhysicalAddressLength; |
|
||||||
DWORD Flags; |
|
||||||
DWORD Mtu; |
|
||||||
DWORD IfType; |
|
||||||
IF_OPER_STATUS OperStatus; |
|
||||||
DWORD Ipv6IfIndex; |
|
||||||
DWORD ZoneIndices[16]; |
|
||||||
PIP_ADAPTER_PREFIX FirstPrefix; |
|
||||||
} IP_ADAPTER_ADDRESSES, *PIP_ADAPTER_ADDRESSES; |
|
||||||
|
|
||||||
/* -------------------------------- */ |
|
||||||
# endif /* ! IP_ADAPTER_DDNS_ENABLED */ |
|
||||||
/* -------------------------------- */ |
|
||||||
|
|
||||||
#endif /* USE_WINSOCK */ |
|
||||||
|
|
||||||
#endif /* HEADER_CARES_IPHLPAPI_H */ |
|
Loading…
Reference in new issue