* @brief Device's BLE payload DEVICE_UID length.
* @since_tizen 5.5
*/
-#define UAM_BLE_PAYLOAD_DEVICE_UID_LEN 17
+#define UAM_BLE_PAYLOAD_DEVICE_UID_MAX_LEN 17
+
+/**
+ * @brief Device's BLE payload user_data max length.
+ * @since_tizen 6.0
+ */
+#define UAM_PAYLOAD_USER_DATA_MAX_LEN 17
/**
* @brief Max. BT MAC address length.
char primary_key; /** Primary Key */
char device_icon; /** Device icon */
char secondary_key; /** Purpose */
- char device_uid[UAM_BLE_PAYLOAD_DEVICE_UID_LEN + 1]; /** DEVICE_UID */
+ int device_uid_len; /** Device uid length */
+ char device_uid[UAM_BLE_PAYLOAD_DEVICE_UID_MAX_LEN + 1]; /** DEVICE_UID */
char bt_mac[UAM_BT_MAC_ADDRESS_STRING_LEN]; /** BT MAC Address */
+ char user_data[UAM_PAYLOAD_USER_DATA_MAX_LEN + 1]; /** User Data */
} uam_ble_payload_s;
/**
payload_number INTEGER PRIMARY KEY AUTOINCREMENT,
primary_key TEXT,
secondary_key TEXT,
+ device_uid_len INTEGER,
device_uid TEXT,
device_icon TEXT,
device_number INTEGER,
char primary_key; /** Primary key */
char device_icon; /** Device icon */
char secondary_key; /** Purpose */
+ int device_uid_len; /** Device uid length */
char *device_uid; /** DEVICE_UID */
+ char *user_data; /** User data */
char *bt_mac; /** BT MAC Address */
char *device_id; /**< Device ID */
uam_tech_type_e tech_type; /**< Connectivity type */
dst_payload->primary_key = src_payload->primary_key;
dst_payload->device_icon = src_payload->device_icon;
dst_payload->secondary_key = src_payload->secondary_key;
+ dst_payload->device_uid_len = src_payload->device_uid_len;
dst_payload->device_uid = g_memdup((src_payload->device_uid),
- UAM_BLE_PAYLOAD_DEVICE_UID_LEN);
+ src_payload->device_uid_len);
dst_payload->bt_mac = g_memdup((src_payload->bt_mac),
UAM_BT_MAC_ADDRESS_STRING_LEN);
}
- UAM_DBG("payload primary key: [%d]", dst_payload->primary_key);
}
void _pm_util_uas_payload_to_uam_payload(
dst_payload->primary_key = src_payload->primary_key;
dst_payload->device_icon = src_payload->device_icon;
dst_payload->secondary_key = src_payload->secondary_key;
+ dst_payload->device_uid_len = src_payload->device_uid_len;
+ memset(dst_payload->device_uid, 0, src_payload->device_uid_len);
+ memset(dst_payload->bt_mac, 0, UAM_BT_MAC_ADDRESS_STRING_LEN);
if (src_payload->device_uid)
memcpy(dst_payload->device_uid,
- src_payload->device_uid, UAM_BLE_PAYLOAD_DEVICE_UID_LEN);
+ src_payload->device_uid, src_payload->device_uid_len);
if (src_payload->bt_mac)
memcpy(dst_payload->bt_mac,
src_payload->bt_mac, UAM_BT_MAC_ADDRESS_STRING_LEN);
}
- UAM_DBG("payload primary key: [%d]", dst_payload->primary_key);
}
void _pm_util_uas_device_info_free(uas_device_info_t *device)
void __print_payload(uam_ble_payload_s *payload)
{
ret_if(NULL == payload);
- UAM_DBG("Payload primary key: [%d], secondary_key: [%d], device_icon: [%d]",
- payload->primary_key, payload->secondary_key, payload->device_icon);
- for (int i = 0; i < UAM_BLE_PAYLOAD_DEVICE_UID_LEN; i++)
+ UAM_DBG("Payload primary key: [%d], secondary_key: [%d], device_icon: [%d] " \
+ "device uid len: [%d]",
+ payload->primary_key, payload->secondary_key, payload->device_icon,
+ payload->device_uid_len);
+ for (int i = 0; i < payload->device_uid_len; i++)
UAM_DBG("Device uid [0x%2.2x]", payload->device_uid[i]);
}
dst_payload->primary_key = src_payload->primary_key;
dst_payload->device_icon = src_payload->device_icon;
dst_payload->secondary_key = src_payload->secondary_key;
- memset(dst_payload->device_uid, 0, UAM_BLE_PAYLOAD_DEVICE_UID_LEN + 1);
+ dst_payload->device_uid_len = src_payload->device_uid_len;
+ memset(dst_payload->device_uid, 0, src_payload->device_uid_len);
memset(dst_payload->bt_mac, 0, UAM_BT_MAC_ADDRESS_STRING_LEN);
if (src_payload->device_uid)
memcpy(dst_payload->device_uid,
- src_payload->device_uid, UAM_BLE_PAYLOAD_DEVICE_UID_LEN);
+ src_payload->device_uid, src_payload->device_uid_len);
if (src_payload->bt_mac)
memcpy(dst_payload->bt_mac,
src_payload->bt_mac, UAM_BT_MAC_ADDRESS_STRING_LEN);
dst_payload->primary_key = src_payload->primary_key;
dst_payload->device_icon = src_payload->device_icon;
dst_payload->secondary_key = src_payload->secondary_key;
+ dst_payload->device_uid_len = src_payload->device_uid_len;
dst_payload->device_uid = g_memdup(&(src_payload->device_uid),
- UAM_BLE_PAYLOAD_DEVICE_UID_LEN);
+ src_payload->device_uid_len);
dst_payload->bt_mac = g_memdup(&(src_payload->bt_mac),
UAM_BT_MAC_ADDRESS_STRING_LEN);
}
db_users = _uam_db_get_all_users();
if (!db_users) {
UAM_INFO_C("No users in database");
- }
- else {
+ } else {
for (l = db_users; NULL != l; l = g_slist_next(l)) {
db_user_info_t *info = l->data;
uam_db_user_info_t *user;
db_svc_list = _uam_service_db_get_all_services();
if (!db_svc_list) {
UAM_INFO_C("No services in database");
- }
- else {
+ } else {
for (l = db_svc_list; NULL != l; l = g_slist_next(l)) {
db_service_info_t *db_svc = l->data;
uam_db_service_info_t *service;
db_devices = _uam_device_db_get_all_devices();
if (!db_devices) {
UAM_INFO_C("No Devices registered in database");
- }
- else {
+ } else {
for (l = db_devices; NULL != l; l = g_slist_next(l)) {
db_device_info_t *db_info = l->data;
uam_db_user_info_t *user;
"payload_number INTEGER PRIMARY KEY AUTOINCREMENT, " \
"primary_key TEXT, " \
"secondary_key TEXT, " \
+ "device_uid_len INTEGER, " \
"device_uid TEXT, " \
"device_icon TEXT, " \
"device_number INTEGER, " \
buf = (char *)sqlite3_column_text(stmt, 7);
if (buf)
memcpy(info->payload_info.device_uid, buf,
- UAM_BLE_PAYLOAD_DEVICE_UID_LEN);
+ UAM_BLE_PAYLOAD_DEVICE_UID_MAX_LEN);
buf = (char *)sqlite3_column_text(stmt, 8);
info->payload_info.device_icon = buf ? *buf : 1;
#include "ua-manager-database.h"
#define SELECT_ALL_PAYLOADS "SELECT P.primary_key, P.secondary_key, " \
- "P.device_uid, P.device_icon, D.device_id, D.tech_type " \
- "FROM payloads as P JOIN devices as D USING(device_number)"
+ "P.device_uid_len, P.device_uid, P.device_icon, D.device_id, " \
+ "D.tech_type FROM payloads as P JOIN devices as D USING(device_number)"
#define SELECT_PAYLOAD_DEVICE "SELECT device_number FROM payloads " \
"where primary_key = ? AND secondary_key = ? AND device_uid = ?"
"where primary_key = ? AND secondary_key = ? AND device_uid = ?"
#define INSERT_PAYLOAD "insert into payloads (primary_key, " \
- "secondary_key, device_uid, device_icon, device_number)" \
+ "secondary_key, device_uid_len, device_uid, device_icon, device_number)" \
"values (?, ?, ?, ?, ?)"
#define DELETE_ALL_PAYLOADS "delete from payloads"
error_code, handle_error);
DB_ACTION(sqlite3_bind_text(stmt, 2, &(payload->secondary_key), 1, SQLITE_TRANSIENT),
error_code, handle_error);
- DB_ACTION(sqlite3_bind_text(stmt, 3, payload->device_uid, UAM_BLE_PAYLOAD_DEVICE_UID_LEN + 1, SQLITE_TRANSIENT),
+ DB_ACTION(sqlite3_bind_int(stmt, 3, payload->device_uid_len),
error_code, handle_error);
- DB_ACTION(sqlite3_bind_text(stmt, 4, &(payload->device_icon), 1, SQLITE_TRANSIENT),
+ DB_ACTION(sqlite3_bind_text(stmt, 4, payload->device_uid, payload->device_uid_len, SQLITE_TRANSIENT),
error_code, handle_error);
- DB_ACTION(sqlite3_bind_int(stmt, 5, device_number),
+ DB_ACTION(sqlite3_bind_text(stmt, 5, &(payload->device_icon), 1, SQLITE_TRANSIENT),
+ error_code, handle_error);
+ DB_ACTION(sqlite3_bind_int(stmt, 6, device_number),
error_code, handle_error);
sql_ret = sqlite3_step(stmt);
error_code, handle_error);
DB_ACTION(sqlite3_bind_text(stmt, 2, &(payload->secondary_key), 1, SQLITE_TRANSIENT),
error_code, handle_error);
- DB_ACTION(sqlite3_bind_text(stmt, 3, payload->device_uid, UAM_BLE_PAYLOAD_DEVICE_UID_LEN + 1, SQLITE_TRANSIENT),
+ DB_ACTION(sqlite3_bind_text(stmt, 3, payload->device_uid, UAM_BLE_PAYLOAD_DEVICE_UID_MAX_LEN + 1, SQLITE_TRANSIENT),
error_code, handle_error);
do {
error_code, handle_error);
DB_ACTION(sqlite3_bind_text(stmt, 2, &(payload->secondary_key), 1, SQLITE_TRANSIENT),
error_code, handle_error);
- DB_ACTION(sqlite3_bind_text(stmt, 3, payload->device_uid, UAM_BLE_PAYLOAD_DEVICE_UID_LEN + 1, SQLITE_TRANSIENT),
+ DB_ACTION(sqlite3_bind_text(stmt, 3, payload->device_uid, UAM_BLE_PAYLOAD_DEVICE_UID_MAX_LEN + 1, SQLITE_TRANSIENT),
error_code, handle_error);
do {
break;
case SQLITE_ROW:
info = g_new0(db_payload_info_t, 1);
- memset(info->payload_info.device_uid, 0, UAM_BLE_PAYLOAD_DEVICE_UID_LEN + 1);
+ memset(info->payload_info.device_uid, 0, UAM_BLE_PAYLOAD_DEVICE_UID_MAX_LEN + 1);
buf = (char *)sqlite3_column_text(stmt, 0);
info->payload_info.primary_key = buf ? *buf : 13;
buf = (char *)sqlite3_column_text(stmt, 1);
info->payload_info.secondary_key = buf ? *buf : 1;
- buf = (char *)sqlite3_column_text(stmt, 2);
+ info->payload_info.device_uid_len = sqlite3_column_int(stmt, 2);
+ buf = (char *)sqlite3_column_text(stmt, 3);
if (buf)
memcpy(info->payload_info.device_uid, buf,
- UAM_BLE_PAYLOAD_DEVICE_UID_LEN);
- buf = (char *)sqlite3_column_text(stmt, 3);
+ UAM_BLE_PAYLOAD_DEVICE_UID_MAX_LEN);
+ buf = (char *)sqlite3_column_text(stmt, 4);
info->payload_info.device_icon = buf ? *buf : 1;
- g_strlcpy(info->device_id, (char *)sqlite3_column_text(stmt, 4),
+ g_strlcpy(info->device_id, (char *)sqlite3_column_text(stmt, 5),
UAM_DEVICE_ID_MAX_STRING_LEN);
- info->type = sqlite3_column_int(stmt, 5);
+ info->type = sqlite3_column_int(stmt, 6);
UAM_INFO("primary key: %d secondary key: %d",
info->payload_info.primary_key,
char primary_key; /** Primary Key */
char device_icon; /** Device icon */
char secondary_key; /** Secondary key */
+ int device_uid_len; /** Device uid len */
char *device_uid; /** DEVICE_UID */
char *bt_mac; /** BT MAC Address */
+ char *user_data; /** User data */
} uas_payload_info_t;
/* Device information structure */