diff options
author | Steven Whitehouse <swhiteho@redhat.com> | 2006-09-21 10:18:14 -0400 |
---|---|---|
committer | Steven Whitehouse <swhiteho@redhat.com> | 2006-09-21 10:18:14 -0400 |
commit | 91fa47964165a42401fbc1f41caa63ab78564305 (patch) | |
tree | 8f4ffdcbdedd845563630c3bcacd9407c75ccb52 /net/packet/af_packet.c | |
parent | 56965536b8056f57830219efbba4b85218d96d6c (diff) | |
parent | e478bec0ba0a83a48a0f6982934b6de079e7e6b3 (diff) |
Merge branch 'master' into gfs2
Diffstat (limited to 'net/packet/af_packet.c')
-rw-r--r-- | net/packet/af_packet.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c index f9cef367159..4172a523591 100644 --- a/net/packet/af_packet.c +++ b/net/packet/af_packet.c @@ -626,8 +626,6 @@ static int tpacket_rcv(struct sk_buff *skb, struct net_device *dev, struct packe if ((int)snaplen < 0) snaplen = 0; } - if (snaplen > skb->len-skb->data_len) - snaplen = skb->len-skb->data_len; spin_lock(&sk->sk_receive_queue.lock); h = (struct tpacket_hdr *)packet_lookup_frame(po, po->head); @@ -644,7 +642,7 @@ static int tpacket_rcv(struct sk_buff *skb, struct net_device *dev, struct packe status &= ~TP_STATUS_LOSING; spin_unlock(&sk->sk_receive_queue.lock); - memcpy((u8*)h + macoff, skb->data, snaplen); + skb_copy_bits(skb, 0, (u8*)h + macoff, snaplen); h->tp_len = skb->len; h->tp_snaplen = snaplen; |