vlans are a standard part of ethernet now, it makes sense to me to
keep all the protocol level stuff in a single place.

ok?

Index: net/if_vlan_var.h
===================================================================
RCS file: /cvs/src/sys/net/if_vlan_var.h,v
retrieving revision 1.32
diff -u -p -r1.32 if_vlan_var.h
--- net/if_vlan_var.h   3 Mar 2016 09:27:51 -0000       1.32
+++ net/if_vlan_var.h   13 Mar 2016 07:18:16 -0000
@@ -34,21 +34,6 @@
 #ifndef _NET_IF_VLAN_VAR_H_
 #define _NET_IF_VLAN_VAR_H_
 
-struct ether_vlan_header {
-       u_char  evl_dhost[ETHER_ADDR_LEN];
-       u_char  evl_shost[ETHER_ADDR_LEN];
-       u_int16_t evl_encap_proto;
-       u_int16_t evl_tag;
-       u_int16_t evl_proto;
-};
-
-#define        EVL_VLID_MASK   0x0FFF
-#define        EVL_VLANOFTAG(tag) ((tag) & EVL_VLID_MASK)
-#define        EVL_PRIOFTAG(tag) (((tag) >> EVL_PRIO_BITS) & 7)
-#define        EVL_ENCAPLEN    4       /* length in octets of encapsulation */
-#define        EVL_PRIO_MAX    7
-#define        EVL_PRIO_BITS   13
-
 /* sysctl(3) tags, for compatibility purposes */
 #define        VLANCTL_PROTO   1
 #define        VLANCTL_MAX     2
Index: netinet/if_ether.h
===================================================================
RCS file: /cvs/src/sys/netinet/if_ether.h,v
retrieving revision 1.67
diff -u -p -r1.67 if_ether.h
--- netinet/if_ether.h  1 Mar 2016 01:48:14 -0000       1.67
+++ netinet/if_ether.h  13 Mar 2016 07:18:16 -0000
@@ -75,6 +75,27 @@ struct       ether_header {
        u_int16_t ether_type;
 };
 
+/*
+ * VLAN headers.
+ */
+
+struct  ether_vlan_header {
+        u_char  evl_dhost[ETHER_ADDR_LEN];
+        u_char  evl_shost[ETHER_ADDR_LEN];
+        u_int16_t evl_encap_proto;
+        u_int16_t evl_tag;
+        u_int16_t evl_proto;
+};
+
+#define EVL_VLID_MASK   0x0FFF
+#define EVL_VLANOFTAG(tag) ((tag) & EVL_VLID_MASK)
+
+#define EVL_PRIO_MAX    7
+#define EVL_PRIO_BITS   13
+#define EVL_PRIOFTAG(tag) (((tag) >> EVL_PRIO_BITS) & 7)
+
+#define EVL_ENCAPLEN    4       /* length in octets of encapsulation */
+
 #include <net/ethertypes.h>
 
 #define        ETHER_IS_MULTICAST(addr) (*(addr) & 0x01) /* is address 
mcast/bcast? */

Reply via email to