X-Git-Url: http://git.agner.ch/gitweb/?a=blobdiff_plain;f=net%2F802%2Fpsnap.c;h=04ee43e7538f63af49529b31299747e7dac63f47;hb=f7c2778151f32581ea9ec567d01d5d85209fcfe6;hp=34e42968b477d9291a1671dfa32a43af77b7a74c;hpb=c5111f504d2a9b0d258d7c4752b4093523315989;p=linux-drm-fsl-dcu.git diff --git a/net/802/psnap.c b/net/802/psnap.c index 34e42968b477..04ee43e7538f 100644 --- a/net/802/psnap.c +++ b/net/802/psnap.c @@ -56,13 +56,11 @@ static int snap_rcv(struct sk_buff *skb, struct net_device *dev, }; rcu_read_lock(); - proto = find_snap_client(skb->h.raw); + proto = find_snap_client(skb_transport_header(skb)); if (proto) { /* Pass the frame on. */ - u8 *hdr = skb->data; - skb->h.raw += 5; - skb_pull(skb, 5); - skb_postpull_rcsum(skb, hdr, 5); + skb->transport_header += 5; + skb_pull_rcsum(skb, 5); rc = proto->rcvfunc(skb, dev, &snap_packet_type, orig_dev); } else { skb->sk = NULL; @@ -119,7 +117,7 @@ module_exit(snap_exit); */ struct datalink_proto *register_snap_client(unsigned char *desc, int (*rcvfunc)(struct sk_buff *, - struct net_device *, + struct net_device *, struct packet_type *, struct net_device *)) {