summaryrefslogtreecommitdiff
path: root/proto_vlan.h
diff options
context:
space:
mode:
Diffstat (limited to 'proto_vlan.h')
-rw-r--r--proto_vlan.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/proto_vlan.h b/proto_vlan.h
new file mode 100644
index 0000000..dc31cfa
--- /dev/null
+++ b/proto_vlan.h
@@ -0,0 +1,27 @@
+/*
+ * proto_vlan.h - VLAN proto helpers & declarations
+ * Subject to the GPL, version 2.
+ */
+
+#ifndef PROTO_VLAN_H
+#define PROTO_VLAN_H
+
+#include <stdbool.h>
+#include <inttypes.h>
+
+static inline uint16_t vlan_tci2prio(uint16_t tci)
+{
+ return (tci & 0xe000) >> 13;
+}
+
+static inline uint16_t vlan_tci2cfi(uint16_t tci)
+{
+ return (tci & 0x1000) >> 12;
+}
+
+static inline uint16_t vlan_tci2vid(uint16_t tci)
+{
+ return tci & 0x0fff;
+}
+
+#endif