ReactOS 0.4.15-dev-7953-g1f49173
dhcpcsdk.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2017 Alistair Leslie-Hughes
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18#ifndef _DHCPCSDK_
19#define _DHCPCSDK_
20
21#define OPTION_PAD 0
22#define OPTION_SUBNET_MASK 1
23#define OPTION_TIME_OFFSET 2
24#define OPTION_ROUTER_ADDRESS 3
25#define OPTION_TIME_SERVERS 4
26#define OPTION_IEN116_NAME_SERVERS 5
27#define OPTION_DOMAIN_NAME_SERVERS 6
28#define OPTION_LOG_SERVERS 7
29#define OPTION_COOKIE_SERVERS 8
30#define OPTION_LPR_SERVERS 9
31#define OPTION_IMPRESS_SERVERS 10
32#define OPTION_RLP_SERVERS 11
33#define OPTION_HOST_NAME 12
34#define OPTION_BOOT_FILE_SIZE 13
35#define OPTION_MERIT_DUMP_FILE 14
36#define OPTION_DOMAIN_NAME 15
37#define OPTION_SWAP_SERVER 16
38#define OPTION_ROOT_DISK 17
39#define OPTION_EXTENSIONS_PATH 18
40#define OPTION_BE_A_ROUTER 19
41#define OPTION_NON_LOCAL_SOURCE_ROUTING 20
42#define OPTION_POLICY_FILTER_FOR_NLSR 21
43#define OPTION_MAX_REASSEMBLY_SIZE 22
44#define OPTION_DEFAULT_TTL 23
45#define OPTION_PMTU_AGING_TIMEOUT 24
46#define OPTION_PMTU_PLATEAU_TABLE 25
47#define OPTION_MTU 26
48#define OPTION_ALL_SUBNETS_MTU 27
49#define OPTION_BROADCAST_ADDRESS 28
50#define OPTION_PERFORM_MASK_DISCOVERY 29
51#define OPTION_BE_A_MASK_SUPPLIER 30
52#define OPTION_PERFORM_ROUTER_DISCOVERY 31
53#define OPTION_ROUTER_SOLICITATION_ADDR 32
54#define OPTION_STATIC_ROUTES 33
55#define OPTION_TRAILERS 34
56#define OPTION_ARP_CACHE_TIMEOUT 35
57#define OPTION_ETHERNET_ENCAPSULATION 36
58#define OPTION_TTL 37
59#define OPTION_KEEP_ALIVE_INTERVAL 38
60#define OPTION_KEEP_ALIVE_DATA_SIZE 39
61#define OPTION_NETWORK_INFO_SERVICE_DOM 40
62#define OPTION_NETWORK_INFO_SERVERS 41
63#define OPTION_NETWORK_TIME_SERVERS 42
64#define OPTION_VENDOR_SPEC_INFO 43
65#define OPTION_NETBIOS_NAME_SERVER 44
66#define OPTION_NETBIOS_DATAGRAM_SERVER 45
67#define OPTION_NETBIOS_NODE_TYPE 46
68#define OPTION_NETBIOS_SCOPE_OPTION 47
69#define OPTION_XWINDOW_FONT_SERVER 48
70#define OPTION_XWINDOW_DISPLAY_MANAGER 49
71#define OPTION_REQUESTED_ADDRESS 50
72#define OPTION_LEASE_TIME 51
73#define OPTION_OK_TO_OVERLAY 52
74#define OPTION_MESSAGE_TYPE 53
75#define OPTION_SERVER_IDENTIFIER 54
76#define OPTION_PARAMETER_REQUEST_LIST 55
77#define OPTION_MESSAGE 56
78#define OPTION_MESSAGE_LENGTH 57
79#define OPTION_RENEWAL_TIME 58
80#define OPTION_REBIND_TIME 59
81#define OPTION_CLIENT_CLASS_INFO 60
82#define OPTION_CLIENT_ID 61
83
84#define OPTION_TFTP_SERVER_NAME 66
85#define OPTION_BOOTFILE_NAME 67
86
87#define OPTION_MSFT_IE_PROXY 252
88#define OPTION_END 255
89
90typedef struct _DHCPAPI_PARAMS
91{
98
100
102{
106
107typedef struct _DHCPCAPI_CLASSID
108{
113
114#define DHCPCAPI_REQUEST_PERSISTENT 0x1
115#define DHCPCAPI_REQUEST_SYNCHRONOUS 0x2
116#define DHCPCAPI_REQUEST_ASYNCHRONOUS 0x4
117#define DHCPCAPI_REQUEST_CANCEL 0x8
118#define DHCPCAPI_REQUEST_MASK 0xf
119
120void WINAPI DhcpCApiCleanup(void);
124
125#endif
struct _DHCPCAPI_PARAMS_ARARAY DHCPCAPI_PARAMS_ARRAY
struct _DHCPCAPI_PARAMS_ARARAY * PDHCPCAPI_PARAMS_ARRAY
void WINAPI DhcpCApiCleanup(void)
Definition: dhcpcsvc.c:71
DWORD WINAPI DhcpCApiInitialize(DWORD *)
struct _DHCPAPI_PARAMS * LPDHCPAPI_PARAMS
DWORD WINAPI DhcpRequestParams(DWORD, void *, WCHAR *, DHCPCAPI_CLASSID *, DHCPCAPI_PARAMS_ARRAY, DHCPCAPI_PARAMS_ARRAY, BYTE *, DWORD *, WCHAR *)
struct _DHCPAPI_PARAMS DHCPAPI_PARAMS
struct _DHCPCAPI_CLASSID DHCPCAPI_CLASSID
struct _DHCPAPI_PARAMS * LPDHCPCAPI_PARAMS
Definition: dhcpcsdk.h:99
struct _DHCPAPI_PARAMS * PDHCPAPI_PARAMS
struct _DHCPCAPI_PARAMS_ARARAY * LPDHCPCAPI_PARAMS_ARRAY
struct _DHCPCAPI_CLASSID * PDHCPCAPI_CLASSID
struct _DHCPCAPI_CLASSID * LPDHCPCAPI_CLASSID
struct _DHCPAPI_PARAMS * PDHCPCAPI_PARAMS
Definition: dhcpcsdk.h:99
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
ULONG OptionId
Definition: dhcpcsdk.h:93
BYTE * Data
Definition: dhcpcsdk.h:95
DWORD nBytesData
Definition: dhcpcsdk.h:96
LPDHCPCAPI_PARAMS Params
Definition: dhcpcsdk.h:104
uint32_t ULONG
Definition: typedefs.h:59
#define WINAPI
Definition: msvc.h:6
__wchar_t WCHAR
Definition: xmlstorage.h:180
unsigned char BYTE
Definition: xxhash.c:193