@@ -627,6 +627,22 @@ static inline netdev_features_t vlan_features_check(const struct sk_buff *skb,
return features;
}
+/**
+ * eth_type_vlan - check for valid vlan ether type.
+ * @ethertype: ether type to check
+ *
+ * Returns true if the ether type is a vlan ether type.
+ */
+static inline bool eth_type_vlan(__be16 ethertype)
+{
+ switch (ethertype) {
+ case htons(ETH_P_8021Q):
+ case htons(ETH_P_8021AD):
+ return true;
+ default:
+ return false;
+ }
+}
/**
* compare_vlan_header - Compare two vlan headers
This is to simplify using double tagged vlans. This function allows all valid vlan ethertypes to be checked in a single function call. Signed-off-by: Thomas F Herbert <thomasfherbert@gmail.com> --- include/linux/if_vlan.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+)