Bluetooth: controller: Filter Auth Payload timeout exp

Correctly filter out the Authenticated Payload Timeout Expired event
based on the bit present on page 2 of the Event Mask.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
This commit is contained in:
Carles Cufi 2017-07-03 13:27:33 +02:00
commit fc14bfbe2f
2 changed files with 31 additions and 0 deletions

View file

@ -1702,6 +1702,33 @@ struct bt_hci_evt_le_chan_sel_algo {
#define BT_EVT_MASK_USER_PASSKEY_NOTIFY BT_EVT_BIT(58) #define BT_EVT_MASK_USER_PASSKEY_NOTIFY BT_EVT_BIT(58)
#define BT_EVT_MASK_LE_META_EVENT BT_EVT_BIT(61) #define BT_EVT_MASK_LE_META_EVENT BT_EVT_BIT(61)
/* Page 2 */
#define BT_EVT_MASK_PHY_LINK_COMPLETE BT_EVT_BIT(0)
#define BT_EVT_MASK_CH_SELECTED_COMPLETE BT_EVT_BIT(1)
#define BT_EVT_MASK_DISCONN_PHY_LINK_COMPLETE BT_EVT_BIT(2)
#define BT_EVT_MASK_PHY_LINK_LOSS_EARLY_WARN BT_EVT_BIT(3)
#define BT_EVT_MASK_PHY_LINK_RECOVERY BT_EVT_BIT(4)
#define BT_EVT_MASK_LOG_LINK_COMPLETE BT_EVT_BIT(5)
#define BT_EVT_MASK_DISCONN_LOG_LINK_COMPLETE BT_EVT_BIT(6)
#define BT_EVT_MASK_FLOW_SPEC_MODIFY_COMPLETE BT_EVT_BIT(7)
#define BT_EVT_MASK_NUM_COMPLETE_DATA_BLOCKS BT_EVT_BIT(8)
#define BT_EVT_MASK_AMP_START_TEST BT_EVT_BIT(9)
#define BT_EVT_MASK_AMP_TEST_END BT_EVT_BIT(10)
#define BT_EVT_MASK_AMP_RX_REPORT BT_EVT_BIT(11)
#define BT_EVT_MASK_AMP_SR_MODE_CHANGE_COMPLETE BT_EVT_BIT(12)
#define BT_EVT_MASK_AMP_STATUS_CHANGE BT_EVT_BIT(13)
#define BT_EVT_MASK_TRIGG_CLOCK_CAPTURE BT_EVT_BIT(14)
#define BT_EVT_MASK_SYNCH_TRAIN_COMPLETE BT_EVT_BIT(15)
#define BT_EVT_MASK_SYNCH_TRAIN_RX BT_EVT_BIT(16)
#define BT_EVT_MASK_CL_SLAVE_BC_RX BT_EVT_BIT(17)
#define BT_EVT_MASK_CL_SLAVE_BC_TIMEOUT BT_EVT_BIT(18)
#define BT_EVT_MASK_TRUNC_PAGE_COMPLETE BT_EVT_BIT(19)
#define BT_EVT_MASK_SLAVE_PAGE_RSP_TIMEOUT BT_EVT_BIT(20)
#define BT_EVT_MASK_CL_SLAVE_BC_CH_MAP_CHANGE BT_EVT_BIT(21)
#define BT_EVT_MASK_INQUIRY_RSP_NOT BT_EVT_BIT(22)
#define BT_EVT_MASK_AUTH_PAYLOAD_TIMEOUT_EXP BT_EVT_BIT(23)
#define BT_EVT_MASK_SAM_STATUS_CHANGE BT_EVT_BIT(24)
#define BT_EVT_MASK_LE_CONN_COMPLETE BT_EVT_BIT(0) #define BT_EVT_MASK_LE_CONN_COMPLETE BT_EVT_BIT(0)
#define BT_EVT_MASK_LE_ADVERTISING_REPORT BT_EVT_BIT(1) #define BT_EVT_MASK_LE_ADVERTISING_REPORT BT_EVT_BIT(1)
#define BT_EVT_MASK_LE_CONN_UPDATE_COMPLETE BT_EVT_BIT(2) #define BT_EVT_MASK_LE_CONN_UPDATE_COMPLETE BT_EVT_BIT(2)

View file

@ -1790,6 +1790,10 @@ static void auth_payload_timeout_exp(struct pdu_data *pdu_data, u16_t handle,
{ {
struct bt_hci_evt_auth_payload_timeout_exp *ep; struct bt_hci_evt_auth_payload_timeout_exp *ep;
if (!(event_mask_page_2 & BT_EVT_MASK_AUTH_PAYLOAD_TIMEOUT_EXP)) {
return;
}
evt_create(buf, BT_HCI_EVT_AUTH_PAYLOAD_TIMEOUT_EXP, sizeof(*ep)); evt_create(buf, BT_HCI_EVT_AUTH_PAYLOAD_TIMEOUT_EXP, sizeof(*ep));
ep = net_buf_add(buf, sizeof(*ep)); ep = net_buf_add(buf, sizeof(*ep));