Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b6ae8457 authored by Johan Hedberg's avatar Johan Hedberg Committed by Marcel Holtmann
Browse files

Bluetooth: Rename HCI_PAIRABLE to HCI_BONDABLE



The HCI_PAIRABLE flag isn't actually controlling whether we're pairable
but whether we're bondable. Therefore, rename it accordingly.

Signed-off-by: default avatarJohan Hedberg <johan.hedberg@intel.com>
Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
parent bdb94346
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -167,7 +167,7 @@ enum {
	HCI_AUTO_OFF,
	HCI_AUTO_OFF,
	HCI_RFKILLED,
	HCI_RFKILLED,
	HCI_MGMT,
	HCI_MGMT,
	HCI_PAIRABLE,
	HCI_BONDABLE,
	HCI_SERVICE_CACHE,
	HCI_SERVICE_CACHE,
	HCI_KEEP_DEBUG_KEYS,
	HCI_KEEP_DEBUG_KEYS,
	HCI_USE_DEBUG_KEYS,
	HCI_USE_DEBUG_KEYS,
+2 −2
Original line number Original line Diff line number Diff line
@@ -2521,14 +2521,14 @@ int hci_dev_open(__u16 dev)
	flush_workqueue(hdev->req_workqueue);
	flush_workqueue(hdev->req_workqueue);


	/* For controllers not using the management interface and that
	/* For controllers not using the management interface and that
	 * are brought up using legacy ioctl, set the HCI_PAIRABLE bit
	 * are brought up using legacy ioctl, set the HCI_BONDABLE bit
	 * so that pairing works for them. Once the management interface
	 * so that pairing works for them. Once the management interface
	 * is in use this bit will be cleared again and userspace has
	 * is in use this bit will be cleared again and userspace has
	 * to explicitly enable it.
	 * to explicitly enable it.
	 */
	 */
	if (!test_bit(HCI_USER_CHANNEL, &hdev->dev_flags) &&
	if (!test_bit(HCI_USER_CHANNEL, &hdev->dev_flags) &&
	    !test_bit(HCI_MGMT, &hdev->dev_flags))
	    !test_bit(HCI_MGMT, &hdev->dev_flags))
		set_bit(HCI_PAIRABLE, &hdev->dev_flags);
		set_bit(HCI_BONDABLE, &hdev->dev_flags);


	err = hci_dev_do_open(hdev);
	err = hci_dev_do_open(hdev);


+2 −2
Original line number Original line Diff line number Diff line
@@ -3119,7 +3119,7 @@ static void hci_pin_code_request_evt(struct hci_dev *hdev, struct sk_buff *skb)
		hci_conn_drop(conn);
		hci_conn_drop(conn);
	}
	}


	if (!test_bit(HCI_PAIRABLE, &hdev->dev_flags) &&
	if (!test_bit(HCI_BONDABLE, &hdev->dev_flags) &&
	    !test_bit(HCI_CONN_AUTH_INITIATOR, &conn->flags)) {
	    !test_bit(HCI_CONN_AUTH_INITIATOR, &conn->flags)) {
		hci_send_cmd(hdev, HCI_OP_PIN_CODE_NEG_REPLY,
		hci_send_cmd(hdev, HCI_OP_PIN_CODE_NEG_REPLY,
			     sizeof(ev->bdaddr), &ev->bdaddr);
			     sizeof(ev->bdaddr), &ev->bdaddr);
@@ -3652,7 +3652,7 @@ static void hci_io_capa_request_evt(struct hci_dev *hdev, struct sk_buff *skb)
	/* Allow pairing if we're pairable, the initiators of the
	/* Allow pairing if we're pairable, the initiators of the
	 * pairing or if the remote is not requesting bonding.
	 * pairing or if the remote is not requesting bonding.
	 */
	 */
	if (test_bit(HCI_PAIRABLE, &hdev->dev_flags) ||
	if (test_bit(HCI_BONDABLE, &hdev->dev_flags) ||
	    test_bit(HCI_CONN_AUTH_INITIATOR, &conn->flags) ||
	    test_bit(HCI_CONN_AUTH_INITIATOR, &conn->flags) ||
	    (conn->remote_auth & ~0x01) == HCI_AT_NO_BONDING) {
	    (conn->remote_auth & ~0x01) == HCI_AT_NO_BONDING) {
		struct hci_cp_io_capability_reply cp;
		struct hci_cp_io_capability_reply cp;
+4 −4
Original line number Original line Diff line number Diff line
@@ -603,7 +603,7 @@ static u32 get_current_settings(struct hci_dev *hdev)
	if (test_bit(HCI_DISCOVERABLE, &hdev->dev_flags))
	if (test_bit(HCI_DISCOVERABLE, &hdev->dev_flags))
		settings |= MGMT_SETTING_DISCOVERABLE;
		settings |= MGMT_SETTING_DISCOVERABLE;


	if (test_bit(HCI_PAIRABLE, &hdev->dev_flags))
	if (test_bit(HCI_BONDABLE, &hdev->dev_flags))
		settings |= MGMT_SETTING_PAIRABLE;
		settings |= MGMT_SETTING_PAIRABLE;


	if (test_bit(HCI_BREDR_ENABLED, &hdev->dev_flags))
	if (test_bit(HCI_BREDR_ENABLED, &hdev->dev_flags))
@@ -1152,7 +1152,7 @@ static void mgmt_init_hdev(struct sock *sk, struct hci_dev *hdev)
	 * for mgmt we require user-space to explicitly enable
	 * for mgmt we require user-space to explicitly enable
	 * it
	 * it
	 */
	 */
	clear_bit(HCI_PAIRABLE, &hdev->dev_flags);
	clear_bit(HCI_BONDABLE, &hdev->dev_flags);
}
}


static int read_controller_info(struct sock *sk, struct hci_dev *hdev,
static int read_controller_info(struct sock *sk, struct hci_dev *hdev,
@@ -1946,9 +1946,9 @@ static int set_pairable(struct sock *sk, struct hci_dev *hdev, void *data,
	hci_dev_lock(hdev);
	hci_dev_lock(hdev);


	if (cp->val)
	if (cp->val)
		changed = !test_and_set_bit(HCI_PAIRABLE, &hdev->dev_flags);
		changed = !test_and_set_bit(HCI_BONDABLE, &hdev->dev_flags);
	else
	else
		changed = test_and_clear_bit(HCI_PAIRABLE, &hdev->dev_flags);
		changed = test_and_clear_bit(HCI_BONDABLE, &hdev->dev_flags);


	err = send_settings_rsp(sk, MGMT_OP_SET_PAIRABLE, hdev);
	err = send_settings_rsp(sk, MGMT_OP_SET_PAIRABLE, hdev);
	if (err < 0)
	if (err < 0)
+3 −3
Original line number Original line Diff line number Diff line
@@ -307,7 +307,7 @@ static void build_pairing_cmd(struct l2cap_conn *conn,
	struct hci_dev *hdev = hcon->hdev;
	struct hci_dev *hdev = hcon->hdev;
	u8 local_dist = 0, remote_dist = 0;
	u8 local_dist = 0, remote_dist = 0;


	if (test_bit(HCI_PAIRABLE, &conn->hcon->hdev->dev_flags)) {
	if (test_bit(HCI_BONDABLE, &conn->hcon->hdev->dev_flags)) {
		local_dist = SMP_DIST_ENC_KEY | SMP_DIST_SIGN;
		local_dist = SMP_DIST_ENC_KEY | SMP_DIST_SIGN;
		remote_dist = SMP_DIST_ENC_KEY | SMP_DIST_SIGN;
		remote_dist = SMP_DIST_ENC_KEY | SMP_DIST_SIGN;
		authreq |= SMP_AUTH_BONDING;
		authreq |= SMP_AUTH_BONDING;
@@ -704,7 +704,7 @@ static u8 smp_cmd_pairing_req(struct l2cap_conn *conn, struct sk_buff *skb)
	if (!smp)
	if (!smp)
		return SMP_UNSPECIFIED;
		return SMP_UNSPECIFIED;


	if (!test_bit(HCI_PAIRABLE, &hdev->dev_flags) &&
	if (!test_bit(HCI_BONDABLE, &hdev->dev_flags) &&
	    (req->auth_req & SMP_AUTH_BONDING))
	    (req->auth_req & SMP_AUTH_BONDING))
		return SMP_PAIRING_NOTSUPP;
		return SMP_PAIRING_NOTSUPP;


@@ -930,7 +930,7 @@ static u8 smp_cmd_security_req(struct l2cap_conn *conn, struct sk_buff *skb)
	if (!smp)
	if (!smp)
		return SMP_UNSPECIFIED;
		return SMP_UNSPECIFIED;


	if (!test_bit(HCI_PAIRABLE, &hcon->hdev->dev_flags) &&
	if (!test_bit(HCI_BONDABLE, &hcon->hdev->dev_flags) &&
	    (rp->auth_req & SMP_AUTH_BONDING))
	    (rp->auth_req & SMP_AUTH_BONDING))
		return SMP_PAIRING_NOTSUPP;
		return SMP_PAIRING_NOTSUPP;