From 75cbd2ba54c2620152b22c933c00b88e7cb74489 Mon Sep 17 00:00:00 2001 From: Andrzej Kaczmarek Date: Tue, 16 Jan 2018 12:35:24 +0100 Subject: [PATCH] nimble/ll: Fix calculation of scan rsp length This makes use of symbols to make calculations clear. X-Original-Commit: a5f69610529dad2dd5827301edfe433597cf2eb8 --- nimble/controller/src/ble_ll_adv.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/nimble/controller/src/ble_ll_adv.c b/nimble/controller/src/ble_ll_adv.c index a48b2629d..82ee24f56 100644 --- a/nimble/controller/src/ble_ll_adv.c +++ b/nimble/controller/src/ble_ll_adv.c @@ -633,19 +633,14 @@ ble_ll_adv_scan_rsp_pdu_make(struct ble_ll_adv_sm *advsm) return ble_ll_adv_scan_rsp_legacy_pdu_make(advsm); } - /* ext hdr len + SCAN_RSP */ - pdulen = 1 + advsm->scan_rsp_len; - - /* flags, adva and optional TX power */ - ext_hdr_len = 1 + BLE_LL_EXT_ADV_ADVA_SIZE; + ext_hdr_len = BLE_LL_EXT_ADV_FLAGS_SIZE + BLE_LL_EXT_ADV_ADVA_SIZE; ext_hdr_flags = (1 << BLE_LL_EXT_ADV_ADVA_BIT); if (advsm->props & BLE_HCI_LE_SET_EXT_ADV_PROP_INC_TX_PWR) { ext_hdr_len += BLE_LL_EXT_ADV_TX_POWER_SIZE; - ext_hdr_len += BLE_LL_EXT_ADV_TX_POWER_SIZE; } - pdulen += ext_hdr_len; + pdulen = BLE_LL_EXT_ADV_HDR_LEN + ext_hdr_len + advsm->scan_rsp_len; /* Obtain scan response buffer */ m = os_msys_get_pkthdr(pdulen, sizeof(struct ble_mbuf_hdr));