Lines Matching full:vlan
3 * VLAN An implementation of 802.1Q VLAN tagging.
16 #define VLAN_HLEN 4 /* The additional bytes required by VLAN
28 #define VLAN_MAX_DEPTH 8 /* Max. number of nested VLAN tags parsed */
31 * struct vlan_hdr - vlan header
32 * @h_vlan_TCI: priority and VLAN ID
41 * struct vlan_ethhdr - vlan ethernet header (ethhdr + vlan_hdr)
45 * @h_vlan_TCI: priority and VLAN ID
76 #define VLAN_VID_MASK 0x0fff /* VLAN Identifier */
118 * struct vlan_pcpu_stats - VLAN percpu rx/tx stats
151 * struct vlan_priority_tci_mapping - vlan egress priority mappings
153 * @vlan_qos: vlan priority: (skb->priority << 13) & 0xE000
166 * struct vlan_dev_priv - VLAN private device data
171 * @vlan_proto: VLAN encapsulation protocol
172 * @vlan_id: VLAN identifier
220 * VLAN's TCI */ in vlan_dev_get_egress_qos_mask()
311 * eth_type_vlan - check for valid vlan ether type.
314 * Returns: true if the ether type is a vlan ether type.
338 * __vlan_insert_inner_tag - inner VLAN tag inserting
340 * @vlan_proto: VLAN encapsulation protocol
341 * @vlan_tci: VLAN TCI to insert
342 * @mac_len: MAC header length including outer vlan headers
344 * Inserts the VLAN tag into @skb as part of the payload at offset mac_len
388 * __vlan_insert_tag - regular VLAN tag inserting
390 * @vlan_proto: VLAN encapsulation protocol
391 * @vlan_tci: VLAN TCI to insert
393 * Inserts the VLAN tag into @skb as part of the payload
405 * vlan_insert_inner_tag - inner VLAN tag inserting
407 * @vlan_proto: VLAN encapsulation protocol
408 * @vlan_tci: VLAN TCI to insert
409 * @mac_len: MAC header length including outer vlan headers
411 * Inserts the VLAN tag into @skb as part of the payload at offset mac_len
412 * Returns a VLAN tagged skb. This might change skb->head.
437 * vlan_insert_tag - regular VLAN tag inserting
439 * @vlan_proto: VLAN encapsulation protocol
440 * @vlan_tci: VLAN TCI to insert
442 * Inserts the VLAN tag into @skb as part of the payload
443 * Returns a VLAN tagged skb. This might change skb->head.
459 * vlan_insert_tag_set_proto - regular VLAN tag inserting
461 * @vlan_proto: VLAN encapsulation protocol
462 * @vlan_tci: VLAN TCI to insert
464 * Inserts the VLAN tag into @skb as part of the payload
465 * Returns a VLAN tagged skb. This might change skb->head.
483 * __vlan_hwaccel_clear_tag - clear hardware accelerated VLAN info
486 * Clears the VLAN information from @skb
494 * __vlan_hwaccel_copy_tag - copy hardware accelerated VLAN info from another skb
498 * Copies VLAN information from @src to @dst (for branchless code)
506 * __vlan_hwaccel_push_inside - pushes vlan tag to the payload
509 * Pushes the VLAN tag from @skb->vlan_tci inside to the payload.
524 * __vlan_hwaccel_put_tag - hardware accelerated VLAN inserting
526 * @vlan_proto: VLAN encapsulation protocol
527 * @vlan_tci: VLAN TCI to insert
529 * Puts the VLAN TCI in @skb->vlan_tci and lets the device do the rest
539 * __vlan_get_tag - get the VLAN ID that is part of the payload
543 * Returns: error if the skb is not of VLAN type
557 * __vlan_hwaccel_get_tag - get the VLAN ID that is in @skb->cb[]
576 * vlan_get_tag - get the VLAN ID from the skb
580 * Returns: error if the skb is not VLAN tagged
594 * @type: first vlan protocol
596 * @depth: buffer to store length of eth and vlan tags in bytes
599 * vlan encapsulated (normal or hardware accelerated) or not.
650 * vlan encapsulated (normal or hardware accelerated) or not.
674 /* A getter for the SKB protocol field which will handle VLAN tags consistently
675 * whether VLAN acceleration is enabled or not.
680 /* VLAN acceleration strips the VLAN header from the skb and in skb_protocol()
695 * Was a VLAN packet, grab the encapsulated protocol, which the layer in vlan_set_encap_proto()
723 * vlan_remove_tag - remove outer VLAN tag from payload
727 * Expects the skb to contain a VLAN tag in the payload, and to have skb->data
744 * skb_vlan_tagged - check if skb is vlan tagged.
760 * skb_vlan_tagged_multi - check if skb is vlan tagged with multiple headers.
763 * Returns: true if the skb is tagged with multiple vlan headers, regardless
814 * compare_vlan_header - Compare two vlan headers
815 * @h1: Pointer to vlan header
816 * @h2: Pointer to vlan header
818 * Compare two vlan headers.