src/server/daemon/main.c

changeset 47
ce9790523346
parent 44
3da1f7b6847f
child 48
37a512d7b8f6
--- a/src/server/daemon/main.c	Sat Jan 12 14:00:47 2013 +0100
+++ b/src/server/daemon/main.c	Sun Jan 13 14:16:45 2013 +0100
@@ -40,7 +40,7 @@
 #include "../util/date.h"
 
 #include "webserver.h"
-
+#include "log.h"
 #include "httprequest.h"
 
 #include "configmanager.h"
@@ -58,10 +58,10 @@
  * SIGUSR1: reload the configuration files
  */
 void sig_usr1_reload(int sig) {
-    printf("reload\n");
+    log_ereport(LOG_LEVEL_INFO, "sig reload");
 
     if(cfgmgr_load_config() != 0) {
-        fprintf(stderr, "Error: cannot reload configuration");
+        log_ereport(LOG_LEVEL_ERROR, "cannot reload config");
     }
 
     signal(SIGUSR1, sig_usr1_reload);
@@ -75,25 +75,25 @@
 }
 
 void* log_pipe_thread(void *data) {
-    FILE *log_out = fopen("log.txt", "a");
+    //FILE *log_out = fopen("log.txt", "a");
 
     char buf[1024];
     ssize_t r;
     while((r = read(std_pipe_fds[0], buf, 1024)) > 0) {
-        fwrite(buf, 1, r, log_out);
-        fflush(log_out);
+        //fwrite(buf, 1, r, log_out);
+        //fflush(log_out);
     }
 
-    fclose(log_out);
+    //fclose(log_out);
     
     return NULL;
 }
 
 int main(int argc, char **argv) {
-    test();
+    //test();
 
     /* if the -c parameter is specified, we don't create a daemon */
-    int d = 0;
+    int d = 1;
     for(int i=0;i<argc;i++) {
         char *p = argv[i];
         if(p[0] == '-' && p[1] == 'c') {
@@ -111,9 +111,10 @@
         }
 
         if(setsid() < 0) {
-            printf("setsid failed\n");
+            fprintf(stderr, "setsid failed\n");
             return EXIT_FAILURE;
         }
+        printf("start daemon\n");
 
         for(int i=0;i<3;i++) {
             close(i);

mercurial