Skip to content

Commit d0dd67a

Browse files
committed
RDKB-64347: Fixing coverity issues
Reason for change: Fixing high medium priority coverity issues. Test Procedure: Build should be successful and the regression test should also succeed.   Risks: Low Priority: P1 Signed-off-by: Velpula_Bharathi@comcast.com
1 parent 95f1db3 commit d0dd67a

File tree

9 files changed

+28
-17
lines changed

9 files changed

+28
-17
lines changed

lib/pktgen/pktgen.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ int onewifi_pktgen_is_running(void)
109109

110110
if (fgets(str, BUF_LEN_MAX, fp) != NULL)
111111
{
112-
if (sscanf(str, "Running: %s", run_if) == 1)
112+
if (sscanf(str, "Running: %31s", run_if) == 1)
113113
{
114114
LOGD("%s: Packetgen is already running on interface [%s].", __func__, run_if);
115115
retval = 1;

source/core/wifi_ctrl.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2950,7 +2950,7 @@ int get_sta_ssid_from_radio_config_by_radio_index(unsigned int radio_index, ssid
29502950
if (map->vap_array[i].vap_index == index) {
29512951
found = true;
29522952
wifi_util_error_print(WIFI_CTRL,"[%s %d] ssid name : %s\n", __func__, __LINE__, get_vap_ssid(&map->vap_array[i]));
2953-
strcpy(ssid, get_vap_ssid(&map->vap_array[i]));
2953+
snprintf(ssid, sizeof(ssid_t), "%s", get_vap_ssid(&map->vap_array[i]));
29542954
break;
29552955
}
29562956
}

source/core/wifi_ctrl_rbus_handlers.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2711,7 +2711,10 @@ bus_error_t get_sta_attribs(char *name, raw_data_t *p_data, bus_user_data_t *use
27112711
}
27122712
wifi_util_dbg_print(WIFI_CTRL, "%s bus property=%s\n", __FUNCTION__, name);
27132713

2714-
sscanf(name, "Device.WiFi.STA.%d.%s", &index, extension);
2714+
if (sscanf(name, "Device.WiFi.STA.%d.%63s", &index, extension) != 2 || index < 1) {
2715+
wifi_util_error_print(WIFI_CTRL, "%s Invalid property name format: %s\n", __FUNCTION__, name);
2716+
return bus_error_invalid_input;
2717+
}
27152718
if (index > getNumberRadios()) {
27162719
wifi_util_error_print(WIFI_CTRL, "%s Invalid index %d\n", __FUNCTION__, index);
27172720
return bus_error_invalid_operation;

source/core/wifi_mgr.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -140,8 +140,8 @@ int init_global_radio_config(rdk_wifi_radio_t *radios_cfg, UINT radio_index)
140140
radios_cfg->vaps.rdk_vap_array[vap_array_index].vap_index = wifi_hal_cap_obj->wifi_prop.interface_map[i].index;
141141
radios_cfg->vaps.vap_map.vap_array[vap_array_index].vap_index = wifi_hal_cap_obj->wifi_prop.interface_map[i].index;
142142
radios_cfg->vaps.vap_map.vap_array[vap_array_index].radio_index = radio_index;
143-
strcpy((char *)radios_cfg->vaps.rdk_vap_array[vap_array_index].vap_name, (char *)wifi_hal_cap_obj->wifi_prop.interface_map[i].vap_name);
144-
strcpy((char *)radios_cfg->vaps.vap_map.vap_array[vap_array_index].vap_name, (char *)wifi_hal_cap_obj->wifi_prop.interface_map[i].vap_name);
143+
snprintf((char *)radios_cfg->vaps.rdk_vap_array[vap_array_index].vap_name, sizeof(radios_cfg->vaps.rdk_vap_array[vap_array_index].vap_name), "%s", wifi_hal_cap_obj->wifi_prop.interface_map[i].vap_name);
144+
snprintf((char *)radios_cfg->vaps.vap_map.vap_array[vap_array_index].vap_name, sizeof(radios_cfg->vaps.vap_map.vap_array[vap_array_index].vap_name), "%s", wifi_hal_cap_obj->wifi_prop.interface_map[i].vap_name);
145145

146146
// allocate mutex on heap since rdk_vap_array can be copied
147147
associated_devices_lock = malloc(sizeof(pthread_mutex_t));
@@ -286,7 +286,7 @@ int init_wifimgr()
286286
get_wifidml_obj()->desc.set_dml_init_status_fn(false);
287287
#endif
288288

289-
sprintf(db_file, "%s/rdkb-wifi.db", WIFIDB_DIR);
289+
snprintf(db_file, sizeof(db_file), "%s/rdkb-wifi.db", WIFIDB_DIR);
290290
if (stat(db_file, &sb) != 0) {
291291
wifi_util_info_print(WIFI_MGR,"WiFiDB file not present FRcase\n");
292292
g_wifi_mgr.ctrl.factory_reset = true;

source/db/wifi_db_apis.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9759,7 +9759,8 @@ int get_wifi_last_reboot_reason_psm_value(char *last_reboot_reason)
97599759
memset(strValue, 0, sizeof(strValue));
97609760
str = p_ccsp_desc->psm_get_value_fn(LAST_REBOOT_REASON_NAMESPACE, strValue, sizeof(strValue));
97619761
if (str != NULL) {
9762-
strcpy(last_reboot_reason, str);
9762+
strncpy(last_reboot_reason, str, 31);
9763+
last_reboot_reason[31] = '\0';
97639764
wifi_util_dbg_print(WIFI_MGR,"str is %s and last_reboot_reason is %s\n", str, last_reboot_reason);
97649765
} else {
97659766
wifi_util_error_print(WIFI_MGR,"%s:%d last_reboot_reason:%s \r\n", __func__, __LINE__, last_reboot_reason);

source/dml/tr_181/ml/cosa_wifi_dml.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8650,7 +8650,7 @@ Security_GetParamStringValue
86508650
/* collect value */
86518651
char buf[32] = {0};
86528652
if ( AnscSizeOfString(buf) < *pUlSize) {
8653-
getSecurityStringFromInt(pcfg->mode, buf);
8653+
getSecurityStringFromInt(pcfg->mode, buf, sizeof(buf));
86548654
AnscCopyString(pValue, buf);
86558655
} else {
86568656
*pUlSize = AnscSizeOfString(buf) + 1;

source/dml/tr_181/sbapi/cosa_wifi_apis.c

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -432,21 +432,28 @@ INT getTxDataRateFromInt(wifi_bitrate_t DataTxRate, char *DataTxRateStr)
432432
return 0;
433433
}
434434

435-
INT getSecurityStringFromInt(wifi_security_modes_t securityType, char *securityName)
435+
INT getSecurityStringFromInt(wifi_security_modes_t securityType, char *securityName, size_t bufSize)
436436
{
437437
unsigned int i;
438+
size_t len;
439+
440+
if (securityName == NULL || bufSize == 0) {
441+
CcspWifiTrace(("RDK_LOG_ERROR, %s Invalid input parameters\n", __func__));
442+
return 0;
443+
}
444+
438445
for (i = 0 ; i < ARRAY_SZ(wifiSecMap) ; ++i)
439446
{
440447
if(securityType == wifiSecMap[i].halSecCfgMethod)
441448
{
442-
if (AnscSizeOfString(securityName) != 0)
449+
len = strlen(securityName);
450+
if (len > 0)
443451
{
444-
strcat(securityName, ",");
445-
strcat(securityName, wifiSecMap[i].wifiSecType);
452+
snprintf(securityName + len, bufSize - len, ",%s", wifiSecMap[i].wifiSecType);
446453
}
447454
else
448455
{
449-
strcpy(securityName, wifiSecMap[i].wifiSecType);
456+
snprintf(securityName, bufSize, "%s", wifiSecMap[i].wifiSecType);
450457
}
451458
}
452459
}

source/sampleapps/webconfig_consumer_apis.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2459,15 +2459,15 @@ void webconfig_consumer_sta_conn_status(rbusHandle_t handle, rbusEvent_t const*
24592459
conn_status = (sta_conn_info.connect_status == wifi_connection_status_connected) ? true:false;
24602460
if (conn_status == true) {
24612461
printf("%s:%d: Station successfully connected with external AP radio:%d\r\n",
2462-
__func__, __LINE__, index - 1);
2462+
__func__, __LINE__, (index > 0) ? (index - 1) : 0);
24632463
if (index == 1) {
24642464
get_rbus_sta_interface_name(WIFI_STA_2G_INTERFACE_NAME);
24652465
} else if (index == 2) {
24662466
get_rbus_sta_interface_name(WIFI_STA_5G_INTERFACE_NAME);
24672467
}
24682468
} else {
24692469
printf("%s:%d: Station disconnected with external AP:%d radio:%d\r\n",
2470-
__func__, __LINE__, conn_status, index - 1);
2470+
__func__, __LINE__, conn_status, (index > 0) ? (index - 1) : 0);
24712471
}
24722472
printf("%s:%d: MAC address info:%s\r\n", __func__, __LINE__, to_mac_str(sta_conn_info.bssid, mac_str));
24732473

source/stats/wifi_monitor.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3466,14 +3466,14 @@ void notify_radius_endpoint_change(radius_fallback_and_failover_data_t *radius_d
34663466
if (vapSecurity != NULL) {
34673467
if(radius_data->radius_switch_reason == RADIUS_FAILOVER){
34683468
#ifndef WIFI_HAL_VERSION_3_PHASE2
3469-
strcpy((char*)vapSecurity->u.radius.connectedendpoint,(char*)vapSecurity->u.radius.s_ip);
3469+
snprintf((char*)vapSecurity->u.radius.connectedendpoint, sizeof(vapSecurity->u.radius.connectedendpoint), "%s", (char*)vapSecurity->u.radius.s_ip);
34703470
#else
34713471
vapSecurity->u.radius.connectedendpoint = vapSecurity->u.radius.s_ip;
34723472
#endif
34733473
}
34743474
else {
34753475
#ifndef WIFI_HAL_VERSION_3_PHASE2
3476-
strcpy((char*)vapSecurity->u.radius.connectedendpoint,(char*)vapSecurity->u.radius.ip);
3476+
snprintf((char*)vapSecurity->u.radius.connectedendpoint, sizeof(vapSecurity->u.radius.connectedendpoint), "%s", (char*)vapSecurity->u.radius.ip);
34773477
#else
34783478
vapSecurity->u.radius.connectedendpoint = vapSecurity->u.radius.ip;
34793479
#endif

0 commit comments

Comments
 (0)