// // DHCPIF.H: DHCP Admin app helper inclusion // // All network, WinSock, TCP and DHCP headers // are included from here. // #include "wsockmsg.h" // Windows Sockets error codes #include "ipaddr.hpp" // IPADDRESS control class extern "C" { #include // The DHCP API header #include "..\..\..\sockets\tcpcmd\dhcp\server\server\dhcpmsg.h" // DHCP API private error message defs } // A defined parameter type typedef UINT DHC_PARAM_ID ; // Statically compiled limit definitions #define DHC_STRING_MAX 256 #define DHC_COMPUTER_NAME_MAX 20 #define DHC_DISPLAY_NAME_MAX 20 #define DHC_CLUSTER_SIZE_DEFAULT 10 #define DHC_PREALLOCATE_DEFAULT 20 #define DHC_BUFFER_MAX 8000 #define DHC_EDIT_STRING_MAX DHC_STRING_MAX #define DHC_EDIT_NUM_MAX 12 #define DHC_EDIT_ARRAY_MAX 2048 #define DHC_EDIT_ID_MAX 7 typedef DWORD APIERR ; typedef DHCP_IP_ADDRESS DHC_SUB_NET_MASK ; // Sub-net mask typedef DHCP_IP_ADDRESS DHC_SUB_NET_ID ; // Sub-net identifier typedef DHC_SUB_NET_ID DHC_SCOPE_ID ; // Scope identifier is sub-net ID typedef DHCP_IP_ADDRESS DHC_IP_MASK ; // Subnet mask #define DHCP_IP_ADDRESS_INVALID ((DHCP_IP_ADDRESS)0) #define DHC_ENUM_INVALID (-1) typedef struct { DHC_SCOPE_ID _dhscid ; // Scope ID (sub-net ID) DHCP_IP_RANGE _dhipr ; // Range of IP addresses to distribute DHC_IP_MASK _dhipm ; // Subnet mask for this scope DWORD _dwClusterSize ; // Address cluster group size DWORD _dwAddressPreallocate ; // Number of addresses for hosts to prealloc CHAR _chName [DHC_STRING_MAX] ; // User-given name of scope CHAR _chComment [DHC_STRING_MAX] ; // User-given description of scope } DHC_SCOPE_INFO_STRUCT ; #include "dhcputil.hpp" // Utility routines: WinSock and other // Wrappers for the *BROKEN* C8 TRY/CATCH stuff #define CATCH_MEM_EXCEPTION \ TRY #define END_MEM_EXCEPTION(err) \ CATCH_ALL(e) { \ err = ERROR_NOT_ENOUGH_MEMORY ; \ } END_CATCH_ALL // End of DHCPIF.H