net: lib: lwm2m: Replace deprecated function calls

Replace calls to deprecated functions with new ones.

Signed-off-by: Jarno Lämsä <jarno.lamsa@nordicsemi.no>
This commit is contained in:
Jarno Lämsä 2023-01-05 11:35:39 +02:00 committed by Carles Cufí
commit abafd7e810
10 changed files with 96 additions and 130 deletions

View file

@ -100,7 +100,8 @@ static int get_buzzer_index(uint16_t obj_inst_id)
static int start_buzzer(struct ipso_buzzer_data *buzzer)
{
uint32_t temp = 0U;
char path[MAX_RESOURCE_LEN];
struct lwm2m_obj_path path = LWM2M_OBJ(IPSO_OBJECT_BUZZER_ID, buzzer->obj_inst_id,
DIGITAL_INPUT_STATE_RID);
/* make sure buzzer is currently not active */
if (buzzer->active) {
@ -116,9 +117,7 @@ static int start_buzzer(struct ipso_buzzer_data *buzzer)
/* TODO: check delay_duration > 0 */
buzzer->trigger_offset = k_uptime_get();
snprintk(path, MAX_RESOURCE_LEN, "%d/%u/%d", IPSO_OBJECT_BUZZER_ID,
buzzer->obj_inst_id, DIGITAL_INPUT_STATE_RID);
lwm2m_engine_set_bool(path, true);
lwm2m_set_bool(&path, true);
temp = (uint32_t)(buzzer->delay_duration * MSEC_PER_SEC);
k_work_reschedule(&buzzer->buzzer_work, K_MSEC(temp));
@ -128,16 +127,15 @@ static int start_buzzer(struct ipso_buzzer_data *buzzer)
static int stop_buzzer(struct ipso_buzzer_data *buzzer, bool cancel)
{
char path[MAX_RESOURCE_LEN];
struct lwm2m_obj_path path = LWM2M_OBJ(IPSO_OBJECT_BUZZER_ID, buzzer->obj_inst_id,
DIGITAL_INPUT_STATE_RID);
/* make sure buzzer is currently active */
if (!buzzer->active) {
return -EINVAL;
}
snprintk(path, MAX_RESOURCE_LEN, "%d/%u/%d", IPSO_OBJECT_BUZZER_ID,
buzzer->obj_inst_id, DIGITAL_INPUT_STATE_RID);
lwm2m_engine_set_bool(path, false);
lwm2m_set_bool(&path, false);
if (cancel) {
k_work_cancel_delayable(&buzzer->buzzer_work);

View file

@ -88,7 +88,6 @@ static int state_post_write_cb(uint16_t obj_inst_id,
bool last_block, size_t total_size)
{
int i;
char path[MAX_RESOURCE_LEN];
i = get_button_index(obj_inst_id);
if (i < 0) {
@ -98,17 +97,16 @@ static int state_post_write_cb(uint16_t obj_inst_id,
if (button_data[i].state && !button_data[i].last_state) {
/* off to on transition, increment the counter */
int64_t counter = button_data[i].counter + 1;
struct lwm2m_obj_path path = LWM2M_OBJ(IPSO_OBJECT_PUSH_BUTTON_ID, obj_inst_id,
DIGITAL_INPUT_COUNTER_RID);
if (counter < 0) {
counter = 0;
}
snprintk(path, sizeof(path), "%u/%u/%u",
IPSO_OBJECT_PUSH_BUTTON_ID, obj_inst_id,
DIGITAL_INPUT_COUNTER_RID);
if (lwm2m_engine_set_s64(path, counter) < 0) {
LOG_ERR("Failed to increment counter resource %s", path);
if (lwm2m_set_s64(&path, counter) < 0) {
LOG_ERR("Failed to increment counter resource %d/%d/%d", path.obj_id,
path.obj_inst_id, path.res_id);
}
}

View file

@ -104,7 +104,8 @@ static int get_timer_index(uint16_t obj_inst_id)
static int start_timer(struct ipso_timer_data *timer)
{
uint32_t temp = 0U;
char path[MAX_RESOURCE_LEN];
struct lwm2m_obj_path path = LWM2M_OBJ(IPSO_OBJECT_TIMER_ID, timer->obj_inst_id,
DIGITAL_STATE_RID);
/* make sure timer is enabled and not already active */
if (timer->timer_mode == TIMER_MODE_OFF || timer->active ||
@ -123,9 +124,7 @@ static int start_timer(struct ipso_timer_data *timer)
timer->trigger_offset = k_uptime_get();
timer->trigger_counter += 1U;
snprintk(path, MAX_RESOURCE_LEN, "%d/%u/%d", IPSO_OBJECT_TIMER_ID,
timer->obj_inst_id, DIGITAL_STATE_RID);
lwm2m_engine_set_bool(path, true);
lwm2m_set_bool(&path, true);
temp = timer->delay_duration * MSEC_PER_SEC;
k_work_reschedule(&timer->timer_work, K_MSEC(temp));
@ -135,7 +134,8 @@ static int start_timer(struct ipso_timer_data *timer)
static int stop_timer(struct ipso_timer_data *timer, bool cancel)
{
char path[MAX_RESOURCE_LEN];
struct lwm2m_obj_path path = LWM2M_OBJ(IPSO_OBJECT_TIMER_ID, timer->obj_inst_id,
DIGITAL_STATE_RID);
/* make sure timer is active */
if (!timer->active) {
@ -143,9 +143,7 @@ static int stop_timer(struct ipso_timer_data *timer, bool cancel)
}
timer->cumulative_time_ms += k_uptime_get() - timer->trigger_offset;
snprintk(path, MAX_RESOURCE_LEN, "%d/%u/%d", IPSO_OBJECT_TIMER_ID,
timer->obj_inst_id, DIGITAL_STATE_RID);
lwm2m_engine_set_bool(path, false);
lwm2m_set_bool(&path, false);
if (cancel) {
k_work_cancel_delayable(&timer->timer_work);

View file

@ -317,14 +317,12 @@ int lwm2m_engine_validate_write_access(struct lwm2m_message *msg,
#if defined(CONFIG_LWM2M_RD_CLIENT_SUPPORT_BOOTSTRAP)
static bool bootstrap_delete_allowed(int obj_id, int obj_inst_id)
{
char pathstr[MAX_RESOURCE_LEN];
bool bootstrap_server;
int ret;
if (obj_id == LWM2M_OBJECT_SECURITY_ID) {
snprintk(pathstr, sizeof(pathstr), "%d/%d/1", LWM2M_OBJECT_SECURITY_ID,
obj_inst_id);
ret = lwm2m_engine_get_bool(pathstr, &bootstrap_server);
ret = lwm2m_get_bool(&LWM2M_OBJ(LWM2M_OBJECT_SECURITY_ID, obj_inst_id, 1),
&bootstrap_server);
if (ret < 0) {
return false;
}
@ -787,16 +785,15 @@ static int load_tls_credential(struct lwm2m_ctx *client_ctx, uint16_t res_id,
void *cred = NULL;
uint16_t cred_len;
uint8_t cred_flags;
char pathstr[MAX_RESOURCE_LEN];
/* ignore error value */
tls_credential_delete(client_ctx->tls_tag, type);
snprintk(pathstr, sizeof(pathstr), "0/%d/%u", client_ctx->sec_obj_inst, res_id);
ret = lwm2m_engine_get_res_buf(pathstr, &cred, NULL, &cred_len, &cred_flags);
ret = lwm2m_get_res_buf(&LWM2M_OBJ(0, client_ctx->sec_obj_inst, res_id), &cred, NULL,
&cred_len, &cred_flags);
if (ret < 0) {
LOG_ERR("Unable to get resource data for '%s'", pathstr);
LOG_ERR("Unable to get resource data for %d/%d/%d", 0, client_ctx->sec_obj_inst,
res_id);
return ret;
}
@ -957,15 +954,14 @@ int lwm2m_engine_stop(struct lwm2m_ctx *client_ctx)
int lwm2m_engine_start(struct lwm2m_ctx *client_ctx)
{
char pathstr[MAX_RESOURCE_LEN];
char *url;
uint16_t url_len;
uint8_t url_data_flags;
int ret = 0U;
/* get the server URL */
snprintk(pathstr, sizeof(pathstr), "0/%d/0", client_ctx->sec_obj_inst);
ret = lwm2m_engine_get_res_buf(pathstr, (void **)&url, NULL, &url_len, &url_data_flags);
ret = lwm2m_get_res_buf(&LWM2M_OBJ(0, client_ctx->sec_obj_inst, 0), (void **)&url, NULL,
&url_len, &url_data_flags);
if (ret < 0) {
return ret;
}

View file

@ -97,25 +97,23 @@ uint8_t lwm2m_firmware_get_update_state(void)
void lwm2m_firmware_set_update_state_inst(uint16_t obj_inst_id, uint8_t state)
{
bool error = false;
char path[LWM2M_MAX_PATH_STR_SIZE];
snprintk(path, sizeof(path), "%" PRIu16 "/%" PRIu16 "/%" PRIu16,
LWM2M_OBJECT_FIRMWARE_ID, obj_inst_id, FIRMWARE_UPDATE_RESULT_ID);
struct lwm2m_obj_path path = LWM2M_OBJ(LWM2M_OBJECT_FIRMWARE_ID, obj_inst_id,
FIRMWARE_UPDATE_RESULT_ID);
/* Check LWM2M SPEC appendix E.6.1 */
switch (state) {
case STATE_DOWNLOADING:
if (update_state[obj_inst_id] == STATE_IDLE) {
lwm2m_engine_set_u8(path, RESULT_DEFAULT);
lwm2m_set_u8(&path, RESULT_DEFAULT);
} else {
error = true;
}
break;
case STATE_DOWNLOADED:
if (update_state[obj_inst_id] == STATE_DOWNLOADING) {
lwm2m_engine_set_u8(path, RESULT_DEFAULT);
lwm2m_set_u8(&path, RESULT_DEFAULT);
} else if (update_state[obj_inst_id] == STATE_UPDATING) {
lwm2m_engine_set_u8(path, RESULT_UPDATE_FAILED);
lwm2m_set_u8(&path, RESULT_UPDATE_FAILED);
} else {
error = true;
}
@ -137,10 +135,9 @@ void lwm2m_firmware_set_update_state_inst(uint16_t obj_inst_id, uint8_t state)
update_state[obj_inst_id], state);
}
snprintk(path, sizeof(path), "%" PRIu16 "/%" PRIu16 "/%" PRIu16,
LWM2M_OBJECT_FIRMWARE_ID, obj_inst_id, FIRMWARE_STATE_ID);
path.res_id = FIRMWARE_STATE_ID;
lwm2m_engine_set_u8(path, state);
lwm2m_set_u8(&path, state);
LOG_DBG("Update state = %d", state);
}
@ -164,7 +161,8 @@ void lwm2m_firmware_set_update_result_inst(uint16_t obj_inst_id, uint8_t result)
{
uint8_t state;
bool error = false;
char path[LWM2M_MAX_PATH_STR_SIZE];
struct lwm2m_obj_path path = LWM2M_OBJ(LWM2M_OBJECT_FIRMWARE_ID, obj_inst_id,
FIRMWARE_UPDATE_RESULT_ID);
/* Check LWM2M SPEC appendix E.6.1 */
switch (result) {
@ -220,10 +218,7 @@ void lwm2m_firmware_set_update_result_inst(uint16_t obj_inst_id, uint8_t result)
result, state);
}
snprintk(path, sizeof(path), "%" PRIu16 "/%" PRIu16 "/%" PRIu16,
LWM2M_OBJECT_FIRMWARE_ID, obj_inst_id, FIRMWARE_UPDATE_RESULT_ID);
lwm2m_engine_set_u8(path, result);
lwm2m_set_u8(&path, result);
LOG_DBG("Update result = %d", result);
}

View file

@ -205,11 +205,11 @@ static void *callback_read_not_defined(uint16_t obj_inst_id, uint16_t res_id, ui
static void set_sw_update_state(struct lwm2m_swmgmt_data *instance, uint8_t state)
{
int ret;
char obj_path[LWM2M_MAX_PATH_STR_SIZE];
struct lwm2m_obj_path obj_path = LWM2M_OBJ(LWM2M_OBJECT_SOFTWARE_MANAGEMENT_ID,
instance->obj_inst_id,
SWMGMT_UPDATE_STATE_ID);
(void)snprintk(obj_path, sizeof(obj_path), "%d/%d/%d", LWM2M_OBJECT_SOFTWARE_MANAGEMENT_ID,
instance->obj_inst_id, SWMGMT_UPDATE_STATE_ID);
ret = lwm2m_engine_set_u8(obj_path, state);
ret = lwm2m_set_u8(obj_path, state);
if (ret != 0) {
LOG_ERR("Could not set state");
}
@ -218,11 +218,11 @@ static void set_sw_update_state(struct lwm2m_swmgmt_data *instance, uint8_t stat
static void set_sw_update_result(struct lwm2m_swmgmt_data *instance, uint8_t result)
{
int ret;
char obj_path[LWM2M_MAX_PATH_STR_SIZE];
struct lwm2m_obj_path obj_path = LWM2M_OBJ(LWM2M_OBJECT_SOFTWARE_MANAGEMENT_ID,
instance->obj_inst_id,
SWMGMT_UPDATE_RESULT_ID);
(void)snprintk(obj_path, sizeof(obj_path), "%d/%d/%d", LWM2M_OBJECT_SOFTWARE_MANAGEMENT_ID,
instance->obj_inst_id, SWMGMT_UPDATE_RESULT_ID);
ret = lwm2m_engine_set_u8(obj_path, result);
ret = lwm2m_set_u8(&obj_path, result);
if (ret != 0) {
LOG_ERR("Could not set result");
}
@ -231,11 +231,11 @@ static void set_sw_update_result(struct lwm2m_swmgmt_data *instance, uint8_t res
static void set_sw_update_act_state(struct lwm2m_swmgmt_data *instance, bool state)
{
int ret;
char obj_path[LWM2M_MAX_PATH_STR_SIZE];
struct lwm2m_obj_path obj_path = LWM2M_OBJ(LWM2M_OBJECT_SOFTWARE_MANAGEMENT_ID,
instance->obj_inst_id,
SWMGMT_ACTIVATION_UPD_STATE_ID);
(void)snprintk(obj_path, sizeof(obj_path), "%d/%d/%d", LWM2M_OBJECT_SOFTWARE_MANAGEMENT_ID,
instance->obj_inst_id, SWMGMT_ACTIVATION_UPD_STATE_ID);
ret = lwm2m_engine_set_bool(obj_path, state);
ret = lwm2m_set_bool(&obj_path, state);
if (ret != 0) {
LOG_ERR("Could not set activation state");
}

View file

@ -571,12 +571,10 @@ static void do_deregister_timeout_cb(struct lwm2m_message *msg)
static bool sm_bootstrap_verify(bool bootstrap_server, int sec_obj_inst)
{
char pathstr[MAX_RESOURCE_LEN];
bool bootstrap;
int ret;
snprintk(pathstr, sizeof(pathstr), "0/%d/1", sec_obj_inst);
ret = lwm2m_engine_get_bool(pathstr, &bootstrap);
ret = lwm2m_get_bool(&LWM2M_OBJ(0, sec_obj_inst, 1), &bootstrap);
if (ret < 0) {
LOG_WRN("Failed to check bootstrap, err %d", ret);
return false;
@ -591,11 +589,9 @@ static bool sm_bootstrap_verify(bool bootstrap_server, int sec_obj_inst)
static bool sm_update_lifetime(int srv_obj_inst, uint32_t *lifetime)
{
char pathstr[MAX_RESOURCE_LEN];
uint32_t new_lifetime;
snprintk(pathstr, sizeof(pathstr), "1/%d/1", srv_obj_inst);
if (lwm2m_engine_get_u32(pathstr, &new_lifetime) < 0) {
if (lwm2m_get_u32(&LWM2M_OBJ(1, srv_obj_inst, 1), &new_lifetime) < 0) {
new_lifetime = CONFIG_LWM2M_ENGINE_DEFAULT_LIFETIME;
LOG_INF("Using default lifetime: %u", new_lifetime);
}
@ -611,12 +607,10 @@ static bool sm_update_lifetime(int srv_obj_inst, uint32_t *lifetime)
static int sm_select_server_inst(int sec_obj_inst, int *srv_obj_inst,
uint32_t *lifetime)
{
char pathstr[MAX_RESOURCE_LEN];
uint16_t server_id;
int ret, obj_inst_id;
snprintk(pathstr, sizeof(pathstr), "0/%d/10", sec_obj_inst);
ret = lwm2m_engine_get_u16(pathstr, &server_id);
ret = lwm2m_get_u16(&LWM2M_OBJ(0, sec_obj_inst, 10), &server_id);
if (ret < 0) {
LOG_WRN("Failed to obtain Short Server ID, err %d", ret);
return -EINVAL;

View file

@ -265,13 +265,7 @@ static int put_corelink_ssid(struct lwm2m_output_context *out,
case LWM2M_OBJECT_SECURITY_ID: {
bool bootstrap_inst;
ret = snprintk(buf, buflen, "0/%d/1",
path->obj_inst_id);
if (ret < 0 || ret >= buflen) {
return -ENOMEM;
}
ret = lwm2m_engine_get_bool(buf, &bootstrap_inst);
ret = lwm2m_get_bool(&LWM2M_OBJ(0, path->obj_inst_id, 1), &bootstrap_inst);
if (ret < 0) {
return ret;
}
@ -283,13 +277,11 @@ static int put_corelink_ssid(struct lwm2m_output_context *out,
return 0;
}
ret = snprintk(buf, buflen, "0/%d/10",
path->obj_inst_id);
if (ret < 0 || ret >= buflen) {
return -ENOMEM;
}
ret = lwm2m_engine_get_u16(buf, &server_id);
ret = lwm2m_get_u16(&LWM2M_OBJ(0, path->obj_inst_id, 10), &server_id);
if (ret < 0) {
return ret;
}
@ -298,12 +290,7 @@ static int put_corelink_ssid(struct lwm2m_output_context *out,
}
case LWM2M_OBJECT_SERVER_ID:
ret = snprintk(buf, buflen, "1/%d/0", path->obj_inst_id);
if (ret < 0 || ret >= buflen) {
return -ENOMEM;
}
ret = lwm2m_engine_get_u16(buf, &server_id);
ret = lwm2m_get_u16(&LWM2M_OBJ(1, path->obj_inst_id, 0), &server_id);
if (ret < 0) {
return ret;
}

View file

@ -166,6 +166,12 @@ static int cmd_read(const struct shell *sh, size_t argc, char **argv)
const char *dtype = "-s"; /* default */
const char *pathstr = argv[1];
int ret = 0;
struct lwm2m_obj_path path;
ret = lwm2m_string_to_path(pathstr, &path, '/');
if (ret < 0) {
return ret;
}
if (argc > 2) { /* read + path + options(data type) */
dtype = argv[2];
@ -174,8 +180,8 @@ static int cmd_read(const struct shell *sh, size_t argc, char **argv)
const char *buff;
uint16_t buff_len = 0;
ret = lwm2m_engine_get_res_buf(pathstr, (void **)&buff,
&buff_len, NULL, NULL);
ret = lwm2m_get_res_buf(&path, (void **)&buff,
&buff_len, NULL, NULL);
if (ret != 0) {
goto out;
}
@ -183,7 +189,7 @@ static int cmd_read(const struct shell *sh, size_t argc, char **argv)
} else if (strcmp(dtype, "-s8") == 0) {
int8_t temp = 0;
ret = lwm2m_engine_get_s8(pathstr, &temp);
ret = lwm2m_get_s8(&path, &temp);
if (ret != 0) {
goto out;
}
@ -191,7 +197,7 @@ static int cmd_read(const struct shell *sh, size_t argc, char **argv)
} else if (strcmp(dtype, "-s16") == 0) {
int16_t temp = 0;
ret = lwm2m_engine_get_s16(pathstr, &temp);
ret = lwm2m_get_s16(&path, &temp);
if (ret != 0) {
goto out;
}
@ -199,7 +205,7 @@ static int cmd_read(const struct shell *sh, size_t argc, char **argv)
} else if (strcmp(dtype, "-s32") == 0) {
int32_t temp = 0;
ret = lwm2m_engine_get_s32(pathstr, &temp);
ret = lwm2m_get_s32(&path, &temp);
if (ret != 0) {
goto out;
}
@ -207,7 +213,7 @@ static int cmd_read(const struct shell *sh, size_t argc, char **argv)
} else if (strcmp(dtype, "-s64") == 0) {
int64_t temp = 0;
ret = lwm2m_engine_get_s64(pathstr, &temp);
ret = lwm2m_get_s64(&path, &temp);
if (ret != 0) {
goto out;
}
@ -215,7 +221,7 @@ static int cmd_read(const struct shell *sh, size_t argc, char **argv)
} else if (strcmp(dtype, "-u8") == 0) {
uint8_t temp = 0;
ret = lwm2m_engine_get_u8(pathstr, &temp);
ret = lwm2m_get_u8(&path, &temp);
if (ret != 0) {
goto out;
}
@ -223,7 +229,7 @@ static int cmd_read(const struct shell *sh, size_t argc, char **argv)
} else if (strcmp(dtype, "-u16") == 0) {
uint16_t temp = 0;
ret = lwm2m_engine_get_u16(pathstr, &temp);
ret = lwm2m_get_u16(&path, &temp);
if (ret != 0) {
goto out;
}
@ -231,7 +237,7 @@ static int cmd_read(const struct shell *sh, size_t argc, char **argv)
} else if (strcmp(dtype, "-u32") == 0) {
uint32_t temp = 0;
ret = lwm2m_engine_get_u32(pathstr, &temp);
ret = lwm2m_get_u32(&path, &temp);
if (ret != 0) {
goto out;
}
@ -239,7 +245,7 @@ static int cmd_read(const struct shell *sh, size_t argc, char **argv)
} else if (strcmp(dtype, "-u64") == 0) {
uint64_t temp = 0;
ret = lwm2m_engine_get_u64(pathstr, &temp);
ret = lwm2m_get_u64(&path, &temp);
if (ret != 0) {
goto out;
}
@ -247,7 +253,7 @@ static int cmd_read(const struct shell *sh, size_t argc, char **argv)
} else if (strcmp(dtype, "-f") == 0) {
double temp = 0;
ret = lwm2m_engine_get_float(pathstr, &temp);
ret = lwm2m_get_f64(&path, &temp);
if (ret != 0) {
goto out;
}
@ -255,7 +261,7 @@ static int cmd_read(const struct shell *sh, size_t argc, char **argv)
} else if (strcmp(dtype, "-b") == 0) {
bool temp;
ret = lwm2m_engine_get_bool(pathstr, &temp);
ret = lwm2m_get_bool(&path, &temp);
if (ret != 0) {
goto out;
}
@ -263,7 +269,7 @@ static int cmd_read(const struct shell *sh, size_t argc, char **argv)
} else if (strcmp(dtype, "-t") == 0) {
time_t temp;
ret = lwm2m_engine_get_time(pathstr, &temp);
ret = lwm2m_get_time(&path, &temp);
if (ret != 0) {
goto out;
}
@ -298,6 +304,12 @@ static int cmd_write(const struct shell *sh, size_t argc, char **argv)
const char *pathstr = argv[1];
const char *dtype;
char *value;
struct lwm2m_obj_path path;
ret = lwm2m_string_to_path(pathstr, &path, '/');
if (ret < 0) {
return ret;
}
if (argc == 4) { /* write path options value */
dtype = argv[2];
@ -308,45 +320,35 @@ static int cmd_write(const struct shell *sh, size_t argc, char **argv)
}
if (strcmp(dtype, "-s") == 0) {
ret = lwm2m_engine_set_string(pathstr, value);
ret = lwm2m_set_string(&path, value);
} else if (strcmp(dtype, "-f") == 0) {
double new = 0;
lwm2m_atof(value, &new); /* Convert string -> float */
ret = lwm2m_engine_set_float(pathstr, &new);
ret = lwm2m_set_f64(&path, new);
} else { /* All the types using stdlib funcs*/
char *e;
if (strcmp(dtype, "-s8") == 0) {
ret = lwm2m_engine_set_s8(pathstr,
strtol(value, &e, 10));
ret = lwm2m_set_s8(&path, strtol(value, &e, 10));
} else if (strcmp(dtype, "-s16") == 0) {
ret = lwm2m_engine_set_s16(pathstr,
strtol(value, &e, 10));
ret = lwm2m_set_s16(&path, strtol(value, &e, 10));
} else if (strcmp(dtype, "-s32") == 0) {
ret = lwm2m_engine_set_s32(pathstr,
strtol(value, &e, 10));
ret = lwm2m_set_s32(&path, strtol(value, &e, 10));
} else if (strcmp(dtype, "-s64") == 0) {
ret = lwm2m_engine_set_s64(pathstr,
strtoll(value, &e, 10));
ret = lwm2m_set_s64(&path, strtoll(value, &e, 10));
} else if (strcmp(dtype, "-u8") == 0) {
ret = lwm2m_engine_set_u8(pathstr,
strtoul(value, &e, 10));
ret = lwm2m_set_u8(&path, strtoul(value, &e, 10));
} else if (strcmp(dtype, "-u16") == 0) {
ret = lwm2m_engine_set_u16(pathstr,
strtoul(value, &e, 10));
ret = lwm2m_set_u16(&path, strtoul(value, &e, 10));
} else if (strcmp(dtype, "-u32") == 0) {
ret = lwm2m_engine_set_u32(pathstr,
strtoul(value, &e, 10));
ret = lwm2m_set_u32(&path, strtoul(value, &e, 10));
} else if (strcmp(dtype, "-u64") == 0) {
ret = lwm2m_engine_set_u64(pathstr,
strtoull(value, &e, 10));
ret = lwm2m_set_u64(&path, strtoull(value, &e, 10));
} else if (strcmp(dtype, "-b") == 0) {
ret = lwm2m_engine_set_bool(pathstr,
strtoul(value, &e, 10));
ret = lwm2m_set_bool(&path, strtoul(value, &e, 10));
} else if (strcmp(dtype, "-t") == 0) {
ret = lwm2m_engine_set_time(pathstr,
strtoll(value, &e, 10));
ret = lwm2m_set_time(&path, strtoll(value, &e, 10));
} else {
shell_error(sh, "can't recognize data type %s\n",
dtype);
@ -501,7 +503,6 @@ static int cmd_cache(const struct shell *sh, size_t argc, char **argv)
#if (CONFIG_HEAP_MEM_POOL_SIZE > 0)
int rc;
int elems;
char *path;
struct lwm2m_time_series_elem *cache;
struct lwm2m_obj_path obj_path;
@ -526,8 +527,6 @@ static int cmd_cache(const struct shell *sh, size_t argc, char **argv)
return -ENOEXEC;
}
path = argv[1];
elems = atoi(argv[2]);
if (elems < 1) {
shell_error(sh, "Size must be 1 or more (given %d)\n", elems);
@ -540,10 +539,11 @@ static int cmd_cache(const struct shell *sh, size_t argc, char **argv)
return -ENOEXEC;
}
rc = lwm2m_engine_enable_cache(path, cache, elems);
rc = lwm2m_enable_cache(&obj_path, cache, elems);
if (rc) {
shell_error(sh, "lwm2m_engine_enable_cache(%s, %p, %d) returned %d\n", path, cache,
elems, rc);
shell_error(sh, "lwm2m_enable_cache(%u/%u/%u/%u, %p, %d) returned %d\n",
obj_path.obj_id, obj_path.obj_inst_id, obj_path.res_id,
obj_path.res_inst_id, cache, elems, rc);
k_free(cache);
return -ENOEXEC;
}