ReactOS 0.4.16-dev-2615-g89221f5
rosdhcp.h
Go to the documentation of this file.
1#ifndef ROSDHCP_H
2#define ROSDHCP_H
3
4#include <stdarg.h>
5
6#define WIN32_NO_STATUS
7#define _INC_WINDOWS
8#define COM_NO_WINDOWS_H
9
10#include <windef.h>
11#include <winbase.h>
12#include <winreg.h>
13#include <winnls.h>
14#define NTOS_MODE_USER
15#include <ndk/kefuncs.h>
16#include <ndk/rtlfuncs.h>
17#include <dhcpcsdk.h>
18#include <rpc.h>
19#include <dhcpcsvc_c.h>
20#include <dhcpcsvc_s.h>
21
22#include "debug.h"
23
24#define IFNAMSIZ MAX_INTERFACE_NAME_LEN
25#undef interface /* wine/objbase.h -- Grrr */
26
27#undef IGNORE
28#undef ACCEPT
29#undef PREFER
30#define DHCP_DISCOVER_INTERVAL 5
31#define DHCP_REBOOT_TIMEOUT 10
32#define DHCP_PANIC_TIMEOUT 20
33#define DHCP_BACKOFF_MAX 300
34#define DHCP_DEFAULT_LEASE_TIME 43200 /* 12 hours */
35#define _PATH_DHCLIENT_PID "\\systemroot\\system32\\drivers\\etc\\dhclient.pid"
36typedef void *VOIDPTR;
37typedef unsigned char u_int8_t;
38typedef unsigned short u_int16_t;
39typedef unsigned int u_int32_t;
40typedef char *caddr_t;
41
42#ifndef _SSIZE_T_DEFINED
43#define _SSIZE_T_DEFINED
44#undef ssize_t
45#ifdef _WIN64
46#if defined(__GNUC__) && defined(__STRICT_ANSI__)
47 typedef int ssize_t __attribute__ ((mode (DI)));
48#else
49 typedef __int64 ssize_t;
50#endif
51#else
52 typedef int ssize_t;
53#endif
54#endif
55
57#define TIME uintTIME
58#include "dhcpd.h"
59
60#define INLINE inline
61#define PROTO(x) x
62
63typedef void (*handler_t) PROTO ((struct packet *));
64
65struct iaddr;
66struct interface_info;
67
69{
76
77typedef struct _DHCP_ADAPTER
78{
90 unsigned int BindStatus;
91 unsigned char recv_buf[1];
93
94#define random rand
95#define srandom srand
96
97int init_client(void);
98void stop_client(void);
99
107extern PDHCP_ADAPTER AdapterFindIndex( unsigned int AdapterIndex );
111extern HANDLE InitRpc(VOID);
112extern VOID ShutdownRpc(VOID);
117extern int inet_aton(const char *s, struct in_addr *addr);
118int warn( char *format, ... );
119
120#endif /* ROSDHCP_H */
#define inet_aton(ap, inp)
Definition: adns_win32.h:161
void AdapterInit()
Definition: adapter.c:289
void AdapterStop()
Definition: adapter.c:595
PDHCP_ADAPTER AdapterGetFirst()
Definition: adapter.c:669
VOID ApiFree()
Definition: api.c:30
VOID ApiLock()
Definition: api.c:22
VOID ApiInit()
Definition: api.c:18
VOID ApiUnlock()
Definition: api.c:26
HANDLE hStopEvent
Definition: dhcpcsvc.c:20
#define __attribute__(x)
Definition: wpp_private.h:207
#define __int64
Definition: corecrt.h:72
unsigned long DWORD
Definition: ntddk_ex.h:95
GLdouble s
Definition: gl.h:2039
GLenum mode
Definition: glext.h:6217
GLenum const GLvoid * addr
Definition: glext.h:9621
short WCHAR
Definition: pedump.c:58
#define warn(...)
struct _ALTERNATE_CONFIGURATION * PALTERNATE_CONFIGURATION
int init_client(void)
Definition: dhclient.c:111
unsigned int u_int32_t
Definition: rosdhcp.h:39
struct _DHCP_ADAPTER DHCP_ADAPTER
PDHCP_ADAPTER AdapterGetNext(PDHCP_ADAPTER)
Definition: adapter.c:676
void * VOIDPTR
Definition: rosdhcp.h:36
unsigned short u_int16_t
Definition: rosdhcp.h:38
PDHCP_ADAPTER AdapterFindByHardwareAddress(u_int8_t *haddr, u_int8_t hlen)
Definition: adapter.c:652
unsigned char u_int8_t
Definition: rosdhcp.h:37
PDHCP_ADAPTER AdapterFindInfo(struct interface_info *info)
Definition: adapter.c:638
u_int32_t uintTIME
Definition: rosdhcp.h:56
HANDLE StartAdapterDiscovery(HANDLE hStopEvent)
Definition: adapter.c:591
struct _ALTERNATE_CONFIGURATION ALTERNATE_CONFIGURATION
VOID ShutdownRpc(VOID)
Definition: api.c:71
char * caddr_t
Definition: rosdhcp.h:40
void stop_client(void)
Definition: dhclient.c:129
#define PROTO(x)
Definition: rosdhcp.h:61
PDHCP_ADAPTER AdapterFindName(const WCHAR *name)
Definition: adapter.c:622
struct _DHCP_ADAPTER * PDHCP_ADAPTER
HKEY FindAdapterKey(PDHCP_ADAPTER Adapter)
Definition: adapter.c:105
DWORD LoadAlternateConfiguration(PDHCP_ADAPTER Adapter, HKEY AdapterKey)
Definition: adapter.c:154
int ssize_t
Definition: rosdhcp.h:52
PDHCP_ADAPTER AdapterFindIndex(unsigned int AdapterIndex)
Definition: adapter.c:608
HANDLE InitRpc(VOID)
Definition: api.c:65
ULONG NteContext
Definition: rosdhcp.h:85
ULONG NteInstance
Definition: rosdhcp.h:85
MIB_IPFORWARDROW RouterMib
Definition: rosdhcp.h:82
unsigned char recv_buf[1]
Definition: rosdhcp.h:91
PALTERNATE_CONFIGURATION AlternateConfiguration
Definition: rosdhcp.h:80
struct interface_info DhclientInfo
Definition: rosdhcp.h:86
MIB_IPADDRROW IfAddr
Definition: rosdhcp.h:83
struct client_state DhclientState
Definition: rosdhcp.h:87
SOCKADDR Address
Definition: rosdhcp.h:84
struct client_config DhclientConfig
Definition: rosdhcp.h:88
LIST_ENTRY ListEntry
Definition: rosdhcp.h:79
struct sockaddr_in ListenAddr
Definition: rosdhcp.h:89
unsigned int BindStatus
Definition: rosdhcp.h:90
MIB_IFROW IfMib
Definition: rosdhcp.h:81
Definition: typedefs.h:120
Definition: format.c:58
Definition: dhcpd.h:125
Definition: tcpip.h:126
Definition: name.c:39
Definition: dhcpd.h:135
uint32_t ULONG
Definition: typedefs.h:59