From 2dacb9de33fbe42bef0ec1a244558cb8f8a9d6ab Mon Sep 17 00:00:00 2001 From: schneider <schneider@blinkenlichts.net> Date: Sat, 30 Jan 2021 19:15:35 +0100 Subject: [PATCH] fix(mp-ble): Only process relevant ATT messages --- epicardium/ble/epic_att_api.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/epicardium/ble/epic_att_api.c b/epicardium/ble/epic_att_api.c index 62f51847a..751c02768 100644 --- a/epicardium/ble/epic_att_api.c +++ b/epicardium/ble/epic_att_api.c @@ -25,13 +25,15 @@ static int next_handle = ATTS_DYN_START_HANDLE; void ble_epic_att_api_event(attEvt_t *att_event) { - attEvt_t *e = WsfBufAlloc(sizeof(*e)); + if(att_event->handle >= ATTS_DYN_START_HANDLE && att_event->handle < next_handle) { + attEvt_t *e = WsfBufAlloc(sizeof(*e)); - if (e) { - memcpy(e, att_event, sizeof(*e)); - ble_epic_ble_api_trigger_event(BLE_EVENT_ATT_EVENT, e); - } else { - LOG_WARN("ble", "could not allocate att event"); + if (e) { + memcpy(e, att_event, sizeof(*e)); + ble_epic_ble_api_trigger_event(BLE_EVENT_ATT_EVENT, e); + } else { + LOG_WARN("ble", "could not allocate att event"); + } } } -- GitLab