Hello: here is as much information on this as i have currently
the test suite was blowing up on both freebsd and linux for different reasons, its all in the error report doc i guess at this point the only thing left is to try and compile apache/mod-perl from scratch.. but i dont have time for that right now please look over and tell me if i should proceed in that direction -- Clayton Cottingham - WinterMarket Networks Virtual Reality Programming, Design & Evangelist Phone:(604) 875-1213 Cell: (604) 506-7230 Vancouver, B.C. Canada [EMAIL PROTECTED] http://www.wintermarket.net IM's icq:154964789 hotmail:[EMAIL PROTECTED] yahoo:[EMAIL PROTECTED]
error report for problem with Apache::Request / Apache->request issue operating systems are Mandrake 9.2 uname -a Linux d64-180-42-110.bchsia.telus.net 2.4.22-10mdk #1 Thu Sep 18 12:30:58 CEST 2003 i686 unknown unknown GNU/Linux or freebsd 5.1 FreeBSD devserver.ppw 5.1-RELEASE FreeBSD 5.1-RELEASE #0: Thu Jun 5 02:55:42 GMT 2003 [EMAIL PROTECTED]:/usr/obj/usr/src/sys/GENERIC i386 ***unless specified error info will be linux first then freebsd*** #Anything in the error_log file that looks suspicious and possibly related to the problem. when it doesnt work it reports nothing to error log! #Output of perl -V -bash-2.05b$ perl -V Summary of my perl5 (revision 5.0 version 8 subversion 1) configuration: Platform: osname=linux, osvers=2.4.18-23mdksmp, archname=i386-linux-thread-multi uname='linux hp6.mandrakesoft.com 2.4.18-23mdksmp #1 smp fri aug 2 12:31:40 cest 2002 i686 unknown unknown gnulinux ' config_args='-des -Dinc_version_list=5.8.0/i386-linux-thread-multi 5.8.0 5.6.1 5.6.0 -Darchname=i386-linux -Dcc=gcc -Doptimize=-O2 -fomit-frame-pointer -pipe -march=i586 -mcpu=pentiumpro -Dprefix=/usr -Dvendorprefix=/usr -Dsiteprefix=/usr -Dman3ext=3pm -Dcf_by=MandrakeSoft -Dmyhostname=localhost [EMAIL PROTECTED] -Dd_dosuid -Ud_csh -Duseshrplib -Dusethreads' hint=recommended, useposix=true, d_sigaction=define usethreads=define 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='gcc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm', optimize='-O2 -fomit-frame-pointer -pipe -march=i586 -mcpu=pentiumpro ', cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -fno-strict-aliasing -I/usr/local/include -I/usr/include/gdbm' ccversion='', gccversion='3.3.1 (Mandrake Linux 9.2 3.3.1-1mdk)', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=4, prototype=define Linker and Libraries: ld='gcc', ldflags =' -L/usr/local/lib' libpth=/usr/local/lib /lib /usr/lib libs=-lnsl -lndbm -lgdbm -ldl -lm -lcrypt -lutil -lpthread -lc perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc libc=/lib/libc-2.3.2.so, so=so, useshrplib=true, libperl=libperl.so gnulibc_version='2.3.2' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic -Wl,-rpath,/usr/lib/perl5/5.8.1/i386-linux-thread-multi/CORE' cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib' Characteristics of this binary (from libperl): Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES PERL_IMPLICIT_CONTEXT Locally applied patches: RC4 Built under linux Compiled at Sep 1 2003 17:29:01 @INC: /usr/lib/perl5/5.8.1/i386-linux-thread-multi /usr/lib/perl5/5.8.1 /usr/lib/perl5/site_perl/5.8.1/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.1 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.1 /usr/lib/perl5/vendor_perl/5.8.0 /usr/lib/perl5/vendor_perl . *************** OR freebsd ***************** -bash-2.05b$ perl -V Summary of my perl5 (revision 5.0 version 8 subversion 2) configuration: Platform: osname=freebsd, osvers=5.1-release, archname=i386-freebsd uname='freebsd devserver.ppw 5.1-release freebsd 5.1-release #0: thu jun 5 02:55:42 gmt 2003 [EMAIL PROTECTED]:usrobjusrsrcsysgeneric i386 ' config_args='-sde -Dprefix=/usr/local -Darchlib=/usr/local/lib/perl5/5.8.2/mach -Dprivlib=/usr/local/lib/perl5/5.8.2 -Dman3dir=/usr/local/lib/perl5/5.8.2/man/man3 -Dman1dir=/usr/local/man/man1 -Dsitearch=/usr/local/lib/perl5/site_perl/5.8.2/mach -Dsitelib=/usr/local/lib/perl5/site_perl/5.8.2 -Dscriptdir=/usr/local/bin -Ui_malloc -Ui_iconv -Uinstallusrbinperl -Dcc=cc -Doptimize=-O -pipe -mcpu=pentiumpro -Duseshrplib -Dccflags=-DAPPLLIB_EXP="/usr/local/lib/perl5/5.8.2/BSDPAN" -Dd_dosuid=define -Ui_gdbm -Dusethreads=n -Dusemymalloc=y' hint=recommended, useposix=true, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=y, bincompat5005=undef Compiler: cc='cc', ccflags ='-DAPPLLIB_EXP="/usr/local/lib/perl5/5.8.2/BSDPAN" -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -I/usr/local/include', optimize='-O -pipe -mcpu=pentiumpro', cppflags='-DAPPLLIB_EXP="/usr/local/lib/perl5/5.8.2/BSDPAN" -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -I/usr/local/include' ccversion='', gccversion='3.2.2 [FreeBSD] 20030205 (release)', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=4, prototype=define Linker and Libraries: ld='cc', ldflags ='-Wl,-E -L/usr/local/lib' libpth=/usr/lib /usr/local/lib libs=-lm -lcrypt -lutil -lc perllibs=-lm -lcrypt -lutil -lc libc=, so=so, useshrplib=true, libperl=libperl.so gnulibc_version='' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' -Wl,-R/usr/local/lib/perl5/5.8.2/mach/CORE' cccdlflags='-DPIC -fPIC', lddlflags='-shared -L/usr/local/lib' Characteristics of this binary (from libperl): Compile-time options: USE_LARGE_FILES Built under freebsd Compiled at Jan 13 2004 10:05:37 @INC: /usr/local/lib/perl5/site_perl/5.8.2/mach /usr/local/lib/perl5/site_perl/5.8.2 /usr/local/lib/perl5/site_perl /usr/local/lib/perl5/5.8.2/BSDPAN /usr/local/lib/perl5/5.8.2/mach /usr/local/lib/perl5/5.8.2 #Version of mod_perl (hint: it's logged into the error_log file when the server has just started) mod_perl/1.28 OR mod_perl/1.29 #Version of apache (hint: it's logged into the error_log file when the server has just started) Apache-AdvancedExtranetServer/1.3.28 (Mandrake Linux/3mdk) OR Apache/1.3.29 (Unix) #Options given to mod_perl's Makefile.PL while building it. If you are using a pre-compiled binary (e.g., rpm), find the source package that was used to build this binary and retrieve this information from there. linux: trying to figure out based on rpm, contacted the rpm's maintainer apxs/dso freebsd; sys admin didnt save config setting but it is apxs/dso #Server configuration details (that's the relevant parts of your httpd.conf, usually just the relevant mod_perl configuration sections). Sea attachement pp.conf and startup.pl {probably un-essential} which are both included into the httpd.conf like so: PerlRequire conf/startup.pl Include conf/pp.conf #Relevant sections of your ErrorLog (make test's is: t/logs/error_log) in this situation it doesnt push anything through #If some other code doesn't work, minimize that code to a minimal size while it reproduces the problem and attach it to the report. See other attachements OtherThing.pm and UseMe.pm #If you build from source, make sure that make test passes 100%. ###################### procedure ###################### #1 *go to site http://<YOURSITE>/PP/otherthing?funk=rock or whatever *upload file this should upload file and pass $apr to UseMe and display list of args via datadumper #2 *go to site http://<YOURSITE>/PP/useme?funk=rock or whatever should pass form useme handler to other subroutine and display list of args via datadumper ############################################ testing problems ############################################ ###################### on linux ###################### -bash-2.05b$ t/TEST -httpd /usr/sbin/httpd *** setting ulimit to allow core files ulimit -c unlimited; t/TEST -httpd '/usr/sbin/httpd' /usr/sbin/httpd -d /home/drfrog/bug-reporting-skeleton-mp1/t -f /home/drfrog/bug-reporting-skeleton-mp1/t/conf/httpd.conf -DAPACHE2 -DPERL_USEITHREADS using Apache-AdvancedExtranetServer/1.3.28 waiting 60 seconds for server to start: .Syntax error on line 80 of /home/drfrog/bug-reporting-skeleton-mp1/t/conf/httpd.conf: Invalid command 'SetHandler', perhaps mis-spelled or defined by a module not included in the server configuration !!! server has died with status 255 (t/logs/error_log wasn't created, start the server in the debug mode) ********** notes ********** the reason here is because mandrake 9.2 has ifmodule commands: <IfModule mod_status.c> <IfModule mod_info.c> that wrap arond these directives how can i set them into the httpd.conf? please note it trying to use httpd2 as well ###################### on freebsd ###################### -bash-2.05b$ t/TEST -httpd /usr/local/apache/bin/httpd /usr/local/apache/bin/httpd -d /usr/home/clayton/bug-reporting-skeleton-mp1/t -f /usr/home/clayton/bug-reporting-skeleton-mp1/t/conf/httpd.conf -DAPACHE1 using Apache/1.3.29 waiting 60 seconds for server to start: .fopen: No such file or directory httpd: could not open document config file /usr/home/clayton/bug-reporting-skeleton-mp1/t/conf/.#extra.conf ............................................................ waiting 60 seconds for server to start: giving up after 61 secs !!! server failed to start! (t/logs/error_log wasn't created, start the server in the debug mode) ********** notes ********** where do i find fopen on freebsd? also i had to move the mod_perl.pm into blib/lib b/c i couldnt find how to use lib this into place! ######## errata ######## not sure how to add in the fileupload procedure, please see bug.t for a how i was trying, but unfortunately i didnt get far enough in test suite to accomodate this
bugrepmod.tgz
Description: application/compressed-tar
<Perl> my @modules=( ['login','','Login'], ['addsite','','AddSite'], ['addpages','','AddPages'], ['addproducts','PP/','AddProducts'], ['editsite','PP/','EditSite'], ['editpages','PP/','EditPages'], ['editproducts','PP/','EditProducts'], ['index.html','PP/','ManageSite'], ['managepages','PP/','ManagePages'], ['manageproducts','PP/','ManageProducts'], ['upload','PP/','Uploads'], ['excelupload','PP/','ExcelUploads'], ['exceldnload','PP/','ExcelDnloads'], ['useme','PP/','UseMe'], ['otherthing','PP/','OtherThing'], ); foreach (@modules){ my $file = File::Spec::Functions::catfile('/',$_->[1],$_->[0]) ; $Location{$file}={ SetHandler =>'perl-script', PerlHandler =>'PP::'.$_->[2] }; } </Perl> #PerlTaintCheck On #PerlSetVar AuthCookieDebug 1 PerlModule PP::Login PerlSetVar Path / PerlSetVar PPLoginScript /login PerlSetVar PPDomain .cms_prototype.ppw PerlSetVar secret "where is the security" <Location /PP/> AuthType PP::Login AuthName PP PerlAuthenHandler PP::Login->authenticate PerlAuthzHandler PP::Login->authorize require valid-user </Location> <Files LOGOUT> AuthType PP::Login AuthName PP SetHandler perl-script PerlHandler PP::Login->logout </Files> <Files LOGIN> AuthType PP::Login AuthName PP SetHandler perl-script PerlHandler PP::Login->login </Files>
#example PerlRequire script for mod_perl #it's recommened that you use Apache::Registry as your default #handler for the handler stage of a request #or, implement your handler for this or any stage of a request #as a PerlModule under the Apache:: namespace #PerlRequire is here if you choose otherwise... #To load this file when the server starts - #can be a full path or relative to ServerRoot #add this to srm.conf: #PerlRequire scripts/startup.pl # make sure we are in a sane environment. $ENV{MOD_PERL} or die "not running under mod_perl!"; #modify @INC if needed use lib qw(/usr/local/apache/pm/); #load perl modules of your choice here #this code is interpreted *once* when the server starts use CGI qw(:common); #use DBI; use Apache; use Apache::Cookie; use Apache::AuthCookie; use Apache::Request; use Apache::Registry; use Apache::Constants qw(:common REDIRECT) ; use Apache::DBI; use Apache::Blog; use Apache::Session::MySQL; use Data::Dumper qw(Dumper); use HTML::Template; use HTML::Pager; use Locale::SubCountry; use Crypt::CBC; use Email::Valid; use Mail::Sender; use LWP::UserAgent (); use File::Spec::Functions qw( catdir rootdir ); use LWP::Simple; use Spreadsheet::ParseExcel; use Spreadsheet::WriteExcel; use URI::Escape; # Initialize the database connections for each child =cut Apache::DBI->connect_on_init ("DBI:mysql:database=pp;host=localhost;mysql_socket=/tmp/mysql.sock", "drfrog","trans22", { PrintError => 1, # warn() on errors RaiseError => 0, # don't die on error AutoCommit => 1, # commit executes immediately } ); =cut #$Apache::DBI::DEBUG = 1; use PP::Global; #you may define Perl*Handler subroutines here too 1; #return true value
-- Reporting bugs: http://perl.apache.org/bugs/ Mail list info: http://perl.apache.org/maillist/modperl.html List etiquette: http://perl.apache.org/maillist/email-etiquette.html