Bluetooth: Move conn to struct l2cap_chan
[firefly-linux-kernel-4.4.55.git] / net / bluetooth / rfcomm / core.c
index c9973932456f74e68e4dfd8b7f20199a65c9bd4e..121a5c13b98933d9634009173ea502c7ed7b48d0 100644 (file)
@@ -232,6 +232,8 @@ static int rfcomm_l2sock_create(struct socket **sock)
 static inline int rfcomm_check_security(struct rfcomm_dlc *d)
 {
        struct sock *sk = d->session->sock->sk;
+       struct l2cap_conn *conn = l2cap_pi(sk)->chan->conn;
+
        __u8 auth_type;
 
        switch (d->sec_level) {
@@ -246,8 +248,7 @@ static inline int rfcomm_check_security(struct rfcomm_dlc *d)
                break;
        }
 
-       return hci_conn_security(l2cap_pi(sk)->conn->hcon, d->sec_level,
-                                                               auth_type);
+       return hci_conn_security(conn->hcon, d->sec_level, auth_type);
 }
 
 static void rfcomm_session_timeout(unsigned long arg)
@@ -710,10 +711,10 @@ static struct rfcomm_session *rfcomm_session_create(bdaddr_t *src,
        /* Set L2CAP options */
        sk = sock->sk;
        lock_sock(sk);
-       l2cap_pi(sk)->imtu = l2cap_mtu;
-       l2cap_pi(sk)->sec_level = sec_level;
+       l2cap_pi(sk)->chan->imtu = l2cap_mtu;
+       l2cap_pi(sk)->chan->sec_level = sec_level;
        if (l2cap_ertm)
-               l2cap_pi(sk)->mode = L2CAP_MODE_ERTM;
+               l2cap_pi(sk)->chan->mode = L2CAP_MODE_ERTM;
        release_sock(sk);
 
        s = rfcomm_session_add(sock, BT_BOUND);
@@ -1241,6 +1242,7 @@ static int rfcomm_recv_disc(struct rfcomm_session *s, u8 dlci)
 void rfcomm_dlc_accept(struct rfcomm_dlc *d)
 {
        struct sock *sk = d->session->sock->sk;
+       struct l2cap_conn *conn = l2cap_pi(sk)->chan->conn;
 
        BT_DBG("dlc %p", d);
 
@@ -1254,7 +1256,7 @@ void rfcomm_dlc_accept(struct rfcomm_dlc *d)
        rfcomm_dlc_unlock(d);
 
        if (d->role_switch)
-               hci_conn_switch_role(l2cap_pi(sk)->conn->hcon, 0x00);
+               hci_conn_switch_role(conn->hcon, 0x00);
 
        rfcomm_send_msc(d->session, 1, d->dlci, d->v24_sig);
 }
@@ -1890,7 +1892,8 @@ static inline void rfcomm_accept_connection(struct rfcomm_session *s)
 
                /* We should adjust MTU on incoming sessions.
                 * L2CAP MTU minus UIH header and FCS. */
-               s->mtu = min(l2cap_pi(nsock->sk)->omtu, l2cap_pi(nsock->sk)->imtu) - 5;
+               s->mtu = min(l2cap_pi(nsock->sk)->chan->omtu,
+                               l2cap_pi(nsock->sk)->chan->imtu) - 5;
 
                rfcomm_schedule();
        } else
@@ -1909,7 +1912,7 @@ static inline void rfcomm_check_connection(struct rfcomm_session *s)
 
                /* We can adjust MTU on outgoing sessions.
                 * L2CAP MTU minus UIH header and FCS. */
-               s->mtu = min(l2cap_pi(sk)->omtu, l2cap_pi(sk)->imtu) - 5;
+               s->mtu = min(l2cap_pi(sk)->chan->omtu, l2cap_pi(sk)->chan->imtu) - 5;
 
                rfcomm_send_sabm(s, 0);
                break;
@@ -1992,7 +1995,7 @@ static int rfcomm_add_listener(bdaddr_t *ba)
        /* Set L2CAP options */
        sk = sock->sk;
        lock_sock(sk);
-       l2cap_pi(sk)->imtu = l2cap_mtu;
+       l2cap_pi(sk)->chan->imtu = l2cap_mtu;
        release_sock(sk);
 
        /* Start listening on the socket */