X-Git-Url: https://bbs.cooldavid.org/git/?a=blobdiff_plain;f=net%2Fcore%2Fiovec.c;h=f4657c2127b4a9bc998cb0e91bf5405f83d5846e;hb=a700d8be733bd593ea4797dfde17aed4f35213c0;hp=1cd98df412dfd52daee9cc9105ceddfea0d87a59;hpb=cf0ac2b8a759fecbefd80f890c6dbe80ba65fd95;p=net-next-2.6.git diff --git a/net/core/iovec.c b/net/core/iovec.c index 1cd98df412d..f4657c2127b 100644 --- a/net/core/iovec.c +++ b/net/core/iovec.c @@ -41,7 +41,9 @@ int verify_iovec(struct msghdr *m, struct iovec *iov, struct sockaddr *address, if (m->msg_namelen) { if (mode == VERIFY_READ) { - err = move_addr_to_kernel(m->msg_name, m->msg_namelen, + void __user *namep; + namep = (void __user __force *) m->msg_name; + err = move_addr_to_kernel(namep, m->msg_namelen, address); if (err < 0) return err; @@ -52,7 +54,7 @@ int verify_iovec(struct msghdr *m, struct iovec *iov, struct sockaddr *address, } size = m->msg_iovlen * sizeof(struct iovec); - if (copy_from_user(iov, m->msg_iov, size)) + if (copy_from_user(iov, (void __user __force *) m->msg_iov, size)) return -EFAULT; m->msg_iov = iov;