Return-Path: Delivered-To: apmail-httpd-cvs-archive@httpd.apache.org Received: (qmail 72252 invoked by uid 500); 27 Dec 2001 19:53:38 -0000 Mailing-List: contact cvs-help@httpd.apache.org; run by ezmlm Precedence: bulk Reply-To: dev@httpd.apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list cvs@httpd.apache.org Received: (qmail 72241 invoked by uid 500); 27 Dec 2001 19:53:38 -0000 Delivered-To: apmail-httpd-2.0-cvs@apache.org Date: 27 Dec 2001 19:53:37 -0000 Message-ID: <20011227195337.51782.qmail@icarus.apache.org> From: gregames@apache.org To: httpd-2.0-cvs@apache.org Subject: cvs commit: httpd-2.0/os/unix unixd.c X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N gregames 01/12/27 11:53:37 Modified: . STATUS os/unix unixd.c Log: change ap_unix_create_privileged_process() to allocate enough space in the newargs array to allow for a null terminator. This allows suexec and mod_cgid to work together reliably. Apparently, rounding up the size to a multiple of 8 bytes in apr_palloc hid the problem sometimes. At other times, suexec would complain about a null command name. Revision Changes Path 1.364 +1 -6 httpd-2.0/STATUS Index: STATUS =================================================================== RCS file: /home/cvs/httpd-2.0/STATUS,v retrieving revision 1.363 retrieving revision 1.364 diff -u -r1.363 -r1.364 --- STATUS 2001/12/27 06:08:12 1.363 +++ STATUS 2001/12/27 19:53:37 1.364 @@ -1,5 +1,5 @@ APACHE 2.0 STATUS: -*-text-*- -Last modified at [$Date: 2001/12/27 06:08:12 $] +Last modified at [$Date: 2001/12/27 19:53:37 $] Release: @@ -192,11 +192,6 @@ not permit content to be served, only virtual resources such as server-info or server-status. This proposed change would _not_ depricate Alias. - - * daedalus: mod_cgid and suexec have a problem co-existing. suexec - sees a null command string sometimes. The problem happens when - you access bugs.apache.org, then click on the "search the bug db" - button. * Win32: Rotatelogs sometimes is not terminated when Apache goes down hard. FirstBill was looking at possibly tracking the 1.43 +2 -1 httpd-2.0/os/unix/unixd.c Index: unixd.c =================================================================== RCS file: /home/cvs/httpd-2.0/os/unix/unixd.c,v retrieving revision 1.42 retrieving revision 1.43 diff -u -r1.42 -r1.43 --- unixd.c 2001/11/13 22:42:38 1.42 +++ unixd.c 2001/12/27 19:53:37 1.43 @@ -345,7 +345,8 @@ i++; } } - newargs = apr_palloc(p, sizeof(char *) * (i + 4)); + /* allocate space for 4 new args, the input args, and a null terminator */ + newargs = apr_palloc(p, sizeof(char *) * (i + 5)); newprogname = SUEXEC_BIN; newargs[0] = SUEXEC_BIN; newargs[1] = execuser;