blob: 42b889682721783b84d03797188bc3d9fc409fad [file] [log] [blame]
Kuo-lang Tseng93f65152008-06-09 15:55:45 -07001/*
2 * ebt_ip6
3 *
4 * Authors:
5 * Kuo-Lang Tseng <kuo-lang.tseng@intel.com>
6 * Manohar Castelino <manohar.r.castelino@intel.com>
7 *
8 * Jan 11, 2008
9 *
10 */
11
12#ifndef __LINUX_BRIDGE_EBT_IP6_H
13#define __LINUX_BRIDGE_EBT_IP6_H
14
Jan Engelhardt06988b02011-01-20 17:50:17 +010015#include <linux/types.h>
16
Kuo-lang Tseng93f65152008-06-09 15:55:45 -070017#define EBT_IP6_SOURCE 0x01
18#define EBT_IP6_DEST 0x02
19#define EBT_IP6_TCLASS 0x04
20#define EBT_IP6_PROTO 0x08
21#define EBT_IP6_SPORT 0x10
22#define EBT_IP6_DPORT 0x20
Florian Westphal6faee602010-12-20 15:57:47 +010023#define EBT_IP6_ICMP6 0x40
24
Kuo-lang Tseng93f65152008-06-09 15:55:45 -070025#define EBT_IP6_MASK (EBT_IP6_SOURCE | EBT_IP6_DEST | EBT_IP6_TCLASS |\
Florian Westphal6faee602010-12-20 15:57:47 +010026 EBT_IP6_PROTO | EBT_IP6_SPORT | EBT_IP6_DPORT | \
27 EBT_IP6_ICMP6)
Kuo-lang Tseng93f65152008-06-09 15:55:45 -070028#define EBT_IP6_MATCH "ip6"
29
30/* the same values are used for the invflags */
Eric Dumazetd94d9fe2009-11-04 09:50:58 -080031struct ebt_ip6_info {
Kuo-lang Tseng93f65152008-06-09 15:55:45 -070032 struct in6_addr saddr;
33 struct in6_addr daddr;
34 struct in6_addr smsk;
35 struct in6_addr dmsk;
Jan Engelhardt0260c1d2011-01-18 07:33:09 +010036 __u8 tclass;
37 __u8 protocol;
38 __u8 bitmask;
39 __u8 invflags;
Florian Westphal6faee602010-12-20 15:57:47 +010040 union {
Jan Engelhardt0260c1d2011-01-18 07:33:09 +010041 __u16 sport[2];
42 __u8 icmpv6_type[2];
Florian Westphal6faee602010-12-20 15:57:47 +010043 };
44 union {
Jan Engelhardt0260c1d2011-01-18 07:33:09 +010045 __u16 dport[2];
46 __u8 icmpv6_code[2];
Florian Westphal6faee602010-12-20 15:57:47 +010047 };
Kuo-lang Tseng93f65152008-06-09 15:55:45 -070048};
49
50#endif