From fb967d41b610096ef179b45cf85123de39c5665e Mon Sep 17 00:00:00 2001
From: mtk20656 <chank.chen@mediatek.com>
Date: Mon, 24 Jul 2023 11:30:27 +0800
Subject: [PATCH 35/35] hostapd: mtk: add extension IE list for non-inherit IE
 in mbssid

Certain clients do not scan all non tx profiles due to absence of
element ID extension list which is mandatory field in non inheritance
IE. Non inheritance Element ID is followed by extension element ID.
Length is expected to be mentioned. Currently we do not support any
extension element and hence filling length as 0.

Signed-off-by: mtk20656 <chank.chen@mediatek.com>
---
 src/ap/ieee802_11.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/src/ap/ieee802_11.c b/src/ap/ieee802_11.c
index 30bfa30..f866b8a 100644
--- a/src/ap/ieee802_11.c
+++ b/src/ap/ieee802_11.c
@@ -7657,7 +7657,7 @@ static size_t hostapd_eid_mbssid_elem_len(struct hostapd_data *hapd,
 		else if (hapd->conf->xrates_supported)
 			ie_count++;
 		if (ie_count)
-			nontx_profile_len += (4 + ie_count);
+			nontx_profile_len += (5 + ie_count);
 
 		if ((len + nontx_profile_len) > 255)
 			goto mbssid_too_big;
@@ -7792,11 +7792,16 @@ static u8 * hostapd_eid_mbssid_elem(struct hostapd_data *hapd, u8 *eid, u8 *end,
 		}
 		if (ie_count) {
 			*eid++ = WLAN_EID_EXTENSION;
-			*eid++ = 2 + ie_count;
+			*eid++ = 3 + ie_count;
 			*eid++ = WLAN_EID_EXT_NON_INHERITANCE;
 			*eid++ = ie_count;
 			os_memcpy(eid, non_inherit_ie, ie_count);
 			eid += ie_count;
+			/* Element ID extension list is mandatory part of non inheritance IE.
+			 * It has a length field followed by extension IEs. Currently no
+			 * extension IEs are supported so filling length as 0.
+			 */
+			*eid++ = 0;
 		}
 
 		*eid_len_pos = (eid - eid_len_pos) - 1;
-- 
2.18.0

