Merge tag 'docs-5.13-2' of git://git.lwn.net/linux
[linux-2.6-microblaze.git] / net / bluetooth / l2cap_sock.c
index f1b1edd..c99d65e 100644 (file)
@@ -179,9 +179,17 @@ static int l2cap_sock_connect(struct socket *sock, struct sockaddr *addr,
        struct l2cap_chan *chan = l2cap_pi(sk)->chan;
        struct sockaddr_l2 la;
        int len, err = 0;
+       bool zapped;
 
        BT_DBG("sk %p", sk);
 
+       lock_sock(sk);
+       zapped = sock_flag(sk, SOCK_ZAPPED);
+       release_sock(sk);
+
+       if (zapped)
+               return -EINVAL;
+
        if (!addr || alen < offsetofend(struct sockaddr, sa_family) ||
            addr->sa_family != AF_BLUETOOTH)
                return -EINVAL;