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

Skip to content
Commit 6fb07fbd authored by Sumit Deshmukh's avatar Sumit Deshmukh
Browse files

BLE: [IOT] Initiate disconnection when encryption fails during pairing

Use case:
1. Keep remote device (IOGEAR Keyboard) in advertising mode.
2. Pair and connect remote device with DUT.
3. Disconnect remote from settings menu.
4. Bring remote device back in pairing mode.
  (This deletes link key at remote side.)
5. Select remote device for connection from Settings menu
   from paired devices in DUT.

Reproducible Rate: 100%

Issue:
Device is seen stuck in "Connecting state" in settings app.
To recover from this bad user experience, user has to wait till
link is disconnected by timeout from remote or has to do BT reset.

Root Cause:
When pairing is initiated again from DUT (step 5), encryption
change event is received with status "PIN or Key Missing" after
connection complete but disconnection is not initiated by DUT
thereafter.

Fix:
Trigger disconnection if encyption fails with reason like
HCI_ERR_AUTH_FAILURE, HCI_ERR_KEY_MISSING,
HCI_ERR_ENCRY_MODE_NOT_ACCEPTABLE etc

Test: Checked connection and pairing after remote device deletes
      link key. In first attempt, disconnection will be issued and in
      next attempt pairing/connection will be successful.

Bug: 130694802

Change-Id: Ie93938a5dc68c6bbd4b6c375c360f09e797f9e77
parent 4f3cea53
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment