diff options
-rw-r--r-- | net/ax25/ax25_in.c | 4 | ||||
-rw-r--r-- | net/decnet/netfilter/dn_rtmsg.c | 2 | ||||
-rw-r--r-- | net/ipv4/tcp_output.c | 4 | ||||
-rw-r--r-- | net/netrom/nr_in.c | 4 | ||||
-rw-r--r-- | net/x25/x25_in.c | 7 |
5 files changed, 15 insertions, 6 deletions
diff --git a/net/ax25/ax25_in.c b/net/ax25/ax25_in.c index 31c59387a6fc..0ddaff0df217 100644 --- a/net/ax25/ax25_in.c +++ b/net/ax25/ax25_in.c | |||
@@ -66,7 +66,9 @@ static int ax25_rx_fragment(ax25_cb *ax25, struct sk_buff *skb) | |||
66 | 66 | ||
67 | /* Copy data from the fragments */ | 67 | /* Copy data from the fragments */ |
68 | while ((skbo = skb_dequeue(&ax25->frag_queue)) != NULL) { | 68 | while ((skbo = skb_dequeue(&ax25->frag_queue)) != NULL) { |
69 | memcpy(skb_put(skbn, skbo->len), skbo->data, skbo->len); | 69 | skb_copy_from_linear_data(skbo, |
70 | skb_put(skbn, skbo->len), | ||
71 | skbo->len); | ||
70 | kfree_skb(skbo); | 72 | kfree_skb(skbo); |
71 | } | 73 | } |
72 | 74 | ||
diff --git a/net/decnet/netfilter/dn_rtmsg.c b/net/decnet/netfilter/dn_rtmsg.c index 9e8256a2361e..2ee47bab6938 100644 --- a/net/decnet/netfilter/dn_rtmsg.c +++ b/net/decnet/netfilter/dn_rtmsg.c | |||
@@ -48,7 +48,7 @@ static struct sk_buff *dnrmg_build_message(struct sk_buff *rt_skb, int *errp) | |||
48 | rtm = (struct nf_dn_rtmsg *)NLMSG_DATA(nlh); | 48 | rtm = (struct nf_dn_rtmsg *)NLMSG_DATA(nlh); |
49 | rtm->nfdn_ifindex = rt_skb->dev->ifindex; | 49 | rtm->nfdn_ifindex = rt_skb->dev->ifindex; |
50 | ptr = NFDN_RTMSG(rtm); | 50 | ptr = NFDN_RTMSG(rtm); |
51 | memcpy(ptr, rt_skb->data, rt_skb->len); | 51 | skb_copy_from_linear_data(rt_skb, ptr, rt_skb->len); |
52 | nlh->nlmsg_len = skb->tail - old_tail; | 52 | nlh->nlmsg_len = skb->tail - old_tail; |
53 | return skb; | 53 | return skb; |
54 | 54 | ||
diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c index c22cdcd84320..94d9f0c63682 100644 --- a/net/ipv4/tcp_output.c +++ b/net/ipv4/tcp_output.c | |||
@@ -1645,7 +1645,9 @@ static void tcp_retrans_try_collapse(struct sock *sk, struct sk_buff *skb, int m | |||
1645 | /* Ok. We will be able to collapse the packet. */ | 1645 | /* Ok. We will be able to collapse the packet. */ |
1646 | tcp_unlink_write_queue(next_skb, sk); | 1646 | tcp_unlink_write_queue(next_skb, sk); |
1647 | 1647 | ||
1648 | memcpy(skb_put(skb, next_skb_size), next_skb->data, next_skb_size); | 1648 | skb_copy_from_linear_data(next_skb, |
1649 | skb_put(skb, next_skb_size), | ||
1650 | next_skb_size); | ||
1649 | 1651 | ||
1650 | if (next_skb->ip_summed == CHECKSUM_PARTIAL) | 1652 | if (next_skb->ip_summed == CHECKSUM_PARTIAL) |
1651 | skb->ip_summed = CHECKSUM_PARTIAL; | 1653 | skb->ip_summed = CHECKSUM_PARTIAL; |
diff --git a/net/netrom/nr_in.c b/net/netrom/nr_in.c index e6dc749e14be..68176483617f 100644 --- a/net/netrom/nr_in.c +++ b/net/netrom/nr_in.c | |||
@@ -54,7 +54,9 @@ static int nr_queue_rx_frame(struct sock *sk, struct sk_buff *skb, int more) | |||
54 | skb_reset_transport_header(skbn); | 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 | ||
diff --git a/net/x25/x25_in.c b/net/x25/x25_in.c index ba13248aa1c3..1c88762c2794 100644 --- a/net/x25/x25_in.c +++ b/net/x25/x25_in.c | |||
@@ -56,14 +56,17 @@ static int x25_queue_rx_frame(struct sock *sk, struct sk_buff *skb, int more) | |||
56 | skb_reset_transport_header(skbn); | 56 | skb_reset_transport_header(skbn); |
57 | 57 | ||
58 | skbo = skb_dequeue(&x25->fragment_queue); | 58 | skbo = skb_dequeue(&x25->fragment_queue); |
59 | memcpy(skb_put(skbn, skbo->len), skbo->data, skbo->len); | 59 | skb_copy_from_linear_data(skbo, skb_put(skbn, skbo->len), |
60 | skbo->len); | ||
60 | kfree_skb(skbo); | 61 | kfree_skb(skbo); |
61 | 62 | ||
62 | while ((skbo = | 63 | while ((skbo = |
63 | skb_dequeue(&x25->fragment_queue)) != NULL) { | 64 | skb_dequeue(&x25->fragment_queue)) != NULL) { |
64 | skb_pull(skbo, (x25->neighbour->extended) ? | 65 | skb_pull(skbo, (x25->neighbour->extended) ? |
65 | X25_EXT_MIN_LEN : X25_STD_MIN_LEN); | 66 | X25_EXT_MIN_LEN : X25_STD_MIN_LEN); |
66 | memcpy(skb_put(skbn, skbo->len), skbo->data, skbo->len); | 67 | skb_copy_from_linear_data(skbo, |
68 | skb_put(skbn, skbo->len), | ||
69 | skbo->len); | ||
67 | kfree_skb(skbo); | 70 | kfree_skb(skbo); |
68 | } | 71 | } |
69 | 72 | ||