Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenrosdhcp.h
Go to the documentation of this file.
00001 #ifndef ROSDHCP_H 00002 #define ROSDHCP_H 00003 00004 #define WIN32_NO_STATUS 00005 #include <winsock2.h> 00006 #define NTOS_MODE_USER 00007 #include <ndk/rtlfuncs.h> 00008 #include <iprtrmib.h> 00009 #include <iphlpapi.h> 00010 #include <dhcpcsdk.h> 00011 #include <dhcp/rosdhcp_public.h> 00012 #include <stdio.h> 00013 #include <time.h> 00014 #include "debug.h" 00015 #define IFNAMSIZ MAX_INTERFACE_NAME_LEN 00016 #undef interface /* wine/objbase.h -- Grrr */ 00017 00018 #undef IGNORE 00019 #undef ACCEPT 00020 #undef PREFER 00021 #define DHCP_DISCOVER_INTERVAL 5 00022 #define DHCP_REBOOT_TIMEOUT 10 00023 #define DHCP_PANIC_TIMEOUT 20 00024 #define DHCP_BACKOFF_MAX 300 00025 #define DHCP_DEFAULT_LEASE_TIME 43200 /* 12 hours */ 00026 #define _PATH_DHCLIENT_PID "\\systemroot\\system32\\drivers\\etc\\dhclient.pid" 00027 typedef void *VOIDPTR; 00028 typedef unsigned char u_int8_t; 00029 typedef unsigned short u_int16_t; 00030 typedef unsigned int u_int32_t; 00031 typedef char *caddr_t; 00032 00033 #ifndef _SSIZE_T_DEFINED 00034 #define _SSIZE_T_DEFINED 00035 #undef ssize_t 00036 #ifdef _WIN64 00037 #if defined(__GNUC__) && defined(__STRICT_ANSI__) 00038 typedef int ssize_t __attribute__ ((mode (DI))); 00039 #else 00040 typedef __int64 ssize_t; 00041 #endif 00042 #else 00043 typedef int ssize_t; 00044 #endif 00045 #endif 00046 00047 typedef u_int32_t uintTIME; 00048 #define TIME uintTIME 00049 #include "dhcpd.h" 00050 00051 #define INLINE inline 00052 #define PROTO(x) x 00053 00054 typedef void (*handler_t) PROTO ((struct packet *)); 00055 00056 struct iaddr; 00057 struct interface_info; 00058 00059 typedef struct _DHCP_ADAPTER { 00060 LIST_ENTRY ListEntry; 00061 MIB_IFROW IfMib; 00062 MIB_IPFORWARDROW RouterMib; 00063 MIB_IPADDRROW IfAddr; 00064 SOCKADDR Address; 00065 ULONG NteContext,NteInstance; 00066 struct interface_info DhclientInfo; 00067 struct client_state DhclientState; 00068 struct client_config DhclientConfig; 00069 struct sockaddr_in ListenAddr; 00070 unsigned int BindStatus; 00071 unsigned char recv_buf[1]; 00072 } DHCP_ADAPTER, *PDHCP_ADAPTER; 00073 00074 typedef DWORD (*PipeSendFunc)( COMM_DHCP_REPLY *Reply ); 00075 00076 #define random rand 00077 #define srandom srand 00078 00079 void AdapterInit(VOID); 00080 HANDLE StartAdapterDiscovery(VOID); 00081 void AdapterStop(VOID); 00082 extern PDHCP_ADAPTER AdapterGetFirst(VOID); 00083 extern PDHCP_ADAPTER AdapterGetNext(PDHCP_ADAPTER); 00084 extern PDHCP_ADAPTER AdapterFindIndex( unsigned int AdapterIndex ); 00085 extern PDHCP_ADAPTER AdapterFindInfo( struct interface_info *info ); 00086 extern PDHCP_ADAPTER AdapterFindByHardwareAddress( u_int8_t haddr[16], u_int8_t hlen ); 00087 extern HANDLE PipeInit(VOID); 00088 extern VOID ApiInit(VOID); 00089 extern VOID ApiFree(VOID); 00090 extern VOID ApiLock(VOID); 00091 extern VOID ApiUnlock(VOID); 00092 extern DWORD DSQueryHWInfo( PipeSendFunc Send, COMM_DHCP_REQ *Req ); 00093 extern DWORD DSLeaseIpAddress( PipeSendFunc Send, COMM_DHCP_REQ *Req ); 00094 extern DWORD DSRenewIpAddressLease( PipeSendFunc Send, COMM_DHCP_REQ *Req ); 00095 extern DWORD DSReleaseIpAddressLease( PipeSendFunc Send, COMM_DHCP_REQ *Req ); 00096 extern DWORD DSStaticRefreshParams( PipeSendFunc Send, COMM_DHCP_REQ *Req ); 00097 extern DWORD DSGetAdapterInfo( PipeSendFunc Send, COMM_DHCP_REQ *Req ); 00098 extern int inet_aton(const char *s, struct in_addr *addr); 00099 int warn( char *format, ... ); 00100 #endif/*ROSDHCP_H*/ Generated on Sun May 27 2012 04:23:30 for ReactOS by
1.7.6.1
|