Thread (4 messages) 4 messages, 2 authors, 2018-10-02

Re: vlan missing with AF_PACKET and auxdata

From: Michael Walle <hidden>
Date: 2018-09-24 20:27:28

Am 2018-09-24 14:22, schrieb Jan Grashöfer:
Hi Michael,

On 24/09/2018 14:01, Michael Walle wrote:
quoted
I'm using the AF_PACKET socket with setsockopt(PACKET_AUXDATA) to get 
the incoming VLAN tag. Correct me if I'm wrong, but as far as I see 
the first VLAN tag is always stripped - either in hardware or in 
net/core/dev.c in __netif_receive_skb_core() - and stored in 
skb->vlan_tci. Therefore, it won't be in the packet data anymore.
although the documentation says "SOCK_RAW packets are passed to and
from the device driver without any changes in the packet data." [1]
that's correct and was discussed here:
https://www.spinics.net/lists/netdev/msg440313.html

Result of the discussion: Won't fix, too complicated.
Hi Jan,

thanks for the pointer. I'm fine with this decision, because the VLAN 
tag should be available through metadata. And this was my original 
question, because the metadata is only available in case of proto == 
ETH_P_ALL, but not for proto != ETH_P_ALL because of the commit in 
question.

-michael
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help