DragonFlyBSD Kernel Audit
← dashboard
DF-0552

VLAN tag match strips priority on input but stores full 16-bit tag: input/output asymmetry

Summary

vlan_input(:605-612): matches entry->ifv->ifv_tag==EVL_VLANOFTAG(m->ether_vlantag) which strips to 12-bit VID. But ifv->ifv_tag stored verbatim from user vlr.vlr_tag(:726) may carry priority/CFI bits. Tx path(:564) writes full 16-bit tag. VLAN configured with PCP bits(vlr_tag=0x2001) never matches on input(0x2001!=0x0001) yet emits priority-tagged on output. Operator footgun: VLAN deaf on input while transmitting with PCP. Fix: EVL_VLANOFTAG(entry->ifv->ifv_tag) on both sides.