From b5fa022824d1f1f1d5e1a604c1a34175529ed8e3 Mon Sep 17 00:00:00 2001 From: Anuj Jain Date: Wed, 14 Feb 2024 15:00:29 +0530 Subject: [PATCH] This patch fixes svace issues Change-Id: I4ab8ad5e2e159c00e3529c6561c30b4427f7be49 Signed-off-by: Anuj Jain --- src/bluetooth-common.c | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/src/bluetooth-common.c b/src/bluetooth-common.c index a014f46..0fd8102 100644 --- a/src/bluetooth-common.c +++ b/src/bluetooth-common.c @@ -4716,7 +4716,10 @@ static int __bt_get_bt_adapter_device_discovery_info_s(bt_adapter_device_discove (*discovery_info)->manufacturer_data_len = source_info->manufacturer_data.data_len; if ((*discovery_info)->manufacturer_data_len > 0) { (*discovery_info)->manufacturer_data = malloc(source_info->manufacturer_data.data_len); - memcpy((*discovery_info)->manufacturer_data, source_info->manufacturer_data.data, source_info->manufacturer_data.data_len); + if ((*discovery_info)->manufacturer_data) + memcpy((*discovery_info)->manufacturer_data, source_info->manufacturer_data.data, source_info->manufacturer_data.data_len); + else + return BT_ERROR_OUT_OF_MEMORY; } else { (*discovery_info)->manufacturer_data = NULL; } @@ -4772,7 +4775,10 @@ static int __bt_get_bt_adapter_le_device_scan_info_s( (*scan_info)->adv_data_len = source_info->adv_ind_data.data_len; if ((*scan_info)->adv_data_len > 0) { (*scan_info)->adv_data = malloc(source_info->adv_ind_data.data_len); - memcpy((*scan_info)->adv_data, source_info->adv_ind_data.data.data, source_info->adv_ind_data.data_len); + if ((*scan_info)->adv_data) + memcpy((*scan_info)->adv_data, source_info->adv_ind_data.data.data, source_info->adv_ind_data.data_len); + else + return BT_ERROR_OUT_OF_MEMORY; } else { (*scan_info)->adv_data = NULL; /* LCOV_EXCL_LINE */ } @@ -4780,7 +4786,10 @@ static int __bt_get_bt_adapter_le_device_scan_info_s( (*scan_info)->scan_data_len = source_info->scan_resp_data.data_len; if ((*scan_info)->scan_data_len > 0) { (*scan_info)->scan_data = malloc(source_info->scan_resp_data.data_len); /* LCOV_EXCL_LINE */ - memcpy((*scan_info)->scan_data, source_info->scan_resp_data.data.data, source_info->scan_resp_data.data_len); /* LCOV_EXCL_LINE */ + if ((*scan_info)->scan_data) + memcpy((*scan_info)->scan_data, source_info->scan_resp_data.data.data, source_info->scan_resp_data.data_len); /* LCOV_EXCL_LINE */ + else + return BT_ERROR_OUT_OF_MEMORY; } else { (*scan_info)->scan_data = NULL; } @@ -4816,7 +4825,10 @@ static int __bt_get_bt_adapter_le_new_device_scan_info_s( if ((*scan_info)->legacy_scan_result->adv_data_len > 0) { (*scan_info)->legacy_scan_result->adv_data = malloc(source_info->adv_ind_data.data_len); - memcpy((*scan_info)->legacy_scan_result->adv_data, source_info->adv_ind_data.data.data, source_info->adv_ind_data.data_len); + if ((*scan_info)->legacy_scan_result->adv_data) + memcpy((*scan_info)->legacy_scan_result->adv_data, source_info->adv_ind_data.data.data, source_info->adv_ind_data.data_len); + else + return BT_ERROR_OUT_OF_MEMORY; } else { (*scan_info)->legacy_scan_result->adv_data = NULL; /* LCOV_EXCL_LINE */ } @@ -4824,7 +4836,10 @@ static int __bt_get_bt_adapter_le_new_device_scan_info_s( (*scan_info)->legacy_scan_result->scan_data_len = source_info->scan_resp_data.data_len; if ((*scan_info)->legacy_scan_result->scan_data_len > 0) { (*scan_info)->legacy_scan_result->scan_data = malloc(source_info->scan_resp_data.data_len); /* LCOV_EXCL_LINE */ - memcpy((*scan_info)->legacy_scan_result->scan_data, source_info->scan_resp_data.data.data, source_info->scan_resp_data.data_len); /* LCOV_EXCL_LINE */ + if ((*scan_info)->legacy_scan_result->scan_data) + memcpy((*scan_info)->legacy_scan_result->scan_data, source_info->scan_resp_data.data.data, source_info->scan_resp_data.data_len); /* LCOV_EXCL_LINE */ + else + return BT_ERROR_OUT_OF_MEMORY; } else { (*scan_info)->legacy_scan_result->scan_data = NULL; } -- 2.34.1