#define UAM_DEVICE_ID_MAX_STRING_LEN 50
/**
- * @brief Max. device payload length.
+ * @brief Device's BLE payload length.
* @since_tizen 5.5
*/
-#define UAM_PAYLOAD_MAX_STRING_LEN 50
+#define UAM_BLE_PAYLOAD_STRING_LEN 31
/**
* @brief Max. IP address length.
char mac[UAM_MAC_ADDRESS_STRING_LEN]; /**< Device's MAC ADDRESS */
char ipv4_addr[UAM_IP_ADDRESS_MAX_STRING_LEN];/**< Device's IPv4 address optional */
char device_id[UAM_DEVICE_ID_MAX_STRING_LEN]; /**< Device's uniquie ID */
- char payload[UAM_PAYLOAD_MAX_STRING_LEN]; /**< Payload to scan ble devices*/
+ char payload[UAM_BLE_PAYLOAD_STRING_LEN + 1]; /**< Payload to scan ble devices*/
gboolean discriminant; /**< Determines whether to judge PRESENCE/ABSENCE */
long last_seen; /**< Latest timestamp when device was discoverd */
} uam_device_info_s;
UAM_WARN("device->num_addr = %d", device->num_addr);
device->device_id = g_strdup(dev->device_id);
- device->payload = g_strdup(dev->payload);
+ device->payload = g_memdup(dev->payload, UAM_BLE_PAYLOAD_STRING_LEN);
device->addr_list = g_new0(uas_address_info_t, device->num_addr);
if (mac) {
device->addr_list[i].type = type;
device->discriminant = dev->discriminant;
g_strlcpy(device->device_id, dev->device_id, UAM_DEVICE_ID_MAX_STRING_LEN);
- g_strlcpy(device->payload, dev->payload, UAM_PAYLOAD_MAX_STRING_LEN);
+ device->payload[UAM_BLE_PAYLOAD_STRING_LEN] = 0;
+ memcpy(device->payload, dev->payload, UAM_BLE_PAYLOAD_STRING_LEN);
for (i = 0; i < dev->num_addr; i++) {
UAM_DBG("Address[%d]: %s", i, dev->addr_list[i].address);
(*device_list)[indx].operating_system = db_info->os;
g_strlcpy((*device_list)[indx].device_id, db_info->device_id,
UAM_DEVICE_ID_MAX_STRING_LEN);
- g_strlcpy((*device_list)[indx].payload, tech->payload,
- UAM_PAYLOAD_MAX_STRING_LEN);
+
+ (*device_list)[indx].payload[UAM_BLE_PAYLOAD_STRING_LEN] = 0;
+ memcpy((*device_list)[indx].payload, tech->payload,
+ UAM_BLE_PAYLOAD_STRING_LEN);
(*device_list)[indx].discriminant = tech->discriminant;
(*device_list)[indx].last_seen = tech->timestamp;
(*device_list)[indx++].type = tech->tech_type;
UAM_DEVICE_ID_MAX_STRING_LEN);
device->type = tech->tech_type;
device->discriminant = tech->discriminant;
- g_strlcpy(device->payload, tech->payload,
- UAM_PAYLOAD_MAX_STRING_LEN);
+
+ device->payload[UAM_BLE_PAYLOAD_STRING_LEN] = 0;
+ memcpy(device->payload, tech->payload,
+ UAM_BLE_PAYLOAD_STRING_LEN);
FUNC_EXIT;
return UAM_ERROR_NONE;
tech->timestamp = timestamp;
tech->device = device;
tech->discriminant = dev_info->discriminant;
- tech->payload = g_strdup(dev_info->payload);
+ tech->payload = g_memdup(dev_info->payload, UAM_BLE_PAYLOAD_STRING_LEN);
tech->svc_list = svc_list;
g_slist_foreach(tech->svc_list, __print_service, tech);
UAM_DEVICE_ID_MAX_STRING_LEN);
(*device_list)[indx].last_seen = tech->timestamp;
(*device_list)[indx].discriminant = tech->discriminant;
- g_strlcpy((*device_list)[indx].payload, tech->payload,
- UAM_PAYLOAD_MAX_STRING_LEN);
+ (*device_list)[indx].payload[UAM_BLE_PAYLOAD_STRING_LEN] = 0;
+ memcpy((*device_list)[indx].payload, tech->payload,
+ UAM_BLE_PAYLOAD_STRING_LEN);
(*device_list)[indx++].type = tech->tech_type;
}
info->dev_info.operating_system = sqlite3_column_int(stmt, 6);
info->user_id = sqlite3_column_int(stmt, 7);
info->dev_info.discriminant = sqlite3_column_int(stmt, 8);
- g_strlcpy(info->dev_info.payload, (char *)sqlite3_column_text(stmt, 9),
- UAM_PAYLOAD_MAX_STRING_LEN);
+ info->dev_info.payload[UAM_BLE_PAYLOAD_STRING_LEN] = 0;
+ memcpy(info->dev_info.payload, (char *)sqlite3_column_text(stmt, 9),
+ UAM_BLE_PAYLOAD_STRING_LEN);
UAM_INFO("%s-%d-%s-%s-%ld-%d-%d-%d-%d-%s",
info->dev_info.device_id,
info->dev_info.operating_system = sqlite3_column_int(stmt, 6);
info->user_id = sqlite3_column_int(stmt, 7);
info->dev_info.discriminant = sqlite3_column_int(stmt, 8);
- g_strlcpy(info->dev_info.payload, (char *)sqlite3_column_text(stmt, 9),
- UAM_PAYLOAD_MAX_STRING_LEN);
+ info->dev_info.payload[UAM_BLE_PAYLOAD_STRING_LEN] = 0;
+ memcpy(info->dev_info.payload, (char *)sqlite3_column_text(stmt, 9),
+ UAM_BLE_PAYLOAD_STRING_LEN);
UAM_INFO("%s-%d-%s-%s-%ld-%d-%d-%d-%d-%s",
info->dev_info.device_id,