From: Ido Yariv Date: Mon, 5 Mar 2012 18:09:38 +0000 (+0200) Subject: Bluetooth: Set security level on incoming pairing request X-Git-Tag: v3.4-rc1~177^2~112^2 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=fdde0a26a218d95e2ea38c0838ab6f24040af14c;p=karo-tx-linux.git Bluetooth: Set security level on incoming pairing request If a master would like to raise the security level, it will send a pairing request. While the pending security level is set on an incoming security request (from a slave), it is not set on a pairing request. As a result, the security level would not be raised on the slave in such case. Fix this by setting the pending security when receiving pairing requests according to the requested authorization. Signed-off-by: Ido Yariv Acked-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan --- diff --git a/net/bluetooth/smp.c b/net/bluetooth/smp.c index 9883d673873c..deb119875fd9 100644 --- a/net/bluetooth/smp.c +++ b/net/bluetooth/smp.c @@ -589,6 +589,8 @@ static u8 smp_cmd_pairing_req(struct l2cap_conn *conn, struct sk_buff *skb) if (req->auth_req & SMP_AUTH_BONDING) auth = req->auth_req; + conn->hcon->pending_sec_level = authreq_to_seclevel(auth); + build_pairing_cmd(conn, req, &rsp, auth); key_size = min(req->max_key_size, rsp.max_key_size);