1
2 #ifndef _UAPI__LINUX_BRIDGE_EBT_802_3_H
3 #define _UAPI__LINUX_BRIDGE_EBT_802_3_H
4
5 #include <linux/types.h>
6 #include <linux/if_ether.h>
7
8 #define EBT_802_3_SAP 0x01
9 #define EBT_802_3_TYPE 0x02
10
11 #define EBT_802_3_MATCH "802_3"
12
13
14
15
16
17 #define CHECK_TYPE 0xaa
18
19
20
21
22
23
24
25 #define IS_UI 0x03
26
27 #define EBT_802_3_MASK (EBT_802_3_SAP | EBT_802_3_TYPE | EBT_802_3)
28
29
30 struct hdr_ui {
31 __u8 dsap;
32 __u8 ssap;
33 __u8 ctrl;
34 __u8 orig[3];
35 __be16 type;
36 };
37
38 struct hdr_ni {
39 __u8 dsap;
40 __u8 ssap;
41 __be16 ctrl;
42 __u8 orig[3];
43 __be16 type;
44 };
45
46 struct ebt_802_3_hdr {
47 __u8 daddr[ETH_ALEN];
48 __u8 saddr[ETH_ALEN];
49 __be16 len;
50 union {
51 struct hdr_ui ui;
52 struct hdr_ni ni;
53 } llc;
54 };
55
56
57 struct ebt_802_3_info {
58 __u8 sap;
59 __be16 type;
60 __u8 bitmask;
61 __u8 invflags;
62 };
63
64 #endif