From 6c70262a0401c532a30faabdb2d62ba9214a5912 Mon Sep 17 00:00:00 2001 From: Juha Heiskanen Date: Tue, 2 Jul 2019 10:40:47 +0300 Subject: [PATCH] Wi-sun LLC update Over header worstcase added brodacast shedule added length. Add lowopan interface user to add broadcast shedule to broadcast packet. Change-Id: I628089b49935f05a79d95a758536fcd59ae0a6b1 --- source/6LoWPAN/ws/ws_llc_data_service.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/source/6LoWPAN/ws/ws_llc_data_service.c b/source/6LoWPAN/ws/ws_llc_data_service.c index f2b59af50558..53b2a9e9e93b 100644 --- a/source/6LoWPAN/ws/ws_llc_data_service.c +++ b/source/6LoWPAN/ws/ws_llc_data_service.c @@ -635,7 +635,7 @@ static uint16_t ws_mpx_header_size_get(llc_data_base_t *base, uint16_t user_id) } //Dynamic length - header_size += 2 + WS_WP_SUB_IE_ELEMENT_HEADER_LENGTH + ws_wp_nested_hopping_schedule_length(base->ie_params.hopping_schedule, true); + header_size += 2 + WS_WP_SUB_IE_ELEMENT_HEADER_LENGTH + ws_wp_nested_hopping_schedule_length(base->ie_params.hopping_schedule, true) + ws_wp_nested_hopping_schedule_length(base->ie_params.hopping_schedule, false); } else if (MPX_KEY_MANAGEMENT_ENC_USER_ID) { header_size += 7 + 5 + 2; @@ -704,6 +704,11 @@ static void ws_llc_mpx_data_request(const mpx_api_t *api, const struct mcps_data if (base->ie_params.vendor_payload_length) { nested_wp_id.vp_ie = true; } + + if (!data->TxAckReq) { + nested_wp_id.bs_ie = true; + } + } else if (user_id == MPX_KEY_MANAGEMENT_ENC_USER_ID) { ie_header_mask.bt_ie = ws_eapol_relay_state_active(base->interface_ptr); ie_header_mask.ea_ie = ws_eapol_handshake_first_msg(data->msdu, data->msduLength, base->interface_ptr);