]> code.citadel.org Git - citadel.git/blobdiff - citadel/sysdep.c
* Set CTDLEXIT_SHUTDOWN value to 0
[citadel.git] / citadel / sysdep.c
index 359b4c33b7fa87c6ee91792525bfff922deef193..ac654ac52c1d171e06b19b1c572cb3426f11a6cb 100644 (file)
@@ -566,13 +566,17 @@ static unsigned on = 1, off = 0;
 
 void buffer_output(void) {
 #ifdef HAVE_TCP_BUFFERING
-       setsockopt(CC->client_socket, IPPROTO_TCP, TCP_CORK, &on, 4);
+       if (!CC->redirect_ssl) {
+               setsockopt(CC->client_socket, IPPROTO_TCP, TCP_CORK, &on, 4);
+       }
 #endif
 }
 
 void unbuffer_output(void) {
 #ifdef HAVE_TCP_BUFFERING
-       setsockopt(CC->client_socket, IPPROTO_TCP, TCP_CORK, &off, 4);
+       if (!CC->redirect_ssl) {
+               setsockopt(CC->client_socket, IPPROTO_TCP, TCP_CORK, &off, 4);
+       }
 #endif
 }
 
@@ -958,19 +962,24 @@ void start_daemon(int unused) {
                nFireUpsNonRestart = nFireUps;
                /* Did the main process exit with an actual exit code? */
                if (WIFEXITED(status)) {
+               
+                       CtdlLogPrintf(CTDL_DEBUG, "\e[31m WIFEXITED! \e[0m\n");
 
                        /* Exit code 0 means the watcher should exit */
-                       if (WEXITSTATUS(status) == 0) {
+                       if (WEXITSTATUS(status) == CTDLEXIT_SHUTDOWN) {
+                               CtdlLogPrintf(CTDL_DEBUG, "\e[31m CTDLEXIT_SHUTDOWN \e[0m\n");
                                do_restart = 0;
                        }
 
                        /* Exit code 101-109 means the watcher should exit */
                        else if ( (WEXITSTATUS(status) >= 101) && (WEXITSTATUS(status) <= 109) ) {
+                               CtdlLogPrintf(CTDL_DEBUG, "\e[31m CTDLEXIT NO RESTART \e[0m\n");
                                do_restart = 0;
                        }
 
                        /* Any other exit code means we should restart. */
                        else {
+                               CtdlLogPrintf(CTDL_DEBUG, "\e[31m ANY OTHER EXIT CODE \e[0m\n");
                                do_restart = 1;
                                nFireUps++;
                                ForkedPid = current_child;
@@ -979,6 +988,7 @@ void start_daemon(int unused) {
 
                /* Any other type of termination (signals, etc.) should also restart. */
                else {
+                       CtdlLogPrintf(CTDL_DEBUG, "\e[31m NON-EXIT TERMINATION \e[0m\n");
                        do_restart = 1;
                        nFireUps++;
                        ForkedPid = current_child;