aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/if_vlan.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/if_vlan.h')
-rw-r--r--include/linux/if_vlan.h51
1 files changed, 1 insertions, 50 deletions
diff --git a/include/linux/if_vlan.h b/include/linux/if_vlan.h
index c0ff748d0aa5..d06cc5c8f58c 100644
--- a/include/linux/if_vlan.h
+++ b/include/linux/if_vlan.h
@@ -9,15 +9,14 @@
9 * 2 of the License, or (at your option) any later version. 9 * 2 of the License, or (at your option) any later version.
10 * 10 *
11 */ 11 */
12
13#ifndef _LINUX_IF_VLAN_H_ 12#ifndef _LINUX_IF_VLAN_H_
14#define _LINUX_IF_VLAN_H_ 13#define _LINUX_IF_VLAN_H_
15 14
16#ifdef __KERNEL__
17#include <linux/netdevice.h> 15#include <linux/netdevice.h>
18#include <linux/etherdevice.h> 16#include <linux/etherdevice.h>
19#include <linux/rtnetlink.h> 17#include <linux/rtnetlink.h>
20#include <linux/bug.h> 18#include <linux/bug.h>
19#include <uapi/linux/if_vlan.h>
21 20
22#define VLAN_HLEN 4 /* The additional bytes required by VLAN 21#define VLAN_HLEN 4 /* The additional bytes required by VLAN
23 * (in addition to the Ethernet header) 22 * (in addition to the Ethernet header)
@@ -361,52 +360,4 @@ static inline void vlan_set_encap_proto(struct sk_buff *skb,
361 */ 360 */
362 skb->protocol = htons(ETH_P_802_2); 361 skb->protocol = htons(ETH_P_802_2);
363} 362}
364#endif /* __KERNEL__ */
365
366/* VLAN IOCTLs are found in sockios.h */
367
368/* Passed in vlan_ioctl_args structure to determine behaviour. */
369enum vlan_ioctl_cmds {
370 ADD_VLAN_CMD,
371 DEL_VLAN_CMD,
372 SET_VLAN_INGRESS_PRIORITY_CMD,
373 SET_VLAN_EGRESS_PRIORITY_CMD,
374 GET_VLAN_INGRESS_PRIORITY_CMD,
375 GET_VLAN_EGRESS_PRIORITY_CMD,
376 SET_VLAN_NAME_TYPE_CMD,
377 SET_VLAN_FLAG_CMD,
378 GET_VLAN_REALDEV_NAME_CMD, /* If this works, you know it's a VLAN device, btw */
379 GET_VLAN_VID_CMD /* Get the VID of this VLAN (specified by name) */
380};
381
382enum vlan_flags {
383 VLAN_FLAG_REORDER_HDR = 0x1,
384 VLAN_FLAG_GVRP = 0x2,
385 VLAN_FLAG_LOOSE_BINDING = 0x4,
386};
387
388enum vlan_name_types {
389 VLAN_NAME_TYPE_PLUS_VID, /* Name will look like: vlan0005 */
390 VLAN_NAME_TYPE_RAW_PLUS_VID, /* name will look like: eth1.0005 */
391 VLAN_NAME_TYPE_PLUS_VID_NO_PAD, /* Name will look like: vlan5 */
392 VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD, /* Name will look like: eth0.5 */
393 VLAN_NAME_TYPE_HIGHEST
394};
395
396struct vlan_ioctl_args {
397 int cmd; /* Should be one of the vlan_ioctl_cmds enum above. */
398 char device1[24];
399
400 union {
401 char device2[24];
402 int VID;
403 unsigned int skb_priority;
404 unsigned int name_type;
405 unsigned int bind_type;
406 unsigned int flag; /* Matches vlan_dev_priv flags */
407 } u;
408
409 short vlan_qos;
410};
411
412#endif /* !(_LINUX_IF_VLAN_H_) */ 363#endif /* !(_LINUX_IF_VLAN_H_) */