internet.h
上传用户:hepax88
上传日期:2007-01-03
资源大小:1101k
文件大小:2k
源码类别:

TCP/IP协议栈

开发平台:

Visual C++

  1. #ifndef _INTERNET_H
  2. #define _INTERNET_H
  3. #ifndef _GLOBAL_H
  4. #include "global.h"
  5. #endif
  6. /* Global structures and constants pertaining to the interface between IP and
  7.  *  higher level protocols
  8.  */
  9. /* IP protocol field values */
  10. #define ICMP_PTCL 1 /* Internet Control Message Protocol */
  11. #define IP4_PTCL 4 /* IP inside IP */
  12. #define TCP_PTCL 6 /* Transmission Control Protocol */
  13. #define UDP_PTCL 17 /* User Datagram Protocol */
  14. #define IP_PTCL 94 /* JI's IP inside IP */
  15. #define ESP_PTCL 50 /* Encapsulating Security Protocol */
  16. #define AH_PTCL 51 /* Authentication header */
  17. #define MAXTTL 255 /* Maximum possible IP time-to-live value */
  18. /* DoD-style precedences */
  19. #define IP_PRECEDENCE 0xe0 /* Mask for precedence field */
  20. #define ROUTINE 0x00
  21. #define PRIORITY 0x20
  22. #define IMMEDIATE 0x40
  23. #define FLASH 0x60
  24. #define FLASH_OVER 0x80
  25. #define CRITIC 0xa0
  26. #define INET_CTL 0xc0
  27. #define NET_CTL 0xe0
  28. /* Amateur-style precedences */
  29. #define AM_ROUTINE 0x00
  30. #define AM_WELFARE 0x20
  31. #define AM_PRIORITY 0x40
  32. #define AM_EMERGENCY 0x60
  33. /* Class-of-service bits */
  34. #define IP_COS 0x1c /* Mask for class-of-service bits */
  35. #define LOW_DELAY 0x10
  36. #define THROUGHPUT 0x08
  37. #define RELIABILITY 0x04
  38. /* IP TOS fields */
  39. #define PREC(x) (((x)>>5) & 0x7)
  40. #define DELAY 0x10
  41. #define THRUPUT 0x8
  42. #define RELIABLITY 0x4
  43. /* Pseudo-header for TCP and UDP checksumming */
  44. struct pseudo_header {
  45. int32 source; /* IP source */
  46. int32 dest; /* IP destination */
  47. char protocol; /* Protocol */
  48. uint16 length; /* Data field length */
  49. };
  50. /* Format of a MIB entry for statistics gathering */
  51. struct mib_entry {
  52. char *name;
  53. union {
  54. int32 integer;
  55. } value;
  56. };
  57. #endif /* _INTERNET_H */