bridge: Simplify pvid checks.
Currently, if the pvid is not set, we return an illegal vlan value even though the pvid value is set to 0. Since pvid of 0 is currently invalid, just return 0 instead. This makes the current and future checks simpler. Signed-off-by: Vladislav Yasevich <vyasevic@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
96a20d9d7f
commit
3df6bf45ec
@@ -223,7 +223,7 @@ bool br_allowed_ingress(struct net_bridge *br, struct net_port_vlans *v,
|
||||
* See if pvid is set on this port. That tells us which
|
||||
* vlan untagged or priority-tagged traffic belongs to.
|
||||
*/
|
||||
if (pvid == VLAN_N_VID)
|
||||
if (!pvid)
|
||||
goto drop;
|
||||
|
||||
/* PVID is set on this port. Any untagged or priority-tagged
|
||||
@@ -292,7 +292,7 @@ bool br_should_learn(struct net_bridge_port *p, struct sk_buff *skb, u16 *vid)
|
||||
|
||||
if (!*vid) {
|
||||
*vid = br_get_pvid(v);
|
||||
if (*vid == VLAN_N_VID)
|
||||
if (!*vid)
|
||||
return false;
|
||||
|
||||
return true;
|
||||
|
Reference in New Issue
Block a user