]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - net/bluetooth/l2cap_sock.c
net: dsa: sja1105: Fix sleeping while atomic in .port_hwtstamp_set
[linux.git] / net / bluetooth / l2cap_sock.c
index a3a2cd55e23a9caa288663e69243db71cdf211fc..a7be8b59b3c280de738ec808534635265ee35169 100644 (file)
@@ -791,10 +791,13 @@ static int l2cap_sock_setsockopt(struct socket *sock, int level, int optname,
 
                conn = chan->conn;
 
-               /*change security for LE channels */
+               /* change security for LE channels */
                if (chan->scid == L2CAP_CID_ATT) {
-                       if (smp_conn_security(conn->hcon, sec.level))
+                       if (smp_conn_security(conn->hcon, sec.level)) {
+                               err = -EINVAL;
                                break;
+                       }
+
                        set_bit(FLAG_PENDING_SECURITY, &chan->flags);
                        sk->sk_state = BT_CONFIG;
                        chan->state = BT_CONFIG;
@@ -1655,6 +1658,7 @@ static const struct proto_ops l2cap_sock_ops = {
        .recvmsg        = l2cap_sock_recvmsg,
        .poll           = bt_sock_poll,
        .ioctl          = bt_sock_ioctl,
+       .gettstamp      = sock_gettstamp,
        .mmap           = sock_no_mmap,
        .socketpair     = sock_no_socketpair,
        .shutdown       = l2cap_sock_shutdown,