diff options
Diffstat (limited to 'net/netrom/nr_in.c')
-rw-r--r-- | net/netrom/nr_in.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/netrom/nr_in.c b/net/netrom/nr_in.c index 5560acbaaa95..68176483617f 100644 --- a/net/netrom/nr_in.c +++ b/net/netrom/nr_in.c | |||
@@ -51,10 +51,12 @@ static int nr_queue_rx_frame(struct sock *sk, struct sk_buff *skb, int more) | |||
51 | if ((skbn = alloc_skb(nr->fraglen, GFP_ATOMIC)) == NULL) | 51 | if ((skbn = alloc_skb(nr->fraglen, GFP_ATOMIC)) == NULL) |
52 | return 1; | 52 | return 1; |
53 | 53 | ||
54 | skbn->h.raw = skbn->data; | 54 | skb_reset_transport_header(skbn); |
55 | 55 | ||
56 | while ((skbo = skb_dequeue(&nr->frag_queue)) != NULL) { | 56 | while ((skbo = skb_dequeue(&nr->frag_queue)) != NULL) { |
57 | memcpy(skb_put(skbn, skbo->len), skbo->data, skbo->len); | 57 | skb_copy_from_linear_data(skbo, |
58 | skb_put(skbn, skbo->len), | ||
59 | skbo->len); | ||
58 | kfree_skb(skbo); | 60 | kfree_skb(skbo); |
59 | } | 61 | } |
60 | 62 | ||