From: Tedd Ho-Jeong An Date: Mon, 18 Oct 2021 17:28:27 +0000 (-0700) Subject: attrib-server: Fix unchecked return value X-Git-Tag: submit/tizen/20220313.220938~84 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0322216c7b069c0e1eb7aebfa7351197399729eb;p=platform%2Fupstream%2Fbluez.git attrib-server: Fix unchecked return value This patch fixes the unchecked return value(CWE-252) issues reported by the Coverity. Signed-off-by: Anuj Jain Signed-off-by: Ayush Garg --- diff --git a/src/attrib-server.c b/src/attrib-server.c index 17ed61f..070e328 100755 --- a/src/attrib-server.c +++ b/src/attrib-server.c @@ -797,6 +797,7 @@ static int read_device_ccc(struct btd_device *device, uint16_t handle, { char *filename; GKeyFile *key_file; + GError *gerr = NULL; char group[6]; char *str; unsigned int config; @@ -809,7 +810,11 @@ static int read_device_ccc(struct btd_device *device, uint16_t handle, } key_file = g_key_file_new(); - g_key_file_load_from_file(key_file, filename, 0, NULL); + if (!g_key_file_load_from_file(key_file, filename, 0, &gerr)) { + error("Unable to load key file from %s: (%s)", filename, + gerr->message); + g_error_free(gerr); + } sprintf(group, "%hu", handle); @@ -912,6 +917,7 @@ static uint16_t write_value(struct gatt_channel *channel, uint16_t handle, struct attribute *a; uint8_t status; GList *l; + GError *gerr = NULL; guint h = handle; l = g_list_find_custom(channel->server->database, @@ -956,7 +962,11 @@ static uint16_t write_value(struct gatt_channel *channel, uint16_t handle, } key_file = g_key_file_new(); - g_key_file_load_from_file(key_file, filename, 0, NULL); + if (!g_key_file_load_from_file(key_file, filename, 0, &gerr)) { + error("Unable to load key file from %s: (%s)", filename, + gerr->message); + g_error_free(gerr); + } sprintf(group, "%hu", handle); sprintf(value, "%hX", cccval); @@ -965,7 +975,12 @@ static uint16_t write_value(struct gatt_channel *channel, uint16_t handle, data = g_key_file_to_data(key_file, &length, NULL); if (length > 0) { create_file(filename, 0600); - g_file_set_contents(filename, data, length, NULL); + if (!g_file_set_contents(filename, data, length, + &gerr)) { + error("Unable set contents for %s: (%s)", + filename, gerr->message); + g_error_free(gerr); + } } #ifdef TIZEN_FEATURE_BLUEZ_MODIFY @@ -982,7 +997,11 @@ static uint16_t write_value(struct gatt_channel *channel, uint16_t handle, g_key_file_free(key_file); key_file = g_key_file_new(); - g_key_file_load_from_file(key_file, filename, 0, NULL); + if (!g_key_file_load_from_file(key_file, filename, 0, &gerr)) { + error("Unable to load key file from %s: (%s)", filename, + gerr->message); + g_error_free(gerr); + } memset(&group, 0x00, 6); memset(&value, 0x00, 5); @@ -994,7 +1013,12 @@ static uint16_t write_value(struct gatt_channel *channel, uint16_t handle, data = g_key_file_to_data(key_file, &length, NULL); if (length > 0) { create_file(filename, S_IRUSR | S_IWUSR); - g_file_set_contents(filename, data, length, NULL); + if (!g_file_set_contents(filename, data, length, + &gerr)) { + error("Unable set contents for %s: (%s)", + filename, gerr->message); + g_error_free(gerr); + } } #endif