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
219 * VLAN's TCI */ in vlan_dev_get_egress_qos_mask()
310 * eth_type_vlan - check for valid vlan ether type.
313 * Returns true if the ether type is a vlan ether type.
337 * __vlan_insert_inner_tag - inner VLAN tag inserting
339 * @vlan_proto: VLAN encapsulation protocol
340 * @vlan_tci: VLAN TCI to insert
341 * @mac_len: MAC header length including outer vlan headers
343 * Inserts the VLAN tag into @skb as part of the payload at offset mac_len
387 * __vlan_insert_tag - regular VLAN tag inserting
389 * @vlan_proto: VLAN encapsulation protocol
390 * @vlan_tci: VLAN TCI to insert
392 * Inserts the VLAN tag into @skb as part of the payload
404 * vlan_insert_inner_tag - inner VLAN tag inserting
406 * @vlan_proto: VLAN encapsulation protocol
407 * @vlan_tci: VLAN TCI to insert
408 * @mac_len: MAC header length including outer vlan headers
410 * Inserts the VLAN tag into @skb as part of the payload at offset mac_len
411 * Returns a VLAN tagged skb. This might change skb->head.
434 * vlan_insert_tag - regular VLAN tag inserting
436 * @vlan_proto: VLAN encapsulation protocol
437 * @vlan_tci: VLAN TCI to insert
439 * Inserts the VLAN tag into @skb as part of the payload
440 * Returns a VLAN tagged skb. This might change skb->head.
454 * vlan_insert_tag_set_proto - regular VLAN tag inserting
456 * @vlan_proto: VLAN encapsulation protocol
457 * @vlan_tci: VLAN TCI to insert
459 * Inserts the VLAN tag into @skb as part of the payload
460 * Returns a VLAN tagged skb. This might change skb->head.
476 * __vlan_hwaccel_clear_tag - clear hardware accelerated VLAN info
479 * Clears the VLAN information from @skb
487 * __vlan_hwaccel_copy_tag - copy hardware accelerated VLAN info from another skb
491 * Copies VLAN information from @src to @dst (for branchless code)
499 * __vlan_hwaccel_push_inside - pushes vlan tag to the payload
502 * Pushes the VLAN tag from @skb->vlan_tci inside to the payload.
517 * __vlan_hwaccel_put_tag - hardware accelerated VLAN inserting
519 * @vlan_proto: VLAN encapsulation protocol
520 * @vlan_tci: VLAN TCI to insert
522 * Puts the VLAN TCI in @skb->vlan_tci and lets the device do the rest
532 * __vlan_get_tag - get the VLAN ID that is part of the payload
536 * Returns error if the skb is not of VLAN type
550 * __vlan_hwaccel_get_tag - get the VLAN ID that is in @skb->cb[]
569 * vlan_get_tag - get the VLAN ID from the skb
573 * Returns error if the skb is not VLAN tagged
587 * @type: first vlan protocol
588 * @depth: buffer to store length of eth and vlan tags in bytes
591 * vlan encapsulated (normal or hardware accelerated) or not.
633 * vlan encapsulated (normal or hardware accelerated) or not.
657 /* A getter for the SKB protocol field which will handle VLAN tags consistently
658 * whether VLAN acceleration is enabled or not.
663 /* VLAN acceleration strips the VLAN header from the skb and in skb_protocol()
678 * Was a VLAN packet, grab the encapsulated protocol, which the layer in vlan_set_encap_proto()
706 * vlan_remove_tag - remove outer VLAN tag from payload
710 * Expects the skb to contain a VLAN tag in the payload, and to have skb->data
727 * skb_vlan_tagged - check if skb is vlan tagged.
743 * skb_vlan_tagged_multi - check if skb is vlan tagged with multiple headers.
746 * Returns true if the skb is tagged with multiple vlan headers, regardless
797 * compare_vlan_header - Compare two vlan headers
798 * @h1: Pointer to vlan header
799 * @h2: Pointer to vlan header
801 * Compare two vlan headers, returns 0 if equal.