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

  1. #ifndef _IPRTRMIB_H
  2. #define _IPRTRMIB_H
  3. #if __GNUC__ >=3
  4. #pragma GCC system_header
  5. #endif
  6.  
  7. #include <ipifcons.h>
  8. #ifdef __cplusplus
  9. extern "C" {
  10. #endif
  11. #ifndef ANY_SIZE
  12. #define ANY_SIZE 1
  13. #endif
  14. #define MAXLEN_PHYSADDR 8
  15. #define MAXLEN_IFDESCR 256
  16. #ifndef MAX_INTERFACE_NAME_LEN
  17. #define MAX_INTERFACE_NAME_LEN 256
  18. #endif
  19. #define MIB_IPNET_TYPE_OTHER 1
  20. #define MIB_IPNET_TYPE_INVALID 2
  21. #define MIB_IPNET_TYPE_DYNAMIC 3
  22. #define MIB_IPNET_TYPE_STATIC 4
  23. #define MIB_TCP_RTO_OTHER 1
  24. #define MIB_TCP_RTO_CONSTANT 2
  25. #define MIB_TCP_RTO_RSRE 3
  26. #define MIB_TCP_RTO_VANJ 4
  27. #define MIB_TCP_STATE_CLOSED 1                 
  28. #define MIB_TCP_STATE_LISTEN 2                 
  29. #define MIB_TCP_STATE_SYN_SENT 3                 
  30. #define MIB_TCP_STATE_SYN_RCVD 4                 
  31. #define MIB_TCP_STATE_ESTAB 5                 
  32. #define MIB_TCP_STATE_FIN_WAIT1 6                 
  33. #define MIB_TCP_STATE_FIN_WAIT2 7                 
  34. #define MIB_TCP_STATE_CLOSE_WAIT 8                 
  35. #define MIB_TCP_STATE_CLOSING 9                
  36. #define MIB_TCP_STATE_LAST_ACK 10                
  37. #define MIB_TCP_STATE_TIME_WAIT 11                
  38. #define MIB_TCP_STATE_DELETE_TCB 12                
  39. #define MIB_USE_CURRENT_TTL ((DWORD)-1)
  40. #define MIB_USE_CURRENT_FORWARDING ((DWORD)-1)
  41. #define MIB_TCP_MAXCONN_DYNAMIC ((DWORD)-1)
  42. typedef struct {
  43.   DWORD dwAddr;
  44.   DWORD dwIndex;
  45.   DWORD dwMask;
  46.   DWORD dwBCastAddr;
  47.   DWORD dwReasmSize;
  48.   unsigned short unused1;
  49.   unsigned short unused2;
  50. } MIB_IPADDRROW, *PMIB_IPADDRROW;
  51. typedef struct {
  52.   DWORD dwNumEntries;
  53.   MIB_IPADDRROW table[ANY_SIZE];
  54. } MIB_IPADDRTABLE, *PMIB_IPADDRTABLE;
  55. typedef struct {
  56.   DWORD dwForwardDest;
  57.   DWORD dwForwardMask;
  58.   DWORD dwForwardPolicy;
  59.   DWORD dwForwardNextHop;
  60.   DWORD dwForwardIfIndex;
  61.   DWORD dwForwardType;
  62.   DWORD dwForwardProto;
  63.   DWORD dwForwardAge;
  64.   DWORD dwForwardNextHopAS;
  65.   DWORD dwForwardMetric1;
  66.   DWORD dwForwardMetric2;
  67.   DWORD dwForwardMetric3;
  68.   DWORD dwForwardMetric4;
  69.   DWORD dwForwardMetric5;
  70. } MIB_IPFORWARDROW, *PMIB_IPFORWARDROW;
  71. typedef struct {
  72.   DWORD dwNumEntries;
  73.   MIB_IPFORWARDROW table[ANY_SIZE];
  74. } MIB_IPFORWARDTABLE, *PMIB_IPFORWARDTABLE;
  75. typedef struct {
  76.   DWORD dwIndex;
  77.   DWORD dwPhysAddrLen;
  78.   BYTE bPhysAddr[MAXLEN_PHYSADDR];
  79.   DWORD dwAddr;
  80.   DWORD dwType;
  81. } MIB_IPNETROW, *PMIB_IPNETROW;
  82. typedef struct {
  83.   DWORD dwNumEntries;
  84.   MIB_IPNETROW table[ANY_SIZE];
  85. } MIB_IPNETTABLE, *PMIB_IPNETTABLE;
  86. typedef struct {
  87.   DWORD dwMsgs;
  88.   DWORD dwErrors;
  89.   DWORD dwDestUnreachs;
  90.   DWORD dwTimeExcds;
  91.   DWORD dwParmProbs;
  92.   DWORD dwSrcQuenchs;
  93.   DWORD dwRedirects;
  94.   DWORD dwEchos;
  95.   DWORD dwEchoReps;
  96.   DWORD dwTimestamps;
  97.   DWORD dwTimestampReps;
  98.   DWORD dwAddrMasks;
  99.   DWORD dwAddrMaskReps;
  100. } MIBICMPSTATS, *PMIBICMPSTATS;
  101. typedef struct {
  102.   MIBICMPSTATS icmpInStats;
  103.   MIBICMPSTATS icmpOutStats;
  104. } MIBICMPINFO, *PMIBICMPINFO;
  105. typedef struct {
  106.   MIBICMPINFO stats;
  107. } MIB_ICMP, *PMIB_ICMP;
  108. typedef struct {
  109.   WCHAR wszName[MAX_INTERFACE_NAME_LEN];
  110.   DWORD dwIndex;
  111.   DWORD dwType;
  112.   DWORD dwMtu;
  113.   DWORD dwSpeed;
  114.   DWORD dwPhysAddrLen;
  115.   BYTE bPhysAddr[MAXLEN_PHYSADDR];
  116.   DWORD dwAdminStatus;
  117.   DWORD dwOperStatus;
  118.   DWORD dwLastChange;
  119.   DWORD dwInOctets;
  120.   DWORD dwInUcastPkts;
  121.   DWORD dwInNUcastPkts;
  122.   DWORD dwInDiscards;
  123.   DWORD dwInErrors;
  124.   DWORD dwInUnknownProtos;
  125.   DWORD dwOutOctets;
  126.   DWORD dwOutUcastPkts;
  127.   DWORD dwOutNUcastPkts;
  128.   DWORD dwOutDiscards;
  129.   DWORD dwOutErrors;
  130.   DWORD dwOutQLen;
  131.   DWORD dwDescrLen;
  132.   BYTE  bDescr[MAXLEN_IFDESCR];
  133. } MIB_IFROW, *PMIB_IFROW;
  134. typedef struct {
  135.   DWORD dwNumEntries;
  136.   MIB_IFROW table[ANY_SIZE];
  137. } MIB_IFTABLE, *PMIB_IFTABLE;
  138. typedef struct {
  139.   DWORD dwForwarding;
  140.   DWORD dwDefaultTTL;
  141.   DWORD dwInReceives;
  142.   DWORD dwInHdrErrors;
  143.   DWORD dwInAddrErrors;
  144.   DWORD dwForwDatagrams;
  145.   DWORD dwInUnknownProtos;
  146.   DWORD dwInDiscards;
  147.   DWORD dwInDelivers;
  148.   DWORD dwOutRequests;
  149.   DWORD dwRoutingDiscards;
  150.   DWORD dwOutDiscards;
  151.   DWORD dwOutNoRoutes;
  152.   DWORD dwReasmTimeout;
  153.   DWORD dwReasmReqds;
  154.   DWORD dwReasmOks;
  155.   DWORD dwReasmFails;
  156.   DWORD dwFragOks;
  157.   DWORD dwFragFails;
  158.   DWORD dwFragCreates;
  159.   DWORD dwNumIf;
  160.   DWORD dwNumAddr;
  161.   DWORD dwNumRoutes;
  162. } MIB_IPSTATS, *PMIB_IPSTATS;
  163. typedef struct {
  164.   DWORD dwRtoAlgorithm;
  165.   DWORD dwRtoMin;
  166.   DWORD dwRtoMax;
  167.   DWORD dwMaxConn;
  168.   DWORD dwActiveOpens;
  169.   DWORD dwPassiveOpens;
  170.   DWORD dwAttemptFails;
  171.   DWORD dwEstabResets;
  172.   DWORD dwCurrEstab;
  173.   DWORD dwInSegs;
  174.   DWORD dwOutSegs;
  175.   DWORD dwRetransSegs;
  176.   DWORD dwInErrs;
  177.   DWORD dwOutRsts;
  178.   DWORD dwNumConns;
  179. } MIB_TCPSTATS, *PMIB_TCPSTATS;
  180. typedef struct {
  181.   DWORD dwState;
  182.   DWORD dwLocalAddr;
  183.   DWORD dwLocalPort;
  184.   DWORD dwRemoteAddr;
  185.   DWORD dwRemotePort;
  186. } MIB_TCPROW, *PMIB_TCPROW;
  187. typedef struct {
  188.   DWORD dwNumEntries;
  189.   MIB_TCPROW table[ANY_SIZE];
  190. } MIB_TCPTABLE, *PMIB_TCPTABLE;
  191. typedef struct {
  192.   DWORD dwInDatagrams;
  193.   DWORD dwNoPorts;
  194.   DWORD dwInErrors;
  195.   DWORD dwOutDatagrams;
  196.   DWORD dwNumAddrs;
  197. } MIB_UDPSTATS, *PMIB_UDPSTATS;
  198. typedef struct {
  199.   DWORD dwLocalAddr;
  200.   DWORD dwLocalPort;
  201. } MIB_UDPROW, *PMIB_UDPROW;
  202. typedef struct {
  203.   DWORD dwNumEntries;
  204.   MIB_UDPROW table[ANY_SIZE];
  205. } MIB_UDPTABLE, *PMIB_UDPTABLE;
  206. #ifdef __cplusplus
  207. }
  208. #endif
  209. #endif /* _IPRTRMIB_H */
  210.