DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://nagoya.apache.org/bugzilla/show_bug.cgi?id=25103>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=25103 Purpose of APR_PROGRAM and APR_PROGRAM_ENV is reversed in apr_proc_create Summary: Purpose of APR_PROGRAM and APR_PROGRAM_ENV is reversed in apr_proc_create Product: APR Version: 0.9.4 Platform: PC OS/Version: Solaris Status: NEW Severity: Normal Priority: Other Component: APR AssignedTo: [email protected] ReportedBy: [EMAIL PROTECTED] It looks as though the purpose that APR_PROGRAM and APR_PROGRAM_ENV are supposed to serve in apr_proc_create() in (apr/threadproc/unix/proc.c) is being implemented the wrong way. The problem being that when a call is made to apr_proc_create() with NULL for the env argument, and APR_PROGRAM is specified in the attr argument, then NULL ends up getting passed to the call to execve, which seems to cause the exec'ed program to seg fault before it even has a chance to run. This was most noticeable to me while trying to use rotatelogs and SSLPassPhraseDialog exec:/blah/blah. Here's a simple diff to fix it: diff ./httpd-2.0.48/srclib/apr/threadproc/unix/proc.c ./httpd- 2.0.48.fix/srclib/apr/threadproc/unix/proc.c 482c482 < execve(progname, (char * const *)args, (char * const *)env); --- > execv(progname, (char * const *)args); 489c489 < execv(progname, (char * const *)args); --- > execve(progname, (char * const *)args, (char * const *)env); Thanks. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
