diff options
author | Johan Hedberg <johan.hedberg@intel.com> | 2014-09-09 16:21:46 -0700 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2014-09-10 01:45:01 +0200 |
commit | 196332f5a1e5c3ec7171742fce83d03795abf120 (patch) | |
tree | 7ec033ad5384eaf4ff785a1ada36d9b957d849c5 /net/bluetooth | |
parent | 39e90c77637b3892a39f2908aea57539e961c50e (diff) |
Bluetooth: Fix allowing SMP Signing info PDU
If the remote side is not distributing its IRK but is distributing the
CSRK the next PDU after master identification is the Signing
Information. This patch fixes a missing SMP_ALLOW_CMD() for this in the
smp_cmd_master_ident() function.
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/bluetooth')
-rw-r--r-- | net/bluetooth/smp.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/bluetooth/smp.c b/net/bluetooth/smp.c index 25c9040e0b12..dc575aba2e65 100644 --- a/net/bluetooth/smp.c +++ b/net/bluetooth/smp.c @@ -1324,6 +1324,8 @@ static int smp_cmd_master_ident(struct l2cap_conn *conn, struct sk_buff *skb) SMP_DISALLOW_CMD(smp, SMP_CMD_MASTER_IDENT); if (smp->remote_key_dist & SMP_DIST_ID_KEY) SMP_ALLOW_CMD(smp, SMP_CMD_IDENT_INFO); + else if (smp->remote_key_dist & SMP_DIST_SIGN) + SMP_ALLOW_CMD(smp, SMP_CMD_SIGN_INFO); skb_pull(skb, sizeof(*rp)); |