diff options
author | Johan Hedberg <johan.hedberg@intel.com> | 2013-01-20 07:27:13 -0500 |
---|---|---|
committer | Gustavo Padovan <gustavo.padovan@collabora.co.uk> | 2013-01-22 22:48:19 -0500 |
commit | 4ae14301c3b180adaf6b72285499e7404819a023 (patch) | |
tree | 96286633b9ff9a63e8c4e90471b6f54bcbd2a319 /net/bluetooth/mgmt.c | |
parent | f950a30e2433f049c17fc47caced1397d25373a6 (diff) |
Bluetooth: Fix checking for correct mgmt_load_link_keys parameters
The debug_keys parameter is only allowed to have the values 0x00 and
0x01. Any other value should result in a proper command status with
MGMT_STATUS_INVALID_PARAMS.
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Diffstat (limited to 'net/bluetooth/mgmt.c')
-rw-r--r-- | net/bluetooth/mgmt.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c index 36b23101d651..d9b042efbf42 100644 --- a/net/bluetooth/mgmt.c +++ b/net/bluetooth/mgmt.c | |||
@@ -1519,6 +1519,10 @@ static int load_link_keys(struct sock *sk, struct hci_dev *hdev, void *data, | |||
1519 | MGMT_STATUS_INVALID_PARAMS); | 1519 | MGMT_STATUS_INVALID_PARAMS); |
1520 | } | 1520 | } |
1521 | 1521 | ||
1522 | if (cp->debug_keys != 0x00 && cp->debug_keys != 0x01) | ||
1523 | return cmd_status(sk, hdev->id, MGMT_OP_LOAD_LINK_KEYS, | ||
1524 | MGMT_STATUS_INVALID_PARAMS); | ||
1525 | |||
1522 | BT_DBG("%s debug_keys %u key_count %u", hdev->name, cp->debug_keys, | 1526 | BT_DBG("%s debug_keys %u key_count %u", hdev->name, cp->debug_keys, |
1523 | key_count); | 1527 | key_count); |
1524 | 1528 | ||