# HG changeset patch
# User Olaf Wintermann <olaf.wintermann@gmail.com>
# Date 1737198788 -3600
# Node ID 963edce64e6e7372d2997462d70e2cb9ed8cfb29
# Parent  6a0138b67cee975815a2d1085c3060683da9e1fd
log all cgi pipe fds

diff -r 6a0138b67cee -r 963edce64e6e src/server/safs/cgi.c
--- a/src/server/safs/cgi.c	Fri Jan 17 17:05:16 2025 +0100
+++ b/src/server/safs/cgi.c	Sat Jan 18 12:13:08 2025 +0100
@@ -106,13 +106,13 @@
     ZERO(handler, sizeof(CGIHandler));
     handler->path = path;
     
-    int ret = cgi_start(&handler->process, path, argv, env);
+    int ret = cgi_start(rq, &handler->process, path, argv, env);
     if(ret != REQ_PROCEED) {
         util_env_free(env);
         cgi_free_argv(argv);
         return ret;
     }
-    log_ereport(LOG_DEBUG, "send-cgi: req: %p pid: %d pipes: [%d, %d]", rq, (int)handler->process.pid, handler->process.out[0], handler->process.err[0]);
+    log_ereport(LOG_DEBUG, "send-cgi: req: %p pid: %d", rq, (int)handler->process.pid);
     
     util_env_free(env);
     cgi_free_argv(argv);
@@ -679,7 +679,7 @@
     return 0;
 }
 
-int cgi_start(CGIProcess *p, char *path, char *const argv[], char *const envp[]) {
+int cgi_start(Request *rq, CGIProcess *p, char *path, char *const argv[], char *const envp[]) {
     if(pipe(p->in) || pipe(p->out) || pipe(p->err)) {
         log_ereport(
                 LOG_FAILURE,
@@ -730,7 +730,8 @@
         // execute program
         exit(execve(script.ptr, argv, envp));
     } else {
-        // parent  
+        log_ereport(LOG_DEBUG, "send-cgi: start-cgi: req: %p pid: %d pipes: [%d, %d][%d, %d][%d, %d]", rq, (int)p->pid, p->out[0], p->out[1], p->err[0], p->err[1], p->in[0], p->in[1]);
+        // parent
         system_close(p->out[1]);
         system_close(p->err[1]);
         p->out[1] = -1;
diff -r 6a0138b67cee -r 963edce64e6e src/server/safs/cgi.h
--- a/src/server/safs/cgi.h	Fri Jan 17 17:05:16 2025 +0100
+++ b/src/server/safs/cgi.h	Sat Jan 18 12:13:08 2025 +0100
@@ -162,7 +162,7 @@
 
 char** cgi_add_vars(char **env, Session *sn, Request *rq);
 
-int cgi_start(CGIProcess *p, char *path, char *const argv[], char *const envp[]);
+int cgi_start(Request *rq, CGIProcess *p, char *path, char *const argv[], char *const envp[]);
 
 int cgi_close(CGIProcess *p);