1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2/*
3 * ebt_ip6
4 *
5 * Authors:
6 * Kuo-Lang Tseng <kuo-lang.tseng@intel.com>
7 * Manohar Castelino <manohar.r.castelino@intel.com>
8 *
9 * Jan 11, 2008
10 *
11 */
12
13#ifndef __LINUX_BRIDGE_EBT_IP6_H
14#define __LINUX_BRIDGE_EBT_IP6_H
15
16#include <linux/types.h>
17#include <linux/in6.h>
18
19#define EBT_IP6_SOURCE 0x01
20#define EBT_IP6_DEST 0x02
21#define EBT_IP6_TCLASS 0x04
22#define EBT_IP6_PROTO 0x08
23#define EBT_IP6_SPORT 0x10
24#define EBT_IP6_DPORT 0x20
25#define EBT_IP6_ICMP6 0x40
26
27#define EBT_IP6_MASK (EBT_IP6_SOURCE | EBT_IP6_DEST | EBT_IP6_TCLASS |\
28 EBT_IP6_PROTO | EBT_IP6_SPORT | EBT_IP6_DPORT | \
29 EBT_IP6_ICMP6)
30#define EBT_IP6_MATCH "ip6"
31
32/* the same values are used for the invflags */
33struct ebt_ip6_info {
34 struct in6_addr saddr;
35 struct in6_addr daddr;
36 struct in6_addr smsk;
37 struct in6_addr dmsk;
38 __u8 tclass;
39 __u8 protocol;
40 __u8 bitmask;
41 __u8 invflags;
42 union {
43 __u16 sport[2];
44 __u8 icmpv6_type[2];
45 };
46 union {
47 __u16 dport[2];
48 __u8 icmpv6_code[2];
49 };
50};
51
52#endif
53

source code of linux/include/uapi/linux/netfilter_bridge/ebt_ip6.h