GUI: Fix Tomato RAF theme for all builds. Compilation typo.
[tomato.git] / release / src-rt-6.x.4708 / linux / linux-2.6.36 / include / linux / netfilter_bridge / ebt_802_3.h
blobc73ef0b18bdc4b8296746369437b43f712370a25
1 #ifndef __LINUX_BRIDGE_EBT_802_3_H
2 #define __LINUX_BRIDGE_EBT_802_3_H
4 #define EBT_802_3_SAP 0x01
5 #define EBT_802_3_TYPE 0x02
7 #define EBT_802_3_MATCH "802_3"
9 /*
10 * If frame has DSAP/SSAP value 0xaa you must check the SNAP type
11 * to discover what kind of packet we're carrying.
13 #define CHECK_TYPE 0xaa
16 * Control field may be one or two bytes. If the first byte has
17 * the value 0x03 then the entire length is one byte, otherwise it is two.
18 * One byte controls are used in Unnumbered Information frames.
19 * Two byte controls are used in Numbered Information frames.
21 #define IS_UI 0x03
23 #define EBT_802_3_MASK (EBT_802_3_SAP | EBT_802_3_TYPE | EBT_802_3)
25 /* ui has one byte ctrl, ni has two */
26 struct hdr_ui {
27 uint8_t dsap;
28 uint8_t ssap;
29 uint8_t ctrl;
30 uint8_t orig[3];
31 __be16 type;
34 struct hdr_ni {
35 uint8_t dsap;
36 uint8_t ssap;
37 __be16 ctrl;
38 uint8_t orig[3];
39 __be16 type;
42 struct ebt_802_3_hdr {
43 uint8_t daddr[6];
44 uint8_t saddr[6];
45 __be16 len;
46 union {
47 struct hdr_ui ui;
48 struct hdr_ni ni;
49 } llc;
52 #ifdef __KERNEL__
53 #include <linux/skbuff.h>
55 static inline struct ebt_802_3_hdr *ebt_802_3_hdr(const struct sk_buff *skb)
57 return (struct ebt_802_3_hdr *)skb_mac_header(skb);
59 #endif
61 struct ebt_802_3_info {
62 uint8_t sap;
63 __be16 type;
64 uint8_t bitmask;
65 uint8_t invflags;
68 #endif