Skip Menu |
 

This queue is for tickets about the mod_perl CPAN distribution.

Report information
The Basics
Id: 72540
Status: new
Priority: 0/
Queue: mod_perl

People
Owner: Nobody in particular
Requestors: flameeyes [...] flameeyes.eu
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in: 2.0.5
Fixed in: (no value)



Subject: Tracing mod_perl crashes Apache if ErrorLog is set to syslog
Download (untitled) / with headers
text/plain 1.1k
When MP_TRACE is enabled, and Apache's ErrorLog is set to syslog, mod_perl will crash because of the following code block: #ifdef MP_TRACE /* httpd core open_logs handler re-opens s->error_log, which might * change, even though it still points to the same physical file * (.e.g on win32 the filehandle will be different. Therefore * reset the tracing logfile setting here, since this is the * earliest place, happening after the open_logs phase. * * Moreover, we need to dup the filehandle so that when the server * shuts down, we will be able to log to error_log after Apache * has closed it (which happens too early for our likening). */ { apr_file_t *dup; MP_RUN_CROAK(apr_file_dup(&dup, s->error_log, pconf), "mod_perl core post_config"); modperl_trace_logfile_set(dup); } #endif The problem is that with syslog, s->error_log is NULL, and apr_file_dup() does not accept a NULL parameter cleanly. I'm not sure if this should be conditional to s->error_log != NULL or if it requires more work to massage it into position.


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.