Fix saving the database on simple change
authorJosé Bollo <jose.bollo@iot.bzh>
Thu, 13 Jun 2019 14:28:49 +0000 (16:28 +0200)
committerJosé Bollo <jose.bollo@iot.bzh>
Thu, 13 Jun 2019 14:28:49 +0000 (16:28 +0200)
Change-Id: I393d6aa53b98aff102417c263447e2d34e80d531
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
src/filedb.c
src/main-cynarad.c
src/rcyn-server.c
src/rcyn-server.h

index 2a4de33..7e1c34d 100644 (file)
@@ -492,6 +492,7 @@ apply_itf(
                        rule->expire = time2exp(value.expire);
                        filedb->need_cleanup = true;
                        filedb->is_changed = true;
+                       filedb->frules.saved = (uint32_t)((void*)rule - filedb->frules.buffer);
                        return;
                case Anydb_Action_Remove_And_Continue:
                        *rule = filedb->rules[--filedb->rules_count];
index 772fed6..53bea31 100644 (file)
@@ -332,7 +332,7 @@ int main(int ac, char **av)
 
        /* initialize server */
        setvbuf(stderr, NULL, _IOLBF, 1000);
-       rcyn_server_log = flog;
+       rcyn_server_log = (bool)flog;
        signal(SIGPIPE, SIG_IGN); /* avoid SIGPIPE! */
        rc = rcyn_server_create(&server, spec_socket_admin, spec_socket_check, spec_socket_agent);
        if (rc < 0) {
index d23c4fb..6974265 100644 (file)
@@ -40,7 +40,7 @@
 #include "pollitem.h"
 
 /** should log? */
-int
+bool
 rcyn_server_log = 0;
 
 /** local enumeration of socket/client kind */
index b702b73..34cd46a 100644 (file)
@@ -22,7 +22,7 @@ struct rcyn_server;
 typedef struct rcyn_server rcyn_server_t;
 
 extern
-int
+bool
 rcyn_server_log;
 
 extern