]> err.no Git - linux-2.6/commit
[SK_BUFF]: More skb_reset_transport_header conversions
authorArnaldo Carvalho de Melo <acme@redhat.com>
Tue, 13 Mar 2007 20:10:43 +0000 (17:10 -0300)
committerDavid S. Miller <davem@sunset.davemloft.net>
Thu, 26 Apr 2007 05:25:29 +0000 (22:25 -0700)
commitbd82393ca23324d103b21aae43160728da6e6c9c
treec3795389947032eb8d79c269031232aa6293960e
parent39b89160df691045d1449cbaef43c02084c7543a
[SK_BUFF]: More skb_reset_transport_header conversions

These are a bit more subtle, they are of this type:

-       skb->h.raw = payload;
        __skb_pull(skb, payload - skb->data);
+       skb_reset_transport_header(skb);

__skb_pull results in:

skb->data = skb->data + payload - skb->data;
skb->data = payload;

So after __skb_pull we have skb->data pointing to payload and we can
just call skb_reset_transport_header(skb), that will do:

skb->h.raw = payload;

The others are similar, allowing us to get rid of some more cases where a
pointer was being attributed to the layer headers.

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/ip_sockglue.c
net/ipv6/datagram.c