apache / apache/mynewt-nimble

PASSKEY_ACTION event not passed to event listeners

Open
#1,506 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
893
Forks
512
Avg merge
13d 31m
Merged PRs (30d)
7

Description

The `BLE_GAP_EVENT_PASSKEY_ACTION` event is only passed to the connection event handler (the one passed to `ble_gap_ext_adv_configure()` or `ble_gap_connect()`) but not to event listeners registered with `ble_gap_event_listener_register()`.

Is there a reason for this?

Most events in ble_gap.c are passed to both:

```
ble_gap_event_listener_call(&event);
ble_gap_call_conn_event_cb(&event, conn_handle);
```

Only in `ble_gap_repeat_pairing_event()`, `ble_gap_identity_event()`, `ble_gap_passkey_event()`, `ble_gap_rx_param_req()` and` ble_gap_rx_l2cap_update_req()` there is only:

```
ble_gap_call_conn_event_cb(&event, conn_handle);
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in ble_gap.c with ble_gap_passkey_event() and compare its BLE_GAP_EVENT_PASSKEY_ACTION dispatch with the listener and connection-callback calls used by other GAP events. Trace ble_gap_event_listener_call() and ble_gap_call_conn_event_cb(); done means the passkey-action event reaches registered event listeners as well as the connection event handler.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
embedded-iot
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.