nfc: Do not send datagram if socket state isn't LLCP_BOUND
[linux-2.6-microblaze.git] / net / nfc / llcp_sock.c
index 645677f..819157b 100644 (file)
@@ -796,6 +796,11 @@ static int llcp_sock_sendmsg(struct socket *sock, struct msghdr *msg,
        }
 
        if (sk->sk_type == SOCK_DGRAM) {
+               if (sk->sk_state != LLCP_BOUND) {
+                       release_sock(sk);
+                       return -ENOTCONN;
+               }
+
                DECLARE_SOCKADDR(struct sockaddr_nfc_llcp *, addr,
                                 msg->msg_name);