# HG changeset patch
# User Olaf Wintermann <olaf.wintermann@gmail.com>
# Date 1664096438 -7200
# Node ID 80ee93a7d257729cdb6f9d8dacee4c49f5438069
# Parent  144332e23ffdcad1995c1a3acb3d76dbdbbfed13
add verbose logging for setuid/setgid and abort startup if setuid fails

diff -r 144332e23ffd -r 80ee93a7d257 src/server/daemon/webserver.c
--- a/src/server/daemon/webserver.c	Sun Sep 25 10:51:47 2022 +0200
+++ b/src/server/daemon/webserver.c	Sun Sep 25 11:00:38 2022 +0200
@@ -140,26 +140,30 @@
     // change uid
     if(changeuid && ws_uid == 0) {
         // a webserver user is set and we are root
-        
+        log_ereport(LOG_VERBOSE, "setgid(%d)", vars->Vuserpw->pw_gid);
         if(setgid(vars->Vuserpw->pw_gid) != 0) {
             log_ereport(
                     LOG_FAILURE,
                     "setgid(%d) failed",
                     vars->Vuserpw->pw_gid);
+            return -1;
         } else {
             // setgid was successful
             // we need to call initgroups to have all group permissions
             if(initgroups(vars->Vuserpw->pw_name, vars->Vuserpw->pw_gid)!=0) {
                 log_ereport(LOG_FAILURE, "initgroups failed");
+                return -1;
             }
         }
         
         // change the uid
+        log_ereport(LOG_VERBOSE, "setuid(%d)", vars->Vuserpw->pw_uid);
         if(setuid(vars->Vuserpw->pw_uid)) {
             log_ereport(
                     LOG_FAILURE,
                     "setuid(%d) failed",
                     vars->Vuserpw->pw_uid);
+            return -1;
         }
     } else if(vars->Vuserpw) {
         log_ereport(