summaryrefslogtreecommitdiff
path: root/fw/app/src/settings.c
diff options
context:
space:
mode:
Diffstat (limited to 'fw/app/src/settings.c')
-rw-r--r--fw/app/src/settings.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/fw/app/src/settings.c b/fw/app/src/settings.c
index d867207..4b2c248 100644
--- a/fw/app/src/settings.c
+++ b/fw/app/src/settings.c
@@ -37,7 +37,7 @@ int init_settings(void) {
SYS_INIT(init_settings, APPLICATION, 50);
static const struct json_obj_descr settings_syslog_target_descr[] = {
- JSON_OBJ_DESCR_PRIM(struct settings_syslog_target, ip, JSON_TOK_NUMBER), // FIXME should be string but this leads to segfault
+ JSON_OBJ_DESCR_PRIM(struct settings_syslog_target, ip, JSON_TOK_STRING),
};
static const struct json_obj_descr settings_syslog_descr[] = {
@@ -51,10 +51,11 @@ static const struct json_obj_descr settings_descr[] = {
int settings_to_json(void *buffer, size_t len)
{
struct settings settings = {0,};
+ settings.syslog.target.ip = (char *)settings.syslog.target.ip_array;
int ret = settings_runtime_get("syslog/target/ip",
- settings.syslog.target.ip,
- sizeof(settings.syslog.target.ip));
+ settings.syslog.target.ip_array,
+ sizeof(settings.syslog.target.ip_array));
if (ret < 0) {
LOG_ERR("Failed to get runtime setting syslog/target/ip (%d)", ret);
return ret;