source: trunk/src/iphlpapi/iphlpapi.h@ 8706

Last change on this file since 8706 was 6989, checked in by phaller, 24 years ago

.

File size: 2.2 KB
Line 
1/* $Id: iphlpapi.h,v 1.1 2001-10-10 16:22:20 phaller Exp $ */
2/*
3 * IPHLPAPI library
4 *
5 */
6
7
8#ifndef _IPHLPAPI_H_
9#define _IPHLPAPI_H_
10
11
12#pragma pack(1)
13
14
15#ifndef _TIME_T_DEFINED
16#define _TIME_T_DEFINED
17typedef long time_t;
18#endif
19
20// FROM: IPExport.h
21//
22// IP type definitions.
23//
24typedef unsigned long IPAddr; // An IP address.
25typedef unsigned long IPMask; // An IP subnet mask.
26typedef unsigned long IP_STATUS; // Status code returned from IP APIs.
27
28
29// FROM: iptypes.h
30// Definitions and structures used by getnetworkparams and getadaptersinfo apis
31
32#define MAX_ADAPTER_DESCRIPTION_LENGTH 128 // arb.
33#define MAX_ADAPTER_NAME_LENGTH 256 // arb.
34#define MAX_ADAPTER_ADDRESS_LENGTH 8 // arb.
35#define DEFAULT_MINIMUM_ENTITIES 32 // arb.
36#define MAX_HOSTNAME_LEN 128 // arb.
37#define MAX_DOMAIN_NAME_LEN 128 // arb.
38#define MAX_SCOPE_ID_LEN 256 // arb.
39
40//
41// IP_ADDRESS_STRING - store an IP address as a dotted decimal string
42//
43
44typedef struct {
45 char String[4 * 4];
46} IP_ADDRESS_STRING, *PIP_ADDRESS_STRING, IP_MASK_STRING, *PIP_MASK_STRING;
47
48
49typedef struct _IP_ADDR_STRING {
50 struct _IP_ADDR_STRING* Next;
51 IP_ADDRESS_STRING IpAddress;
52 IP_MASK_STRING IpMask;
53 DWORD Context;
54} IP_ADDR_STRING, *PIP_ADDR_STRING;
55
56
57typedef struct _IP_ADAPTER_INFO {
58 struct _IP_ADAPTER_INFO* Next;
59 DWORD ComboIndex;
60 char AdapterName[MAX_ADAPTER_NAME_LENGTH + 4];
61 char Description[MAX_ADAPTER_DESCRIPTION_LENGTH + 4];
62 UINT AddressLength;
63 BYTE Address[MAX_ADAPTER_ADDRESS_LENGTH];
64 DWORD Index;
65 UINT Type;
66 UINT DhcpEnabled;
67 PIP_ADDR_STRING CurrentIpAddress;
68 IP_ADDR_STRING IpAddressList;
69 IP_ADDR_STRING GatewayList;
70 IP_ADDR_STRING DhcpServer;
71 BOOL HaveWins;
72 IP_ADDR_STRING PrimaryWinsServer;
73 IP_ADDR_STRING SecondaryWinsServer;
74 time_t LeaseObtained;
75 time_t LeaseExpires;
76} IP_ADAPTER_INFO, *PIP_ADAPTER_INFO;
77
78
79typedef struct {
80 char HostName[MAX_HOSTNAME_LEN + 4] ;
81 char DomainName[MAX_DOMAIN_NAME_LEN + 4];
82 PIP_ADDR_STRING CurrentDnsServer;
83 IP_ADDR_STRING DnsServerList;
84 UINT NodeType;
85 char ScopeId[MAX_SCOPE_ID_LEN + 4];
86 UINT EnableRouting;
87 UINT EnableProxy;
88 UINT EnableDns;
89} FIXED_INFO, *PFIXED_INFO;
90
91
92#pragma pack()
93
94#endif /* _IPHLPAPI_H_ */
Note: See TracBrowser for help on using the repository browser.