perl-modperl mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tom Donovan <>
Subject resend: Bug report re: Apache 2.2.6 on Windows
Date Fri, 14 Sep 2007 18:37:59 GMT
-------- Original Message --------
Subject: Bug report
Date: Fri, 14 Sep 2007 10:27:19 -0400
From: Tom Donovan <>

-------------8<---------- Start Bug Report ------------8<----------
1. Problem Description:

   perl-script handler fails with Apache 2.2.6 on Windows
   due to changes in stdin/stdout/stderr handles in mpm_winnt

   Problem occurs with mod_perl 2.0.3 or with
      current (9/14/2007) SVN trunk.

   Problem is not seen if Apache is started as a single process
      > httpd.exe -X

   This is similar to, but not the same as, Apache bug 43329
   which concerns the APR 1.2.11 process-creation changes.

   This problem can be avoided if \server\mpm\winnt\mpm_winnt.c
   from Apache 2.2.4 is used - even with APR 1.2.11.
   Note that server\log.c line 411 also needs to be changed to
   work with this older mpm_winnt.

   Failure is at line 128 in modperl_io.c
     (function modperl_io_perlio_override_stdin)
     modperl_io.c - in function modperl_io_perlio_override_stdin
     124        /* open my $oldout, "<&STDIN" or die "Can't dup STDIN:
     125        status = do_open(handle_save, "<&STDIN", 7, FALSE,
     126                         O_RDONLY, 0, Nullfp);
     127        if (status == 0) {
>>> 128            Perl_croak(aTHX_ "Failed to dup STDIN: %" SVf,
     129        }

2. Used Components and their Configuration:

*** mod_perl version 2.000004

*** using C:\work\mod_perl-trunk\lib\Apache2\

*** Makefile.PL options:
   MP_APR_LIB     => aprext
   MP_COMPAT_1X   => 1
   MP_LIBNAME     => mod_perl
   MP_USE_DSO     => 1

*** httpd.exe -V
Server version: Apache/2.2.6 (Win32)
Server built:   Sep 14 2007 09:44:55
Server's Module Magic Number: 20051115:5
Server loaded:  APR 1.2.11, APR-Util 1.2.10
Compiled using: APR 1.2.11, APR-Util 1.2.10
Architecture:   32-bit
Server MPM:     WinNT
   threaded:     yes (fixed thread count)
     forked:     no
Server compiled with....
  -D APACHE_MPM_DIR="server/mpm/winnt"
  -D HTTPD_ROOT="/apache"
  -D SUEXEC_BIN="/apache/bin/suexec"
  -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
  -D DEFAULT_ERRORLOG="logs/error.log"
  -D AP_TYPES_CONFIG_FILE="conf/mime.types"
  -D SERVER_CONFIG_FILE="conf/httpd.conf"

*** (apr|apu)-config linking info

(apr|apu)-config scripts were not found

*** C:\Perl\bin\perl.exe -V
Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
     osname=MSWin32, osvers=5.00, archname=MSWin32-x86-multi-thread
     hint=recommended, useposix=true, d_sigaction=undef
     usethreads=define use5005threads=undef useithreads=define
     useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
     use64bitint=undef use64bitall=undef uselongdouble=undef
     usemymalloc=n, bincompat5005=undef
     cc='cl', ccflags ='-nologo -GF -W3 -MD -Zi -DNDEBUG -O1 -DWIN32
     optimize='-MD -Zi -DNDEBUG -O1',
     ccversion='12.00.8804', gccversion='', gccosandvers=''
     intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
     d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=10
     ivtype='long', ivsize=4, nvtype='double', nvsize=8,
Off_t='__int64', lseeksize=8
     alignbytes=8, prototype=define
   Linker and Libraries:
     ld='link', ldflags ='-nologo -nodefaultlib -debug -opt:ref,icf
-libpath:"C:\Perl\lib\CORE"  -machine:x86'
     libs=  oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib
  comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib
netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib  version.lib
odbc32.lib odbccp32.lib msvcrt.lib
     perllibs=  oldnames.lib kernel32.lib user32.lib gdi32.lib
winspool.lib  comdlg32.lib advapi32.lib shell32.lib ole32.lib
oleaut32.lib  netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib
version.lib odbc32.lib odbccp32.lib msvcrt.lib
     libc=msvcrt.lib, so=dll, useshrplib=yes, libperl=perl58.lib
   Dynamic Linking:
     dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
     cccdlflags=' ', lddlflags='-dll -nologo -nodefaultlib -debug
-opt:ref,icf  -libpath:"C:\Perl\lib\CORE"  -machine:x86'

Characteristics of this binary (from libperl):
                         PERL_IMPLICIT_SYS PERL_MALLOC_WRAP
                         USE_PERLIO USE_SITECUSTOMIZE
   Locally applied patches:
     ActivePerl Build 822 [280952]
     Iin_load_module moved for compatibility with build 806
     PerlEx support in CGI::Carp
     Less verbose ExtUtils::Install and Pod::Find
     Patch for CAN-2005-0448 from Debian with modifications
     Rearrange @INC so that 'site' is searched before 'perl'
     Partly reverted 24733 to preserve binary compatibility
     MAINT31223 plus additional changes
     31490 Problem bootstraping Win32CORE
     31324 Fix DynaLoader::dl_findfile() to locate .so files again
     31214 Win32::GetLastError fails when first called
     31211 Restore Windows NT support
     31188 Problem killing a pseudo-forked child on Win32
     29732 ANSIfy the PATH environment variable on Windows
     27527,29868 win32_async_check() can loop indefinitely
     26970 Make Passive mode the default for Net::FTP
     26379 Fix alarm() for Windows 2003
     24699 ICMP_UNREACHABLE handling in Net::Ping
   Built under MSWin32
   Compiled at Jul 31 2007 19:34:48

*** Packages of interest status:

Apache2            : -
Apache2::Request   : -
CGI                : -
ExtUtils::MakeMaker: -
LWP                : -
mod_perl           : -
mod_perl2          : -

3. This is the core dump trace: (if you get a core dump):

     Stack trace captured with WinDBG debugger built with VC6 from 9/14/2007 SVN trunk

01c4fd04 7c596a7c ntdll!NtTerminateProcess+0xb
01c4fdd0 78007cd8 KERNEL32!ExitProcess+0x72
01c4fddc 78007c60 MSVCRT!exit+0xc0
01c4fdec 28087b6b MSVCRT!exit+0xd
01c4fe40 28083ddf perl58!Perl_my_strlcpy+0x220b
01c4fe58 10007349 perl58!Perl_croak+0x19
01c4fe88 10001ba2 mod_perl!modperl_io_perlio_override_stdin+0xb5
[modperl_io.c @ 128]
01c4fec8 6ff025e8 mod_perl!modperl_response_handler_cgi+0xdb [mod_perl.c
@ 1095]
01c4fee0 6ff02a6f libhttpd!ap_run_handler+0x4e
[C:\work\httpd-2.2.6\server\config.c @ 158]
01c4ff10 6ff12f02 libhttpd!ap_invoke_handler+0x120
[C:\work\httpd-2.2.6\server\config.c @ 372]
01c4ff20 6ff0dc8d libhttpd!ap_process_request+0x50
[C:\work\httpd-2.2.6\modules\http\http_request.c @ 258]
01c4ff34 6ff05eae libhttpd!ap_process_http_connection+0x67
[C:\work\httpd-2.2.6\modules\http\http_core.c @ 184]
01c4ff4c 6ff06237 libhttpd!ap_run_process_connection+0x4e
[C:\work\httpd-2.2.6\server\connection.c @ 43]
01c4ff5c 6ff27400 libhttpd!ap_process_connection+0x4e
[C:\work\httpd-2.2.6\server\connection.c @ 180]
01c4ff80 1020bf53 libhttpd!worker_main+0xec
[C:\work\httpd-2.2.6\server\mpm\winnt\child.c @ 777]
01c4ffb4 7c57b3bc MSVCRTD!_beginthreadex+0x133
01c4ffec 00000000 KERNEL32!BaseThreadStart+0x52

This report was generated by t\REPORT on Fri Sep 14 13:52:24 2007 GMT.

-------------8<---------- End Bug Report --------------8<----------

Note: Complete the rest of the details and post this bug report to
modperl <at> To subscribe to the list send an empty
email to

View raw message