Home | History | Annotate | Download | only in linux
      1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
      2 /* IPv4-specific defines for netfilter.
      3  * (C)1998 Rusty Russell -- This code is GPL.
      4  */
      5 #ifndef _UAPI__LINUX_IP_NETFILTER_H
      6 #define _UAPI__LINUX_IP_NETFILTER_H
      7 
      8 
      9 #include <linux/netfilter.h>
     10 
     11 /* only for userspace compatibility */
     12 #ifndef __KERNEL__
     13 
     14 #include <limits.h> /* for INT_MIN, INT_MAX */
     15 
     16 /* IP Hooks */
     17 /* After promisc drops, checksum checks. */
     18 #define NF_IP_PRE_ROUTING	0
     19 /* If the packet is destined for this box. */
     20 #define NF_IP_LOCAL_IN		1
     21 /* If the packet is destined for another interface. */
     22 #define NF_IP_FORWARD		2
     23 /* Packets coming from a local process. */
     24 #define NF_IP_LOCAL_OUT		3
     25 /* Packets about to hit the wire. */
     26 #define NF_IP_POST_ROUTING	4
     27 #define NF_IP_NUMHOOKS		5
     28 #endif /* ! __KERNEL__ */
     29 
     30 enum nf_ip_hook_priorities {
     31 	NF_IP_PRI_FIRST = INT_MIN,
     32 	NF_IP_PRI_RAW_BEFORE_DEFRAG = -450,
     33 	NF_IP_PRI_CONNTRACK_DEFRAG = -400,
     34 	NF_IP_PRI_RAW = -300,
     35 	NF_IP_PRI_SELINUX_FIRST = -225,
     36 	NF_IP_PRI_CONNTRACK = -200,
     37 	NF_IP_PRI_MANGLE = -150,
     38 	NF_IP_PRI_NAT_DST = -100,
     39 	NF_IP_PRI_FILTER = 0,
     40 	NF_IP_PRI_SECURITY = 50,
     41 	NF_IP_PRI_NAT_SRC = 100,
     42 	NF_IP_PRI_SELINUX_LAST = 225,
     43 	NF_IP_PRI_CONNTRACK_HELPER = 300,
     44 	NF_IP_PRI_CONNTRACK_CONFIRM = INT_MAX,
     45 	NF_IP_PRI_LAST = INT_MAX,
     46 };
     47 
     48 /* Arguments for setsockopt SOL_IP: */
     49 /* 2.0 firewalling went from 64 through 71 (and +256, +512, etc). */
     50 /* 2.2 firewalling (+ masq) went from 64 through 76 */
     51 /* 2.4 firewalling went 64 through 67. */
     52 #define SO_ORIGINAL_DST 80
     53 
     54 
     55 #endif /* _UAPI__LINUX_IP_NETFILTER_H */
     56