int err = 0;
filename = btd_device_get_storage_path(device, "ccc");
+ if (!filename) {
+ warn("Unable to get ccc storage path for device");
+ return -ENOENT;
+ }
key_file = g_key_file_new();
g_key_file_load_from_file(key_file, filename, 0, NULL);
gsize length = 0;
filename = btd_device_get_storage_path(channel->device, "ccc");
+ if (!filename) {
+ warn("Unable to get ccc storage path for device");
+ return enc_error_resp(ATT_OP_WRITE_REQ, handle,
+ ATT_ECODE_WRITE_NOT_PERM,
+ pdu, len);
+ }
key_file = g_key_file_new();
g_key_file_load_from_file(key_file, filename, 0, NULL);
char *filename;
filename = btd_device_get_storage_path(device, "ccc");
- unlink(filename);
- g_free(filename);
+ if (filename) {
+ unlink(filename);
+ g_free(filename);
+ }
}
if (cid != ATT_CID) {