netfilter_ipv4.h
上传用户:szlgq88
上传日期:2009-04-28
资源大小:48287k
文件大小:2k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  1. #ifndef __LINUX_IP_NETFILTER_H
  2. #define __LINUX_IP_NETFILTER_H
  3. /* IPv4-specific defines for netfilter. 
  4.  * (C)1998 Rusty Russell -- This code is GPL.
  5.  */
  6. #include <linux/config.h>
  7. #include <linux/netfilter.h>
  8. /* only for userspace compatibility */
  9. #ifndef __KERNEL__
  10. /* IP Cache bits. */
  11. /* Src IP address. */
  12. #define NFC_IP_SRC 0x0001
  13. /* Dest IP address. */
  14. #define NFC_IP_DST 0x0002
  15. /* Input device. */
  16. #define NFC_IP_IF_IN 0x0004
  17. /* Output device. */
  18. #define NFC_IP_IF_OUT 0x0008
  19. /* TOS. */
  20. #define NFC_IP_TOS 0x0010
  21. /* Protocol. */
  22. #define NFC_IP_PROTO 0x0020
  23. /* IP options. */
  24. #define NFC_IP_OPTIONS 0x0040
  25. /* Frag & flags. */
  26. #define NFC_IP_FRAG 0x0080
  27. /* Per-protocol information: only matters if proto match. */
  28. /* TCP flags. */
  29. #define NFC_IP_TCPFLAGS 0x0100
  30. /* Source port. */
  31. #define NFC_IP_SRC_PT 0x0200
  32. /* Dest port. */
  33. #define NFC_IP_DST_PT 0x0400
  34. /* Something else about the proto */
  35. #define NFC_IP_PROTO_UNKNOWN 0x2000
  36. #endif /* ! __KERNEL__ */
  37. /* IP Hooks */
  38. /* After promisc drops, checksum checks. */
  39. #define NF_IP_PRE_ROUTING 0
  40. /* If the packet is destined for this box. */
  41. #define NF_IP_LOCAL_IN 1
  42. /* If the packet is destined for another interface. */
  43. #define NF_IP_FORWARD 2
  44. /* Packets coming from a local process. */
  45. #define NF_IP_LOCAL_OUT 3
  46. /* Packets about to hit the wire. */
  47. #define NF_IP_POST_ROUTING 4
  48. #define NF_IP_NUMHOOKS 5
  49. enum nf_ip_hook_priorities {
  50. NF_IP_PRI_FIRST = INT_MIN,
  51. NF_IP_PRI_CONNTRACK_DEFRAG = -400,
  52. NF_IP_PRI_RAW = -300,
  53. NF_IP_PRI_SELINUX_FIRST = -225,
  54. NF_IP_PRI_CONNTRACK = -200,
  55. NF_IP_PRI_BRIDGE_SABOTAGE_FORWARD = -175,
  56. NF_IP_PRI_MANGLE = -150,
  57. NF_IP_PRI_NAT_DST = -100,
  58. NF_IP_PRI_BRIDGE_SABOTAGE_LOCAL_OUT = -50,
  59. NF_IP_PRI_FILTER = 0,
  60. NF_IP_PRI_NAT_SRC = 100,
  61. NF_IP_PRI_SELINUX_LAST = 225,
  62. NF_IP_PRI_CONNTRACK_HELPER = INT_MAX - 2,
  63. NF_IP_PRI_NAT_SEQ_ADJUST = INT_MAX - 1,
  64. NF_IP_PRI_CONNTRACK_CONFIRM = INT_MAX,
  65. NF_IP_PRI_LAST = INT_MAX,
  66. };
  67. /* Arguments for setsockopt SOL_IP: */
  68. /* 2.0 firewalling went from 64 through 71 (and +256, +512, etc). */
  69. /* 2.2 firewalling (+ masq) went from 64 through 76 */
  70. /* 2.4 firewalling went 64 through 67. */
  71. #define SO_ORIGINAL_DST 80
  72. #ifdef __KERNEL__
  73. extern int ip_route_me_harder(struct sk_buff **pskb);
  74. #endif /*__KERNEL__*/
  75. #endif /*__LINUX_IP_NETFILTER_H*/