X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=net%2Fsocket.c;h=d449812d6208d337d0d927d47401ca62346632ea;hb=eaa255a8d548bbe8d70f6794bd64029cbb7a02ec;hp=75655365b5fd2041d9bdf97d936275b1f74b217e;hpb=8a0382f6fceaf0c6479e582e1054f36333ea3d24;p=firefly-linux-kernel-4.4.55.git diff --git a/net/socket.c b/net/socket.c index 75655365b5fd..d449812d6208 100644 --- a/net/socket.c +++ b/net/socket.c @@ -1673,6 +1673,8 @@ SYSCALL_DEFINE6(sendto, int, fd, void __user *, buff, size_t, len, struct iovec iov; int fput_needed; + if (len > INT_MAX) + len = INT_MAX; sock = sockfd_lookup_light(fd, &err, &fput_needed); if (!sock) goto out; @@ -1730,6 +1732,8 @@ SYSCALL_DEFINE6(recvfrom, int, fd, void __user *, ubuf, size_t, size, int err, err2; int fput_needed; + if (size > INT_MAX) + size = INT_MAX; sock = sockfd_lookup_light(fd, &err, &fput_needed); if (!sock) goto out;