1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2/* IPv6-specific defines for netfilter.
3 * (C)1998 Rusty Russell -- This code is GPL.
4 * (C)1999 David Jeffery
5 *   this header was blatantly ripped from netfilter_ipv4.h
6 *   it's amazing what adding a bunch of 6s can do =8^)
7 */
8#ifndef _UAPI__LINUX_IP6_NETFILTER_H
9#define _UAPI__LINUX_IP6_NETFILTER_H
10
11
12#include <linux/netfilter.h>
13
14/* only for userspace compatibility */
15#ifndef __KERNEL__
16
17#include <limits.h> /* for INT_MIN, INT_MAX */
18
19/* IP6 Hooks */
20/* After promisc drops, checksum checks. */
21#define NF_IP6_PRE_ROUTING	0
22/* If the packet is destined for this box. */
23#define NF_IP6_LOCAL_IN		1
24/* If the packet is destined for another interface. */
25#define NF_IP6_FORWARD		2
26/* Packets coming from a local process. */
27#define NF_IP6_LOCAL_OUT		3
28/* Packets about to hit the wire. */
29#define NF_IP6_POST_ROUTING	4
30#define NF_IP6_NUMHOOKS		5
31#endif /* ! __KERNEL__ */
32
33
34enum nf_ip6_hook_priorities {
35	NF_IP6_PRI_FIRST = INT_MIN,
36	NF_IP6_PRI_RAW_BEFORE_DEFRAG = -450,
37	NF_IP6_PRI_CONNTRACK_DEFRAG = -400,
38	NF_IP6_PRI_RAW = -300,
39	NF_IP6_PRI_SELINUX_FIRST = -225,
40	NF_IP6_PRI_CONNTRACK = -200,
41	NF_IP6_PRI_MANGLE = -150,
42	NF_IP6_PRI_NAT_DST = -100,
43	NF_IP6_PRI_FILTER = 0,
44	NF_IP6_PRI_SECURITY = 50,
45	NF_IP6_PRI_NAT_SRC = 100,
46	NF_IP6_PRI_SELINUX_LAST = 225,
47	NF_IP6_PRI_CONNTRACK_HELPER = 300,
48	NF_IP6_PRI_LAST = INT_MAX,
49};
50
51
52#endif /* _UAPI__LINUX_IP6_NETFILTER_H */
53