From 6922928801bd430e69100c46b11156ae60855e88 Mon Sep 17 00:00:00 2001 From: Johan Hedberg Date: Sun, 20 Jan 2013 14:27:15 +0200 Subject: [PATCH] --- yaml --- r: 352251 b: refs/heads/master c: 54ad6d8a5afe1a6d162d8d229a3d8fc48b254d24 h: refs/heads/master i: 352249: 2d65bc3d70819367593e90b1ca0ed7c6915a7425 352247: f582945b540e42430204a9ff2b0e6c2b6efb8d6d v: v3 --- [refs] | 2 +- trunk/net/bluetooth/mgmt.c | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 53daa6e52119..2e4e3fb73606 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e57e619f463e7841940ef1b98969e23f71f5ee8a +refs/heads/master: 54ad6d8a5afe1a6d162d8d229a3d8fc48b254d24 diff --git a/trunk/net/bluetooth/mgmt.c b/trunk/net/bluetooth/mgmt.c index a050eee61623..c7ec47ce94e5 100644 --- a/trunk/net/bluetooth/mgmt.c +++ b/trunk/net/bluetooth/mgmt.c @@ -2721,6 +2721,15 @@ static int load_long_term_keys(struct sock *sk, struct hci_dev *hdev, BT_DBG("%s key_count %u", hdev->name, key_count); + for (i = 0; i < key_count; i++) { + struct mgmt_ltk_info *key = &cp->keys[i]; + + if (key->master != 0x00 && key->master != 0x01) + return cmd_status(sk, hdev->id, + MGMT_OP_LOAD_LONG_TERM_KEYS, + MGMT_STATUS_INVALID_PARAMS); + } + hci_dev_lock(hdev); hci_smp_ltks_clear(hdev);