mirror of https://gitee.com/openkylin/linux.git
Bluetooth: Refuse peer L2CAP address reading when not connected
When we're not connected the peer address information is undefined. This patch fixes the remote address getting to return a proper error in case the state is anything else than BT_CONNECTED. Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
parent
61202e4de9
commit
b783fbc3a5
|
@ -366,6 +366,9 @@ static int l2cap_sock_getname(struct socket *sock, struct sockaddr *addr,
|
||||||
|
|
||||||
BT_DBG("sock %p, sk %p", sock, sk);
|
BT_DBG("sock %p, sk %p", sock, sk);
|
||||||
|
|
||||||
|
if (peer && sk->sk_state != BT_CONNECTED)
|
||||||
|
return -ENOTCONN;
|
||||||
|
|
||||||
memset(la, 0, sizeof(struct sockaddr_l2));
|
memset(la, 0, sizeof(struct sockaddr_l2));
|
||||||
addr->sa_family = AF_BLUETOOTH;
|
addr->sa_family = AF_BLUETOOTH;
|
||||||
*len = sizeof(struct sockaddr_l2);
|
*len = sizeof(struct sockaddr_l2);
|
||||||
|
|
Loading…
Reference in New Issue