chiark / gitweb /
possible security fix: do not call slilog with intended message as format string
[secnet.git] / log.c
diff --git a/log.c b/log.c
index c2da4af09b3713dd6d0ec6835d65676538b5e4f3..837ed55acf8c9530a2e4d9f4e87feec3b433449e 100644 (file)
--- a/log.c
+++ b/log.c
@@ -8,6 +8,7 @@
 #include <assert.h>
 #include <unistd.h>
 #include "process.h"
+#include "util.h"
 
 bool_t secnet_is_daemon=False;
 uint32_t message_level=M_WARNING|M_ERR|M_SECURITY|M_FATAL;
@@ -28,7 +29,7 @@ static void vMessage(uint32_t class, const char *message, va_list args)
        /* Each line is sent separately */
        while ((nlp=strchr(buff,'\n'))) {
            *nlp=0;
-           log(system_log,class,buff);
+           slilog(system_log,class,"%s",buff);
            memmove(buff,nlp+1,strlen(nlp+1)+1);
        }
     } else {
@@ -554,7 +555,6 @@ void log_from_fd(int fd, cstring_t prefix, struct log_if *log)
                      prefix);
 }
 
-init_module log_module;
 void log_module(dict_t *dict)
 {
     add_closure(dict,"logfile",logfile_apply);