diff options
author | Patrick McHardy <kaber@trash.net> | 2013-04-18 22:04:29 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-04-19 14:45:27 -0400 |
commit | 1fd9b1fc310314911f66d2f14a8e4f0ef37bf47b (patch) | |
tree | 20422146c46fb38a5cdd0d14e671a0793c3389b4 /net/8021q/vlan_gvrp.c | |
parent | 80d5c3689b886308247da295a228a54df49a44f6 (diff) |
net: vlan: prepare for 802.1ad support
Make the encapsulation protocol value a property of VLAN devices and change
the device lookup functions to take the protocol value into account.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/8021q/vlan_gvrp.c')
-rw-r--r-- | net/8021q/vlan_gvrp.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/net/8021q/vlan_gvrp.c b/net/8021q/vlan_gvrp.c index 6f9755352760..66a80320b032 100644 --- a/net/8021q/vlan_gvrp.c +++ b/net/8021q/vlan_gvrp.c | |||
@@ -32,6 +32,8 @@ int vlan_gvrp_request_join(const struct net_device *dev) | |||
32 | const struct vlan_dev_priv *vlan = vlan_dev_priv(dev); | 32 | const struct vlan_dev_priv *vlan = vlan_dev_priv(dev); |
33 | __be16 vlan_id = htons(vlan->vlan_id); | 33 | __be16 vlan_id = htons(vlan->vlan_id); |
34 | 34 | ||
35 | if (vlan->vlan_proto != htons(ETH_P_8021Q)) | ||
36 | return 0; | ||
35 | return garp_request_join(vlan->real_dev, &vlan_gvrp_app, | 37 | return garp_request_join(vlan->real_dev, &vlan_gvrp_app, |
36 | &vlan_id, sizeof(vlan_id), GVRP_ATTR_VID); | 38 | &vlan_id, sizeof(vlan_id), GVRP_ATTR_VID); |
37 | } | 39 | } |
@@ -41,6 +43,8 @@ void vlan_gvrp_request_leave(const struct net_device *dev) | |||
41 | const struct vlan_dev_priv *vlan = vlan_dev_priv(dev); | 43 | const struct vlan_dev_priv *vlan = vlan_dev_priv(dev); |
42 | __be16 vlan_id = htons(vlan->vlan_id); | 44 | __be16 vlan_id = htons(vlan->vlan_id); |
43 | 45 | ||
46 | if (vlan->vlan_proto != htons(ETH_P_8021Q)) | ||
47 | return; | ||
44 | garp_request_leave(vlan->real_dev, &vlan_gvrp_app, | 48 | garp_request_leave(vlan->real_dev, &vlan_gvrp_app, |
45 | &vlan_id, sizeof(vlan_id), GVRP_ATTR_VID); | 49 | &vlan_id, sizeof(vlan_id), GVRP_ATTR_VID); |
46 | } | 50 | } |