ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

rosdhcp.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 doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.