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.c22
1 files changed, 10 insertions, 12 deletions
diff --git a/fw/app/src/settings.c b/fw/app/src/settings.c
index 22e55fc..d867207 100644
--- a/fw/app/src/settings.c
+++ b/fw/app/src/settings.c
@@ -4,6 +4,7 @@
* obtain one at https://mozilla.org/MPL/2.0/.
*/
+#include <string.h>
#include <zephyr/data/json.h>
#include <zephyr/init.h>
@@ -36,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),
+ JSON_OBJ_DESCR_PRIM(struct settings_syslog_target, ip, JSON_TOK_NUMBER), // FIXME should be string but this leads to segfault
};
static const struct json_obj_descr settings_syslog_descr[] = {
@@ -51,24 +52,21 @@ int settings_to_json(void *buffer, size_t len)
{
struct settings settings = {0,};
-// int ret = settings_runtime_get("syslog/target/ip",
-// settings.syslog.target.ip,
-// sizeof(settings.syslog.target.ip));
-// if (ret < 0) {
-// LOG_ERR("Failed to get runtime setting syslog/target/ip (%d)", ret);
-// return ret;
-// }
-
- settings.syslog.target.ip = 42;
+ int ret = settings_runtime_get("syslog/target/ip",
+ settings.syslog.target.ip,
+ sizeof(settings.syslog.target.ip));
+ if (ret < 0) {
+ LOG_ERR("Failed to get runtime setting syslog/target/ip (%d)", ret);
+ return ret;
+ }
- int ret = json_obj_encode_buf(
+ ret = json_obj_encode_buf(
settings_descr,
ARRAY_SIZE(settings_descr),
&settings,
buffer,
len
);
-
if (ret < 0) {
LOG_ERR("Failed to serialize settings as JSON");
return ret;