summaryrefslogtreecommitdiffstats
path: root/userspace/ebtables2/extensions/ebt_vlan.c
diff options
context:
space:
mode:
authorfnm3 <fnm3>2002-11-09 13:27:31 +0000
committerfnm3 <fnm3>2002-11-09 13:27:31 +0000
commit06e2f8bbf2bf12fdc124eeee01103798d1a30247 (patch)
tree3c4ff5786a73de87fbc60ad50a00d255f4dc542d /userspace/ebtables2/extensions/ebt_vlan.c
parent573b49a6eed21b01aba6987f83b6b2d4dd864a5f (diff)
Add check for vlan-encap=802.1q
Diffstat (limited to 'userspace/ebtables2/extensions/ebt_vlan.c')
-rw-r--r--userspace/ebtables2/extensions/ebt_vlan.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/userspace/ebtables2/extensions/ebt_vlan.c b/userspace/ebtables2/extensions/ebt_vlan.c
index 382961f..297b61b 100644
--- a/userspace/ebtables2/extensions/ebt_vlan.c
+++ b/userspace/ebtables2/extensions/ebt_vlan.c
@@ -228,6 +228,16 @@ final_check (const struct ebt_u_entry *entry,
print_error
("For use 802.1Q extension the protocol must be specified as 802_1Q");
/*
+ * Check if specified vlan-encap=0x8100 (802.1Q Frame)
+ * when vlan-encap specified.
+ */
+ if (GET_BITMASK (EBT_VLAN_ENCAP)) {
+ if (vlaninfo->encap==htons(0x8100))
+ print_error
+ ("Encapsulated frame type can not be 802.1Q (0x8100)");
+ }
+
+ /*
* Check if specified vlan-id=0 (priority-tagged frame condition)
* when vlan-prio was specified.
*/