in.h 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. #define IP_TOS 1
  2. #define IP_TTL 2
  3. #define IP_HDRINCL 3
  4. #define IP_OPTIONS 4
  5. #define IP_ROUTER_ALERT 5
  6. #define IP_RECVOPTS 6
  7. #define IP_RETOPTS 7
  8. //#define IP_PKTINFO 8
  9. #define IP_PKTOPTIONS 9
  10. #define IP_PMTUDISC 10
  11. #define IP_MTU_DISCOVER 10
  12. #define IP_RECVERR 11
  13. #define IP_RECVTTL 12
  14. #define IP_RECVTOS 13
  15. #define IP_MULTICAST_IF 32
  16. #define IP_MULTICAST_TTL 33
  17. #define IP_MULTICAST_LOOP 34
  18. #define IP_ADD_MEMBERSHIP 35
  19. #define IP_DROP_MEMBERSHIP 36
  20. #define IP_RECVRETOPTS IP_RETOPTS
  21. #define IP_PMTUDISC_DONT 0
  22. #define IP_PMTUDISC_WANT 1
  23. #define IP_PMTUDISC_DO 2
  24. #define SOL_IP 0
  25. #define IP_DEFAULT_MULTICAST_TTL 1
  26. #define IP_DEFAULT_MULTICAST_LOOP 1
  27. #define IP_MAX_MEMBERSHIPS 20
  28. struct ip_opts
  29. {
  30. struct in_addr ip_dst;
  31. char ip_opts[40];
  32. };
  33. struct ip_mreq
  34. {
  35. struct in_addr imr_multiaddr;
  36. struct in_addr imr_interface;
  37. };
  38. struct ip_mreqn
  39. {
  40. struct in_addr imr_multiaddr;
  41. struct in_addr imr_address;
  42. int imr_ifindex;
  43. };
  44. struct in_pktinfo
  45. {
  46. int ipi_ifindex;
  47. struct in_addr ipi_spec_dst;
  48. struct in_addr ipi_addr;
  49. };
  50. #define IPV6_ADDRFORM 1
  51. #define IPV6_PKTINFO 2
  52. #define IPV6_HOPOPTS 3
  53. #define IPV6_DSTOPTS 4
  54. #define IPV6_RXSRCRT 5
  55. #define IPV6_PKTOPTIONS 6
  56. #define IPV6_CHECKSUM 7
  57. #define IPV6_HOPLIMIT 8
  58. #define IPV6_NEXTHOP 9
  59. #define IPV6_AUTHHDR 10
  60. #define IPV6_UNICAST_HOPS 16
  61. #define IPV6_MULTICAST_IF 17
  62. #define IPV6_MULTICAST_HOPS 18
  63. #define IPV6_MULTICAST_LOOP 19
  64. #define IPV6_ADD_MEMBERSHIP 20
  65. #define IPV6_DROP_MEMBERSHIP 21
  66. #define IPV6_ROUTER_ALERT 22
  67. #define SCM_SRCRT IPV6_RXSRCRT
  68. #define IPV6_RXHOPOPTS IPV6_HOPOPTS
  69. #define IPV6_RXDSTOPTS IPV6_DSTOPTS
  70. #define IPV6_PMTUDISC_DONT 0
  71. #define IPV6_PMTUDISC_WANT 1
  72. #define IPV6_PMTUDISC_DO 2
  73. #define SOL_IPV6 41
  74. #define SOL_ICMPV6 58