Browse Source

[Bluetooth] Ignore L2CAP config requests on disconnect

Any L2CAP connection in disconnecting state shall not response
to any further config requests from the remote side. So in case
such a request is received, ignore it.

Signed-off-by: Ville Tervo <ville.tervo@nokia.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Marcel Holtmann 18 years ago
parent
commit
354f60a995
1 changed files with 3 additions and 0 deletions
  1. 3 0
      net/bluetooth/l2cap.c

+ 3 - 0
net/bluetooth/l2cap.c

@@ -1533,6 +1533,9 @@ static inline int l2cap_config_req(struct l2cap_conn *conn, struct l2cap_cmd_hdr
 	if (!(sk = l2cap_get_chan_by_scid(&conn->chan_list, dcid)))
 	if (!(sk = l2cap_get_chan_by_scid(&conn->chan_list, dcid)))
 		return -ENOENT;
 		return -ENOENT;
 
 
+	if (sk->sk_state == BT_DISCONN)
+		goto unlock;
+
 	l2cap_parse_conf_req(sk, req->data, cmd->len - sizeof(*req));
 	l2cap_parse_conf_req(sk, req->data, cmd->len - sizeof(*req));
 
 
 	if (flags & 0x0001) {
 	if (flags & 0x0001) {