home *** CD-ROM | disk | FTP | other *** search
/ Beginning C++ Through Gam…rogramming (2nd Edition) / BCGP2E.ISO / bloodshed / devcpp-4.9.9.2_setup.exe / iptypes.h < prev    next >
C/C++ Source or Header  |  2005-01-29  |  2KB  |  79 lines

  1. #ifndef _IPTYPES_H
  2. #define _IPTYPES_H
  3. #if __GNUC__ >=3
  4. #pragma GCC system_header
  5. #endif
  6.  
  7. #include <sys/types.h>
  8. #ifdef __cplusplus
  9. extern "C" {
  10. #endif
  11. #define DEFAULT_MINIMUM_ENTITIES 32
  12. #define MAX_ADAPTER_ADDRESS_LENGTH 8
  13. #define MAX_ADAPTER_DESCRIPTION_LENGTH 128
  14. #define MAX_ADAPTER_NAME_LENGTH 256
  15. #define MAX_DOMAIN_NAME_LEN 128
  16. #define MAX_HOSTNAME_LEN 128
  17. #define MAX_SCOPE_ID_LEN 256
  18. #define BROADCAST_NODETYPE 1
  19. #define PEER_TO_PEER_NODETYPE 2
  20. #define MIXED_NODETYPE 4
  21. #define HYBRID_NODETYPE 8
  22. #define IF_OTHER_ADAPTERTYPE 0
  23. #define IF_ETHERNET_ADAPTERTYPE 1
  24. #define IF_TOKEN_RING_ADAPTERTYPE 2
  25. #define IF_FDDI_ADAPTERTYPE 3
  26. #define IF_PPP_ADAPTERTYPE 4
  27. #define IF_LOOPBACK_ADAPTERTYPE 5
  28. typedef struct {
  29.   char String[16];
  30. } IP_ADDRESS_STRING, *PIP_ADDRESS_STRING, IP_MASK_STRING, *PIP_MASK_STRING;
  31. typedef struct _IP_ADDR_STRING {
  32.   struct _IP_ADDR_STRING* Next;
  33.   IP_ADDRESS_STRING IpAddress;
  34.   IP_MASK_STRING IpMask;
  35.   DWORD Context;
  36. } IP_ADDR_STRING, *PIP_ADDR_STRING;
  37. typedef struct _IP_ADAPTER_INFO {
  38.   struct _IP_ADAPTER_INFO* Next;
  39.   DWORD ComboIndex;
  40.   char AdapterName[MAX_ADAPTER_NAME_LENGTH+4];
  41.   char Description[MAX_ADAPTER_DESCRIPTION_LENGTH+4];
  42.   UINT AddressLength;
  43.   BYTE Address[MAX_ADAPTER_ADDRESS_LENGTH];
  44.   DWORD Index;
  45.   UINT Type;
  46.   UINT DhcpEnabled;
  47.   PIP_ADDR_STRING CurrentIpAddress;
  48.   IP_ADDR_STRING IpAddressList;
  49.   IP_ADDR_STRING GatewayList;
  50.   IP_ADDR_STRING DhcpServer;
  51.   BOOL HaveWins;
  52.   IP_ADDR_STRING PrimaryWinsServer;
  53.   IP_ADDR_STRING SecondaryWinsServer;
  54.   time_t LeaseObtained;
  55.   time_t LeaseExpires;
  56. } IP_ADAPTER_INFO, *PIP_ADAPTER_INFO;
  57. typedef struct _IP_PER_ADAPTER_INFO {
  58.   UINT AutoconfigEnabled;
  59.   UINT AutoconfigActive;
  60.   PIP_ADDR_STRING CurrentDnsServer;
  61.   IP_ADDR_STRING DnsServerList;
  62. } IP_PER_ADAPTER_INFO, *PIP_PER_ADAPTER_INFO;
  63. typedef struct _FIXED_INFO {
  64.   char HostName[MAX_HOSTNAME_LEN+4] ;
  65.   char DomainName[MAX_DOMAIN_NAME_LEN+4];
  66.   PIP_ADDR_STRING CurrentDnsServer;
  67.   IP_ADDR_STRING DnsServerList;
  68.   UINT NodeType;
  69.   char ScopeId[MAX_SCOPE_ID_LEN+4];
  70.   UINT EnableRouting;
  71.   UINT EnableProxy;
  72.   UINT EnableDns;
  73. } FIXED_INFO, *PFIXED_INFO;
  74.  
  75. #ifdef __cplusplus
  76. }
  77. #endif
  78. #endif /* _IPTYPES_H */
  79.