Blame view

include/linux/netfilter_ipv4.h 2.3 KB
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1
2
3
4
5
6
  #ifndef __LINUX_IP_NETFILTER_H
  #define __LINUX_IP_NETFILTER_H
  
  /* IPv4-specific defines for netfilter. 
   * (C)1998 Rusty Russell -- This code is GPL.
   */
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
7
  #include <linux/netfilter.h>
6869c4d8e   Harald Welte   [NETFILTER]: redu...
8
9
  /* only for userspace compatibility */
  #ifndef __KERNEL__
598aaff2e   Ben Hutchings   headers, netfilte...
10
11
  
  #include <limits.h> /* for INT_MIN, INT_MAX */
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
  /* IP Cache bits. */
  /* Src IP address. */
  #define NFC_IP_SRC		0x0001
  /* Dest IP address. */
  #define NFC_IP_DST		0x0002
  /* Input device. */
  #define NFC_IP_IF_IN		0x0004
  /* Output device. */
  #define NFC_IP_IF_OUT		0x0008
  /* TOS. */
  #define NFC_IP_TOS		0x0010
  /* Protocol. */
  #define NFC_IP_PROTO		0x0020
  /* IP options. */
  #define NFC_IP_OPTIONS		0x0040
  /* Frag & flags. */
  #define NFC_IP_FRAG		0x0080
  
  /* Per-protocol information: only matters if proto match. */
  /* TCP flags. */
  #define NFC_IP_TCPFLAGS		0x0100
  /* Source port. */
  #define NFC_IP_SRC_PT		0x0200
  /* Dest port. */
  #define NFC_IP_DST_PT		0x0400
  /* Something else about the proto */
  #define NFC_IP_PROTO_UNKNOWN	0x2000
  
  /* IP Hooks */
  /* After promisc drops, checksum checks. */
  #define NF_IP_PRE_ROUTING	0
  /* If the packet is destined for this box. */
  #define NF_IP_LOCAL_IN		1
  /* If the packet is destined for another interface. */
  #define NF_IP_FORWARD		2
  /* Packets coming from a local process. */
  #define NF_IP_LOCAL_OUT		3
  /* Packets about to hit the wire. */
  #define NF_IP_POST_ROUTING	4
  #define NF_IP_NUMHOOKS		5
6e23ae2a4   Patrick McHardy   [NETFILTER]: Intr...
52
  #endif /* ! __KERNEL__ */
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
53
54
55
56
57
58
59
  
  enum nf_ip_hook_priorities {
  	NF_IP_PRI_FIRST = INT_MIN,
  	NF_IP_PRI_CONNTRACK_DEFRAG = -400,
  	NF_IP_PRI_RAW = -300,
  	NF_IP_PRI_SELINUX_FIRST = -225,
  	NF_IP_PRI_CONNTRACK = -200,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
60
61
  	NF_IP_PRI_MANGLE = -150,
  	NF_IP_PRI_NAT_DST = -100,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
62
  	NF_IP_PRI_FILTER = 0,
560ee653b   James Morris   netfilter: ip_tab...
63
  	NF_IP_PRI_SECURITY = 50,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
64
65
  	NF_IP_PRI_NAT_SRC = 100,
  	NF_IP_PRI_SELINUX_LAST = 225,
e281e3ac2   Patrick McHardy   [NETFILTER]: Fix ...
66
  	NF_IP_PRI_CONNTRACK_CONFIRM = INT_MAX,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
67
68
69
70
71
72
73
74
75
76
  	NF_IP_PRI_LAST = INT_MAX,
  };
  
  /* Arguments for setsockopt SOL_IP: */
  /* 2.0 firewalling went from 64 through 71 (and +256, +512, etc). */
  /* 2.2 firewalling (+ masq) went from 64 through 76 */
  /* 2.4 firewalling went 64 through 67. */
  #define SO_ORIGINAL_DST 80
  
  #ifdef __KERNEL__
3db05fea5   Herbert Xu   [NETFILTER]: Repl...
77
78
  extern int ip_route_me_harder(struct sk_buff *skb, unsigned addr_type);
  extern int ip_xfrm_me_harder(struct sk_buff *skb);
b51655b95   Al Viro   [NET]: Annotate _...
79
  extern __sum16 nf_ip_checksum(struct sk_buff *skb, unsigned int hook,
422c346fa   Patrick McHardy   [NETFILTER]: Add ...
80
  				   unsigned int dataoff, u_int8_t protocol);
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
81
82
83
  #endif /*__KERNEL__*/
  
  #endif /*__LINUX_IP_NETFILTER_H*/