1.1.5
by Alexander Wirt
Import upstream version 20071016 |
1 |
/*
|
2 |
* VLAN An implementation of 802.1Q VLAN tagging.
|
|
3 |
*
|
|
4 |
* Authors: Ben Greear <greearb@candelatech.com>
|
|
5 |
*
|
|
6 |
* This program is free software; you can redistribute it and/or
|
|
7 |
* modify it under the terms of the GNU General Public License
|
|
8 |
* as published by the Free Software Foundation; either version
|
|
9 |
* 2 of the License, or (at your option) any later version.
|
|
10 |
*
|
|
11 |
*/
|
|
12 |
||
13 |
#ifndef _LINUX_IF_VLAN_H_
|
|
14 |
#define _LINUX_IF_VLAN_H_
|
|
15 |
||
16 |
||
17 |
/* VLAN IOCTLs are found in sockios.h */
|
|
18 |
||
19 |
/* Passed in vlan_ioctl_args structure to determine behaviour. */
|
|
20 |
enum vlan_ioctl_cmds { |
|
21 |
ADD_VLAN_CMD, |
|
22 |
DEL_VLAN_CMD, |
|
23 |
SET_VLAN_INGRESS_PRIORITY_CMD, |
|
24 |
SET_VLAN_EGRESS_PRIORITY_CMD, |
|
25 |
GET_VLAN_INGRESS_PRIORITY_CMD, |
|
26 |
GET_VLAN_EGRESS_PRIORITY_CMD, |
|
27 |
SET_VLAN_NAME_TYPE_CMD, |
|
28 |
SET_VLAN_FLAG_CMD, |
|
29 |
GET_VLAN_REALDEV_NAME_CMD, /* If this works, you know it's a VLAN device, btw */ |
|
30 |
GET_VLAN_VID_CMD /* Get the VID of this VLAN (specified by name) */ |
|
31 |
};
|
|
32 |
||
33 |
enum vlan_flags { |
|
34 |
VLAN_FLAG_REORDER_HDR = 0x1, |
|
1.2.2
by Andreas Henriksson
Import upstream version 20090115 |
35 |
VLAN_FLAG_GVRP = 0x2, |
1.2.5
by Andreas Henriksson
Import upstream version 20100224 |
36 |
VLAN_FLAG_LOOSE_BINDING = 0x4, |
1.1.5
by Alexander Wirt
Import upstream version 20071016 |
37 |
};
|
38 |
||
39 |
enum vlan_name_types { |
|
40 |
VLAN_NAME_TYPE_PLUS_VID, /* Name will look like: vlan0005 */ |
|
41 |
VLAN_NAME_TYPE_RAW_PLUS_VID, /* name will look like: eth1.0005 */ |
|
42 |
VLAN_NAME_TYPE_PLUS_VID_NO_PAD, /* Name will look like: vlan5 */ |
|
43 |
VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD, /* Name will look like: eth0.5 */ |
|
44 |
VLAN_NAME_TYPE_HIGHEST
|
|
45 |
};
|
|
46 |
||
47 |
struct vlan_ioctl_args { |
|
48 |
int cmd; /* Should be one of the vlan_ioctl_cmds enum above. */ |
|
49 |
char device1[24]; |
|
50 |
||
51 |
union { |
|
52 |
char device2[24]; |
|
53 |
int VID; |
|
54 |
unsigned int skb_priority; |
|
55 |
unsigned int name_type; |
|
56 |
unsigned int bind_type; |
|
1.2.12
by Andreas Henriksson
Import upstream version 20120319 |
57 |
unsigned int flag; /* Matches vlan_dev_priv flags */ |
1.1.5
by Alexander Wirt
Import upstream version 20071016 |
58 |
} u; |
59 |
||
60 |
short vlan_qos; |
|
61 |
};
|
|
62 |
||
63 |
#endif /* !(_LINUX_IF_VLAN_H_) */ |