From e928f4599c37f6c39554b6b086a122a0c1c9c05e Mon Sep 17 00:00:00 2001 From: chen yi wen <15068825070@163.com> Date: Wed, 23 Jul 2025 06:42:17 +0000 Subject: [PATCH 1/6] 1 Signed-off-by: chen yi wen <15068825070@163.com> --- .../client/hdi_client/hdi_interface/wifi_hdi_util.c | 4 ++++ .../client/hdi_client/hdi_interface/wifi_hdi_wpa_proxy.c | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_util.c b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_util.c index 8e15c7677..06dfb77f4 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_util.c +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_util.c @@ -435,6 +435,10 @@ static void GetInfoElems(int length, int end, char *srcBuf, ScanInfo *pcmd) } len = last - start - 1; infoElemsTemp[infoElemsSize].size = len/lenValue; + if ((len / lenValue + 1) <= 0) { + LOGI("GetInfoElems len= %{public}d", len); + break; + } infoElemsTemp[infoElemsSize].content = (char *)calloc(len/lenValue+1, sizeof(char)); if (infoElemsTemp[infoElemsSize].content == NULL) { break; diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_wpa_proxy.c b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_wpa_proxy.c index d226d1540..2d824ca39 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_wpa_proxy.c +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_wpa_proxy.c @@ -585,7 +585,7 @@ WifiErrorNo CopyConfigFile(const char* configName) } char path[PATH_NUM][BUFF_SIZE] = {"/system/etc/wifi/", "/vendor/etc/wifi/"}; for (int i = 0; i != PATH_NUM; ++i) { - if (strcat_s(path[i], sizeof(path[i]), configName) != EOK) { + if (strcat_s(path[i], strlen(path[i]), configName) != EOK) { LOGE("strcat_s failed."); return WIFI_HAL_OPT_FAILED; } -- Gitee From 010bfe196bf38c9a0338df5954ec0829008733eb Mon Sep 17 00:00:00 2001 From: chen yi wen <15068825070@163.com> Date: Wed, 23 Jul 2025 08:38:11 +0000 Subject: [PATCH 2/6] /client/hdi_client/hdi_interface/wifi_hdi_util.c. Signed-off-by: chen yi wen <15068825070@163.com> --- .../wifi_native/client/hdi_client/hdi_interface/wifi_hdi_util.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_util.c b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_util.c index 06dfb77f4..e52fe613e 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_util.c +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_util.c @@ -436,7 +436,7 @@ static void GetInfoElems(int length, int end, char *srcBuf, ScanInfo *pcmd) len = last - start - 1; infoElemsTemp[infoElemsSize].size = len/lenValue; if ((len / lenValue + 1) <= 0) { - LOGI("GetInfoElems len= %{public}d", len); + LOGE("GetInfoElems len is error"); break; } infoElemsTemp[infoElemsSize].content = (char *)calloc(len/lenValue+1, sizeof(char)); -- Gitee From f63dc0c4f857bf48aba223f8bad5d46d6da98b3e Mon Sep 17 00:00:00 2001 From: chen yi wen <15068825070@163.com> Date: Thu, 24 Jul 2025 02:16:53 +0000 Subject: [PATCH 3/6] /wifi_hdi_wpa_proxy.c. Signed-off-by: chen yi wen <15068825070@163.com> --- .../client/hdi_client/hdi_interface/wifi_hdi_wpa_proxy.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_wpa_proxy.c b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_wpa_proxy.c index 2d824ca39..d226d1540 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_wpa_proxy.c +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_wpa_proxy.c @@ -585,7 +585,7 @@ WifiErrorNo CopyConfigFile(const char* configName) } char path[PATH_NUM][BUFF_SIZE] = {"/system/etc/wifi/", "/vendor/etc/wifi/"}; for (int i = 0; i != PATH_NUM; ++i) { - if (strcat_s(path[i], strlen(path[i]), configName) != EOK) { + if (strcat_s(path[i], sizeof(path[i]), configName) != EOK) { LOGE("strcat_s failed."); return WIFI_HAL_OPT_FAILED; } -- Gitee From 937f7c215ce4f148cb28d6cff7e30e922f78ae4d Mon Sep 17 00:00:00 2001 From: chen yi wen <15068825070@163.com> Date: Fri, 25 Jul 2025 06:45:38 +0000 Subject: [PATCH 4/6] 1 Signed-off-by: chen yi wen <15068825070@163.com> --- .../wifi_native/client/hdi_client/hdi_interface/wifi_hdi_util.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_util.c b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_util.c index e52fe613e..3ce32b9e6 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_util.c +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_util.c @@ -1056,7 +1056,7 @@ int GetScanResultText(const struct WifiScanResultExt *scanResult, } pos = buf; - end = buf + bufLen; + end = buf + bufLen -1; ret = HdiTxtPrintf(pos, end - pos, MACSTR "\t%d\t%d\t", MAC2STR(scanResult->bssid), scanResult->freq, scanResult->level); -- Gitee From 8a8aae7f9d9b8b2afcfc7aae313918b3a9662e96 Mon Sep 17 00:00:00 2001 From: chen yi wen <15068825070@163.com> Date: Fri, 25 Jul 2025 06:46:23 +0000 Subject: [PATCH 5/6] 1 Signed-off-by: chen yi wen <15068825070@163.com> --- .../client/hdi_client/hdi_interface/wifi_hdi_wpa_proxy.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_wpa_proxy.c b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_wpa_proxy.c index d226d1540..e40831a99 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_wpa_proxy.c +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/client/hdi_client/hdi_interface/wifi_hdi_wpa_proxy.c @@ -822,7 +822,7 @@ WifiErrorNo SetHdiApIfaceName(const char *ifaceName) return WIFI_HAL_OPT_FAILED; } - if (strncmp(ifaceName, AP_IFNAME_COEX, IFACENAME_LEN -1) == 0) { + if (strncmp(ifaceName, AP_IFNAME_COEX, strlen(AP_IFNAME_COEX)) == 0) { if (strcpy_s(g_apCfgName, CFGNAME_LEN, WIFI_COEX_CFG) != EOK || strcpy_s(g_apIfaceName, IFACENAME_LEN, AP_IFNAME_COEX) != EOK || strcpy_s(g_hostapdCfg, CTRL_LEN, HOSTAPD_DEFAULT_CFG_COEX) != EOK) { -- Gitee From 6695a055243634c71b6cd6e9536522610882a743 Mon Sep 17 00:00:00 2001 From: chen yi wen <15068825070@163.com> Date: Fri, 25 Jul 2025 06:46:27 +0000 Subject: [PATCH 6/6] 1 Signed-off-by: chen yi wen <15068825070@163.com> --- .../wifi_native/wifi_hal_interface/wifi_sta_hal_interface.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/wifi_hal_interface/wifi_sta_hal_interface.cpp b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/wifi_hal_interface/wifi_sta_hal_interface.cpp index f9d409859..8c50b9a9d 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/wifi_hal_interface/wifi_sta_hal_interface.cpp +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_native/wifi_hal_interface/wifi_sta_hal_interface.cpp @@ -312,8 +312,7 @@ static void ParseScanInfo(std::vector &scanResultsInfo, std::ve WifiScanResultExt wifiScanResultExt = {0}; ConvertScanResultsInfo(wifiScanResultExt, scanResult); char buff[HDI_SCAN_RESULTS_MAX_LEN] = {0}; - int buffLen = HDI_SCAN_RESULTS_MAX_LEN; - buffLen = GetScanResultText(&wifiScanResultExt, &elems, buff, buffLen); + int buffLen = GetScanResultText(&wifiScanResultExt, &elems, buff, HDI_SCAN_RESULTS_MAX_LEN); ScanInfo scanInfo; if (memset_s(&scanInfo, sizeof(scanInfo), 0, sizeof(scanInfo)) != EOK) { LOGE("%{public}s: memset_s is failed", __func__); -- Gitee