Issue in __vlan_put_tag?

From: Justin Pettit <hidden>
Date: 2007-10-13 01:03:36

The function __vlan_put_tag modifies adds a VLAN tag to an existing  
Ethernet packet.  In the process, the front of the packet is extended  
by four bytes to accommodate the tag.  This function correctly  
adjusts the mac_header offset, but I think this line is problematic:

	skb->network_header -= VLAN_HLEN;

When access to the network header is needed, the value of skb- 
 >network_header is added to skb->head, which should not have changed  
during any of the previous modifications.  I believe the code as it  
exists now will cause the network header to appear to be four bytes  
earlier than it actually is.

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