STRUCT VLAN_ETHHDR(9)
β¨ struct vlan_ethhdr(9) β¨
okay bestie, so we're in the Kernel API Manual today and the star of the show is struct vlan_ethhdr β literally the VLAN ethernet header, which is just an ethhdr + a vlan_hdr sharing one iconic little home together π
πΈ NAME πΈ
struct vlan_ethhdr β the vlan ethernet header (ethhdr + vlan_hdr), no cap π«Ά
π SYNOPSIS π
struct vlan_ethhdr {
struct {
unsigned char h_dest[ETH_ALEN];
unsigned char h_source[ETH_ALEN];
};
__be16 h_vlan_proto;
__be16 h_vlan_TCI;
__be16 h_vlan_encapsulated_proto;
};
likeβ¦ look at her. she's structured. she's nested. she's main character energy β¨
π¦ Members π¦
{unnamed_struct}β anonymous π (yes that's the whole description, she's mysterious like that, iykyk)h_destβ destination ethernet address π―h_sourceβ source ethernet address π«h_vlan_protoβ ethernet protocol π₯h_vlan_TCIβ priority and VLAN ID πh_vlan_encapsulated_protoβ packet type ID or len π
π SEE ALSO π
Kernel file ./include/linux/if_vlan.h β and the whole squad, fr fr:
struct vlan_pcpu_stats(9)struct vlan_priority_tci_mapping(9)struct vlan_dev_priv(9)eth_type_vlan(9)__vlan_insert_inner_tag(9)__vlan_insert_tag(9)vlan_insert_inner_tag(9)vlan_insert_tag(9)vlan_insert_tag_set_proto(9)__vlan_hwaccel_clear_tag(9)__vlan_hwaccel_copy_tag(9)__vlan_hwaccel_put_tag(9)__vlan_get_tag(9)__vlan_hwaccel_get_tag(9)vlan_get_tag(9)vlan_get_protocol_offset_inline(9)vlan_get_protocol(9)vlan_remove_tag(9)skb_vlan_tagged(9)skb_vlan_tagged_multi(9)vlan_features_check(9)compare_vlan_header(9)
like, that's a whole group chat of vlan functions and this struct is the one holding the aux cord π
and that's the tea! β this delight lives in ./include/linux, dated October 2026, and it's the struct vlan_ethhdr(9) page β go forth and tag some packets, bestie π§π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms