summaryrefslogtreecommitdiff
path: root/fw/app
diff options
context:
space:
mode:
Diffstat (limited to 'fw/app')
-rw-r--r--fw/app/src/http.c2
-rw-r--r--fw/app/src/settings.c27
-rw-r--r--fw/app/src/settings.h3
3 files changed, 19 insertions, 13 deletions
diff --git a/fw/app/src/http.c b/fw/app/src/http.c
index 83a3568..eb3d695 100644
--- a/fw/app/src/http.c
+++ b/fw/app/src/http.c
@@ -107,6 +107,8 @@ static int settings_handler(
return ret;
}
+ LOG_INF("Encoded: '%s'", buffer);
+
response_ctx->body = (const uint8_t *)buffer;
response_ctx->body_len = ret;
response_ctx->final_chunk = true;
diff --git a/fw/app/src/settings.c b/fw/app/src/settings.c
index 72cea12..22e55fc 100644
--- a/fw/app/src/settings.c
+++ b/fw/app/src/settings.c
@@ -36,7 +36,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_STRING),
+ JSON_OBJ_DESCR_PRIM(struct settings_syslog_target, ip, JSON_TOK_NUMBER),
};
static const struct json_obj_descr settings_syslog_descr[] = {
@@ -51,21 +51,24 @@ 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;
- }
+// 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;
+// }
- ret = json_obj_encode_buf(
- settings_syslog_target_descr,
- ARRAY_SIZE(settings_syslog_target_descr),
- &(settings.syslog.target),
+ settings.syslog.target.ip = 42;
+
+ int 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;
diff --git a/fw/app/src/settings.h b/fw/app/src/settings.h
index 9d46132..dff3c44 100644
--- a/fw/app/src/settings.h
+++ b/fw/app/src/settings.h
@@ -15,7 +15,8 @@
struct settings_syslog_target {
- char ip[IPV6_STRLEN_MAX];
+// char ip[IPV6_STRLEN_MAX];
+ int ip;
};
struct settings_syslog {