Bluetooth: mgmt: Remove not needed restriction on add/remove OOB data
authorSzymon Janc <szymon.janc@tieto.com>
Thu, 13 Dec 2012 14:11:20 +0000 (15:11 +0100)
committerGustavo Padovan <gustavo.padovan@collabora.co.uk>
Wed, 9 Jan 2013 19:05:05 +0000 (17:05 -0200)
Those commands don't send any HCI commands to controller so there is no
need to restrict them to only powered up controller. This also makes
implementation more consistent as already stored remote OOB data
persist power toggle.

Signed-off-by: Szymon Janc <szymon.janc@tieto.com>
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
net/bluetooth/mgmt.c

index f559b966279c13e8d1e0eb36afbcc465067c4e8d..ef385824a144b4657eb0114afda1030b50bd51bf 100644 (file)
@@ -2254,13 +2254,6 @@ static int add_remote_oob_data(struct sock *sk, struct hci_dev *hdev,
 
        hci_dev_lock(hdev);
 
-       if (!hdev_is_powered(hdev)) {
-               err = cmd_complete(sk, hdev->id, MGMT_OP_ADD_REMOTE_OOB_DATA,
-                                  MGMT_STATUS_NOT_POWERED, &cp->addr,
-                                  sizeof(cp->addr));
-               goto unlock;
-       }
-
        err = hci_add_remote_oob_data(hdev, &cp->addr.bdaddr, cp->hash,
                                      cp->randomizer);
        if (err < 0)
@@ -2271,7 +2264,6 @@ static int add_remote_oob_data(struct sock *sk, struct hci_dev *hdev,
        err = cmd_complete(sk, hdev->id, MGMT_OP_ADD_REMOTE_OOB_DATA, status,
                           &cp->addr, sizeof(cp->addr));
 
-unlock:
        hci_dev_unlock(hdev);
        return err;
 }
@@ -2287,14 +2279,6 @@ static int remove_remote_oob_data(struct sock *sk, struct hci_dev *hdev,
 
        hci_dev_lock(hdev);
 
-       if (!hdev_is_powered(hdev)) {
-               err = cmd_complete(sk, hdev->id,
-                                  MGMT_OP_REMOVE_REMOTE_OOB_DATA,
-                                  MGMT_STATUS_NOT_POWERED, &cp->addr,
-                                  sizeof(cp->addr));
-               goto unlock;
-       }
-
        err = hci_remove_remote_oob_data(hdev, &cp->addr.bdaddr);
        if (err < 0)
                status = MGMT_STATUS_INVALID_PARAMS;
@@ -2304,7 +2288,6 @@ static int remove_remote_oob_data(struct sock *sk, struct hci_dev *hdev,
        err = cmd_complete(sk, hdev->id, MGMT_OP_REMOVE_REMOTE_OOB_DATA,
                           status, &cp->addr, sizeof(cp->addr));
 
-unlock:
        hci_dev_unlock(hdev);
        return err;
 }