Lines Matching refs:vlan
8 * VLAN Home Page: http://www.candelatech.com/~greear/vlan.html
36 #include "vlan.h"
80 struct vlan_dev_priv *vlan)
82 if (!(vlan->flags & VLAN_FLAG_BRIDGE_BINDING))
88 struct vlan_dev_priv *vlan = vlan_dev_priv(dev);
89 struct net_device *real_dev = vlan->real_dev;
92 u16 vlan_id = vlan->vlan_id;
103 if (vlan->flags & VLAN_FLAG_MVRP)
105 if (vlan->flags & VLAN_FLAG_GVRP)
108 vlan_group_set_device(grp, vlan->vlan_proto, vlan_id, NULL);
122 vlan_vid_del(real_dev, vlan->vlan_proto, vlan_id);
147 struct vlan_dev_priv *vlan = vlan_dev_priv(dev);
148 struct net_device *real_dev = vlan->real_dev;
149 u16 vlan_id = vlan->vlan_id;
154 err = vlan_vid_add(real_dev, vlan->vlan_proto, vlan_id);
172 err = vlan_group_prealloc_vid(grp, vlan->vlan_proto, vlan_id);
184 vlan_stacked_transfer_operstate(real_dev, dev, vlan);
190 vlan_group_set_device(grp, vlan->vlan_proto, vlan_id, dev);
204 vlan_vid_del(real_dev, vlan->vlan_proto, vlan_id);
214 struct vlan_dev_priv *vlan;
235 /* Put our vlan.VID in the name.
238 snprintf(name, IFNAMSIZ, "vlan%i", vlan_id);
241 /* Put our vlan.VID in the name.
247 /* Put our vlan.VID in the name.
251 snprintf(name, IFNAMSIZ, "vlan%.4i", vlan_id);
266 vlan = vlan_dev_priv(new_dev);
267 vlan->vlan_proto = htons(ETH_P_8021Q);
268 vlan->vlan_id = vlan_id;
269 vlan->real_dev = real_dev;
270 vlan->dent = NULL;
271 vlan->flags = VLAN_FLAG_REORDER_HDR;
288 struct vlan_dev_priv *vlan = vlan_dev_priv(vlandev);
291 if (ether_addr_equal(vlan->real_dev_addr, dev->dev_addr))
294 /* vlan continues to inherit address of lower device */
298 /* vlan address was different from the old address and is equal to
300 if (!ether_addr_equal(vlandev->dev_addr, vlan->real_dev_addr) &&
304 /* vlan address was equal to the old address and is different from
306 if (ether_addr_equal(vlandev->dev_addr, vlan->real_dev_addr) &&
311 ether_addr_copy(vlan->real_dev_addr, dev->dev_addr);
317 struct vlan_dev_priv *vlan = vlan_dev_priv(vlandev);
322 if (vlan_hw_offload_capable(dev->features, vlan->vlan_proto))
332 vlandev->priv_flags |= (vlan->real_dev->priv_flags & IFF_XMIT_DST_RELEASE);
333 vlandev->hw_enc_features = vlan_tnl_features(vlan->real_dev);
367 struct vlan_dev_priv *vlan;
400 /* Propagate real device state to vlan devices */
442 vlan = vlan_dev_priv(vlandev);
443 if (!(vlan->flags & VLAN_FLAG_LOOSE_BINDING))
464 vlan = vlan_dev_priv(vlandev);
465 if (!(vlan->flags & VLAN_FLAG_LOOSE_BINDING))
468 vlan_stacked_transfer_operstate(dev, vlandev, vlan);
499 /* Propagate to vlan devices */