if (in_data == NULL || data == NULL || data_len == NULL)
return BLUETOOTH_ERROR_INTERNAL;
- if (in_len < 0)
+ if (in_len <= 0)
return BLUETOOTH_ERROR_INTERNAL;
int i;
if (i > BLUETOOTH_ADVERTISING_DATA_LENGTH_MAX - 1
|| i + len > in_len
- || i + len > BLUETOOTH_ADVERTISING_DATA_LENGTH_MAX - 1) {
+ || i + len > BLUETOOTH_ADVERTISING_DATA_LENGTH_MAX) {
BT_ERR("Invalid advertising data");
return BLUETOOTH_ERROR_INTERNAL;
} else if (len == 0) {
name[data_len] = '\0';
g_free(data);
data = NULL;
- if (strncmp(filter_data->device_name,
- name, data_len) == 0) {
+ if (g_strrstr(name, filter_data->device_name) != NULL) {
BT_INFO("Device Name is matched in adv data.");
is_matched = TRUE;
}
name[data_len] = '\0';
g_free(data);
data = NULL;
- if (strncmp(filter_data->device_name,
- name, data_len) == 0) {
+ if (g_strrstr(name, filter_data->device_name) != NULL) {
BT_INFO("Device Name is matched in scan data.");
is_matched = TRUE;
}