patch-2.1.10 linux/net/core/datagram.c
Next file: linux/net/core/dev.c
Previous file: linux/net/bridge/br.c
Back to the patch index
Back to the overall index
- Lines: 37
- Date:
Thu Nov 14 18:26:16 1996
- Orig file:
v2.1.9/linux/net/core/datagram.c
- Orig date:
Fri Nov 1 17:13:19 1996
diff -u --recursive --new-file v2.1.9/linux/net/core/datagram.c linux/net/core/datagram.c
@@ -166,9 +166,15 @@
* Copy a datagram to a linear buffer.
*/
-void skb_copy_datagram(struct sk_buff *skb, int offset, char *to, int size)
+int skb_copy_datagram(struct sk_buff *skb, int offset, char *to, int size)
{
- copy_to_user(to,skb->h.raw+offset,size);
+ int err;
+ err = copy_to_user(to, skb->h.raw+offset, size);
+ if (err)
+ {
+ err = -EFAULT;
+ }
+ return err;
}
@@ -176,9 +182,16 @@
* Copy a datagram to an iovec.
*/
-void skb_copy_datagram_iovec(struct sk_buff *skb, int offset, struct iovec *to, int size)
+int skb_copy_datagram_iovec(struct sk_buff *skb, int offset, struct iovec *to,
+ int size)
{
- memcpy_toiovec(to,skb->h.raw+offset,size);
+ int err;
+ err = memcpy_toiovec(to, skb->h.raw+offset, size);
+ if (err)
+ {
+ err = -EFAULT;
+ }
+ return err;
}
/*
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov