-------------8<---------- Start Bug Report ------------8<---------- 1. Problem Description:
# Problem: When I add PerlOptions +Parent I get a segfault. # # Breaks with: # Windows 2000 SP2 # Apache 2.0.46 # ActiveState Perl 5.8.0 (build 804) # mod_perl 1.99.10dev (installed using mpinstall.pl, # re-installed TODAY to be safe) # # Pops up "Apache.exe - Application Error" box: # The instruction at "0x280830ed" # referenced memory at "0x00000000". # The memory could not be "written". # # After killing the box the command line says: # C:\Apache2\bin> apache # Starting Apache... # and must be killed via <ctrl-C>. The error log is empty. # # In at least one case the Apache.exe process refused to stop # and COULD NOT BE SHUT DOWN VIA TASK MANAGER, requiring reboot. # This seems to happen when <ctrl-c> is not invoked immediately # after cancelling the message box. 2. Used Components and their Configuration: *** mod_perl version 1.9910 *** using C:/Perl/site/lib/Apache/BuildConfig.pm *** Makefile.PL options: MP_AP_PREFIX => \Apache2 MP_COMPAT_1X => 1 MP_GENERATE_XS => 1 MP_INST_APACHE2 => 1 MP_LIBNAME => mod_perl MP_USE_DSO => 1 MP_USE_STATIC => 1 *** \Apache2/bin/Apache.exe -V Server version: Apache/2.0.46 Server built: May 27 2003 23:15:42 Server's Module Magic Number: 20020903:3 Architecture: 32-bit Server compiled with.... -D APACHE_MPM_DIR="server/mpm/winnt" -D APR_HAS_SENDFILE -D APR_HAS_MMAP -D APR_HAS_OTHER_CHILD -D AP_HAVE_RELIABLE_PIPED_LOGS -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" *** C:\Perl\bin\perl.exe -V Summary of my perl5 (revision 5 version 8 subversion 0) configuration: Platform: osname=MSWin32, osvers=4.0, archname=MSWin32-x86-multi-thread uname='' config_args='undef' hint=recommended, useposix=true, d_sigaction=undef usethreads=undef use5005threads=undef useithreads=define usemultiplicity=define useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='cl', ccflags ='-nologo -Gf -W3 -MD -DNDEBUG -O1 -DWIN32 -D_CONSOLE -DNO_STRICT -DHAVE_DES _FCRYPT -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSV CRT_READFIX', optimize='-MD -DNDEBUG -O1', cppflags='-DWIN32' ccversion='', 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 -release -libpath:"C:\Perl\lib\CORE" -machine:x86' libpth="C:\Program Files\Microsoft.Net\Odbc.Net\" "C:\Perl\lib\CORE" 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 wsock32.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 wsock32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib msvcrt.lib libc=msvcrt.lib, so=dll, useshrplib=yes, libperl=perl58.lib gnulibc_version='undef' Dynamic Linking: dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' ' cccdlflags=' ', ddlflags='-dll -nologo -nodefaultlib -release -libpath:"C:\Perl\lib\CORE" -machine:x86' Characteristics of this binary (from libperl): Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES PERL_IMPLICIT_CONTEXT PERL_IMPLICIT_SYS Locally applied patches: ActivePerl Build 804 Built under MSWin32 Compiled at Dec 1 2002 23:15:13 %ENV: PERL_LWP_USE_HTTP_10="1" @INC: C:/Perl/lib C:/Perl/site/lib . 3. This is the core dump trace: (if you get a core dump): # I don't have anything built with debug but even so the stack shows: # PERL58.DLL # PERL58.DLL # MOD_PERL.DLL # when I pop into the debugger from the alert panel. This report was generated by -e on Fri Jul 18 23:48:59 2003 GMT. -------------8<---------- End Bug Report --------------8<---------- # # C:\Apache2\conf\parental.conf # # Minimal configuration for breaking PerlOptions +parent. # Use Include directive in generic httpd.conf # # There is no startup.pl here, nor much of anything else. # I first discovered this issue in a fully populated environment # with all of that good stuff. I removed all of the other goop # and it still blows up here. When I had startup.pl going I # added trace statements and startup.pl appeared to execute # to completion before the message box appeared. # # Removing PerlOptions +parent makes the crash go away. # ########################################################################### # # Logging more than the default messages: # LogLevel debug ########################################################################### # # Setup mod_perl # LoadFile C:/Perl/bin/perl58.dll LoadModule perl_module modules/mod_perl.so ########################################################################### # # Setup for named virtual hosts on port 80: # NameVirtualHost *:80 Listen 80 ########################################################################### # # # <VirtualHost *:80> ServerName localhost:80 ServerAdmin [EMAIL PROTECTED] DocumentRoot C:/Apache2/htdocs PerlOptions +Parent PerlSwitches -wT </VirtualHost>