Bluetooth: Access CMTP session addresses through L2CAP channel
The L2CAP socket structure does not contain the address information anymore. They need to be accessed through the L2CAP channel. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
This commit is contained in:
parent
24bc10cad3
commit
88f1fd2708
|
@ -340,20 +340,20 @@ int cmtp_add_connection(struct cmtp_connadd_req *req, struct socket *sock)
|
|||
|
||||
down_write(&cmtp_session_sem);
|
||||
|
||||
s = __cmtp_get_session(&bt_sk(sock->sk)->dst);
|
||||
s = __cmtp_get_session(&l2cap_pi(sock->sk)->chan->dst);
|
||||
if (s && s->state == BT_CONNECTED) {
|
||||
err = -EEXIST;
|
||||
goto failed;
|
||||
}
|
||||
|
||||
bacpy(&session->bdaddr, &bt_sk(sock->sk)->dst);
|
||||
bacpy(&session->bdaddr, &l2cap_pi(sock->sk)->chan->dst);
|
||||
|
||||
session->mtu = min_t(uint, l2cap_pi(sock->sk)->chan->omtu,
|
||||
l2cap_pi(sock->sk)->chan->imtu);
|
||||
|
||||
BT_DBG("mtu %d", session->mtu);
|
||||
|
||||
sprintf(session->name, "%pMR", &bt_sk(sock->sk)->dst);
|
||||
sprintf(session->name, "%pMR", &session->bdaddr);
|
||||
|
||||
session->sock = sock;
|
||||
session->state = BT_CONFIG;
|
||||
|
|
Loading…
Reference in New Issue