COMPAT_SYSCALL_DEFINE4(recv, int, fd, void __user *, buf, compat_size_t, len, unsigned int, flags)
 {
-       return sys_recv(fd, buf, len, flags | MSG_CMSG_COMPAT);
+       return __sys_recvfrom(fd, buf, len, flags | MSG_CMSG_COMPAT, NULL,
+                             NULL);
 }
 
 COMPAT_SYSCALL_DEFINE6(recvfrom, int, fd, void __user *, buf, compat_size_t, len,
 
                                   (struct sockaddr __user *)a[4], a[5]);
                break;
        case SYS_RECV:
-               err = sys_recv(a0, (void __user *)a1, a[2], a[3]);
+               err = __sys_recvfrom(a0, (void __user *)a1, a[2], a[3],
+                                    NULL, NULL);
                break;
        case SYS_RECVFROM:
                err = __sys_recvfrom(a0, (void __user *)a1, a[2], a[3],