GNU Linux-libre 4.9.317-gnu1
[releases.git] / include / uapi / linux / netfilter_bridge / ebt_arp.h
1 #ifndef __LINUX_BRIDGE_EBT_ARP_H
2 #define __LINUX_BRIDGE_EBT_ARP_H
3
4 #include <linux/types.h>
5 #include <linux/if_ether.h>
6
7 #define EBT_ARP_OPCODE 0x01
8 #define EBT_ARP_HTYPE 0x02
9 #define EBT_ARP_PTYPE 0x04
10 #define EBT_ARP_SRC_IP 0x08
11 #define EBT_ARP_DST_IP 0x10
12 #define EBT_ARP_SRC_MAC 0x20
13 #define EBT_ARP_DST_MAC 0x40
14 #define EBT_ARP_GRAT 0x80
15 #define EBT_ARP_MASK (EBT_ARP_OPCODE | EBT_ARP_HTYPE | EBT_ARP_PTYPE | \
16    EBT_ARP_SRC_IP | EBT_ARP_DST_IP | EBT_ARP_SRC_MAC | EBT_ARP_DST_MAC | \
17    EBT_ARP_GRAT)
18 #define EBT_ARP_MATCH "arp"
19
20 struct ebt_arp_info
21 {
22         __be16 htype;
23         __be16 ptype;
24         __be16 opcode;
25         __be32 saddr;
26         __be32 smsk;
27         __be32 daddr;
28         __be32 dmsk;
29         unsigned char smaddr[ETH_ALEN];
30         unsigned char smmsk[ETH_ALEN];
31         unsigned char dmaddr[ETH_ALEN];
32         unsigned char dmmsk[ETH_ALEN];
33         __u8  bitmask;
34         __u8  invflags;
35 };
36
37 #endif