summaryrefslogtreecommitdiffstats
path: root/net/x25
diff options
context:
space:
mode:
Diffstat (limited to 'net/x25')
-rw-r--r--net/x25/af_x25.c2
-rw-r--r--net/x25/x25_in.c5
-rw-r--r--net/x25/x25_out.c4
3 files changed, 6 insertions, 5 deletions
diff --git a/net/x25/af_x25.c b/net/x25/af_x25.c
index adcda8ebee9c..0d6002fc77b2 100644
--- a/net/x25/af_x25.c
+++ b/net/x25/af_x25.c
@@ -951,7 +951,7 @@ int x25_rx_call_request(struct sk_buff *skb, struct x25_neigh *nb,
951 * Incoming Call User Data. 951 * Incoming Call User Data.
952 */ 952 */
953 if (skb->len >= 0) { 953 if (skb->len >= 0) {
954 memcpy(makex25->calluserdata.cuddata, skb->data, skb->len); 954 skb_copy_from_linear_data(skb, makex25->calluserdata.cuddata, skb->len);
955 makex25->calluserdata.cudlength = skb->len; 955 makex25->calluserdata.cudlength = skb->len;
956 } 956 }
957 957
diff --git a/net/x25/x25_in.c b/net/x25/x25_in.c
index b2bbe552a89d..ba13248aa1c3 100644
--- a/net/x25/x25_in.c
+++ b/net/x25/x25_in.c
@@ -112,8 +112,9 @@ static int x25_state1_machine(struct sock *sk, struct sk_buff *skb, int frametyp
112 * Copy any Call User Data. 112 * Copy any Call User Data.
113 */ 113 */
114 if (skb->len >= 0) { 114 if (skb->len >= 0) {
115 memcpy(x25->calluserdata.cuddata, skb->data, 115 skb_copy_from_linear_data(skb,
116 skb->len); 116 x25->calluserdata.cuddata,
117 skb->len);
117 x25->calluserdata.cudlength = skb->len; 118 x25->calluserdata.cudlength = skb->len;
118 } 119 }
119 if (!sock_flag(sk, SOCK_DEAD)) 120 if (!sock_flag(sk, SOCK_DEAD))
diff --git a/net/x25/x25_out.c b/net/x25/x25_out.c
index 6f5737853912..bb45e21ffce9 100644
--- a/net/x25/x25_out.c
+++ b/net/x25/x25_out.c
@@ -61,7 +61,7 @@ int x25_output(struct sock *sk, struct sk_buff *skb)
61 61
62 if (skb->len - header_len > max_len) { 62 if (skb->len - header_len > max_len) {
63 /* Save a copy of the Header */ 63 /* Save a copy of the Header */
64 memcpy(header, skb->data, header_len); 64 skb_copy_from_linear_data(skb, header, header_len);
65 skb_pull(skb, header_len); 65 skb_pull(skb, header_len);
66 66
67 frontlen = skb_headroom(skb); 67 frontlen = skb_headroom(skb);
@@ -84,7 +84,7 @@ int x25_output(struct sock *sk, struct sk_buff *skb)
84 len = max_len > skb->len ? skb->len : max_len; 84 len = max_len > skb->len ? skb->len : max_len;
85 85
86 /* Copy the user data */ 86 /* Copy the user data */
87 memcpy(skb_put(skbn, len), skb->data, len); 87 skb_copy_from_linear_data(skb, skb_put(skbn, len), len);
88 skb_pull(skb, len); 88 skb_pull(skb, len);
89 89
90 /* Duplicate the Header */ 90 /* Duplicate the Header */