Revert "af_unix: Only allow recv on connected seqpacket sockets."
authorSteve Conklin <sconklin@canonical.com>
Mon, 27 Jun 2011 14:02:07 +0000 (15:02 +0100)
committerSteve Conklin <sconklin@canonical.com>
Mon, 27 Jun 2011 14:02:07 +0000 (15:02 +0100)
This reverts commit 4ce4a71e7f5bdd1d2bce71f1e798c76d3716630a.

This revert is being tracked in bug 802461

net/unix/af_unix.c

index 94dbec4..6a6d09c 100644 (file)
@@ -524,8 +524,6 @@ static int unix_dgram_connect(struct socket *, struct sockaddr *,
                              int, int);
 static int unix_seqpacket_sendmsg(struct kiocb *, struct socket *,
                                  struct msghdr *, size_t);
-static int unix_seqpacket_recvmsg(struct kiocb *, struct socket *,
-                                 struct msghdr *, size_t, int);
 
 static const struct proto_ops unix_stream_ops = {
        .family =       PF_UNIX,
@@ -585,7 +583,7 @@ static const struct proto_ops unix_seqpacket_ops = {
        .setsockopt =   sock_no_setsockopt,
        .getsockopt =   sock_no_getsockopt,
        .sendmsg =      unix_seqpacket_sendmsg,
-       .recvmsg =      unix_seqpacket_recvmsg,
+       .recvmsg =      unix_dgram_recvmsg,
        .mmap =         sock_no_mmap,
        .sendpage =     sock_no_sendpage,
 };
@@ -1697,18 +1695,6 @@ static int unix_seqpacket_sendmsg(struct kiocb *kiocb, struct socket *sock,
        return unix_dgram_sendmsg(kiocb, sock, msg, len);
 }
 
-static int unix_seqpacket_recvmsg(struct kiocb *iocb, struct socket *sock,
-                             struct msghdr *msg, size_t size,
-                             int flags)
-{
-       struct sock *sk = sock->sk;
-
-       if (sk->sk_state != TCP_ESTABLISHED)
-               return -ENOTCONN;
-
-       return unix_dgram_recvmsg(iocb, sock, msg, size, flags);
-}
-
 static void unix_copy_addr(struct msghdr *msg, struct sock *sk)
 {
        struct unix_sock *u = unix_sk(sk);