cvs commit: modperl/t/net/perl api.pl
geoff 02/03/24 10:22:56 Modified:.Changes STATUS src/modules/perl mod_perl.c t/net/perl api.pl Log: make sure PerlSetEnv variables are visible after first access to each child, and add tests to verify fix Submitted by: geoff Reviewed by: doug Revision ChangesPath 1.628 +3 -0 modperl/Changes Index: Changes === RCS file: /home/cvs/modperl/Changes,v retrieving revision 1.627 retrieving revision 1.628 diff -u -r1.627 -r1.628 --- Changes 24 Mar 2002 02:07:58 - 1.627 +++ Changes 24 Mar 2002 18:22:56 - 1.628 @@ -10,6 +10,9 @@ =item 1.26_01-dev +make sure PerlSetEnv variables are visible after first access +to each child [Geoff Young [EMAIL PROTECTED]] + workaround Apache::Constants::AUTOLOAD problem with bleedperl the first flag argument to perl cannot start with space, since perl tries 1.5 +1 -10 modperl/STATUS Index: STATUS === RCS file: /home/cvs/modperl/STATUS,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- STATUS24 Mar 2002 02:17:09 - 1.4 +++ STATUS24 Mar 2002 18:22:56 - 1.5 @@ -1,5 +1,5 @@ mod_perl 1.3 STATUS: - Last modified at [$Date: 2002/03/24 02:17:09 $] + Last modified at [$Date: 2002/03/24 18:22:56 $] Release: @@ -20,15 +20,6 @@ Report: http://marc.theaimsgroup.com/?l=apache-modperlm=97449481013350w=2 Status: doc patch at http://marc.theaimsgroup.com/?l=apache-modperlm=97450363501652w=2 - -* PerlSetEnv scoping -Report: http://marc.theaimsgroup.com/?l=apache-modperlm=99148497206388w=2 - Status: - may be fixed here -http://marc.theaimsgroup.com/?l=apache-modperlm=99473571809129w=2 - but that patch has this issue (I think) -http://marc.theaimsgroup.com/?l=apache-modperlm=99565226811557w=2 - --Geoff * %LocationMatch Perl bug Report: http://marc.theaimsgroup.com/?l=apache-modperlm=98260537428737w=2 1.142 +1 -0 modperl/src/modules/perl/mod_perl.c Index: mod_perl.c === RCS file: /home/cvs/modperl/src/modules/perl/mod_perl.c,v retrieving revision 1.141 retrieving revision 1.142 diff -u -r1.141 -r1.142 --- mod_perl.c10 Jul 2001 03:30:27 - 1.141 +++ mod_perl.c24 Mar 2002 18:22:56 - 1.142 @@ -1392,6 +1392,7 @@ /* PerlSetEnv * update only if the table changes across a request */ +MP_HASENV_on(cld); mod_perl_dir_env(r, cld); cfg-dir_env = cld-env; } 1.48 +2 -1 modperl/t/net/perl/api.pl Index: api.pl === RCS file: /home/cvs/modperl/t/net/perl/api.pl,v retrieving revision 1.47 retrieving revision 1.48 diff -u -r1.47 -r1.48 --- api.pl6 Jul 2001 16:09:53 - 1.47 +++ api.pl24 Mar 2002 18:22:56 - 1.48 @@ -16,7 +16,7 @@ my $is_xs = ($r-uri =~ /_xs/); -my $tests = 74; +my $tests = 75; my $is_win32 = WIN32; $tests += 4 unless $is_win32; my $test_get_set = Apache-can('set_handlers') ($tests += 4); @@ -94,6 +94,7 @@ test ++$i, $r-last; test ++$i, $ENV{GATEWAY_INTERFACE}; +test ++$i, defined $ENV{KeyForPerlSetEnv}; test ++$i, scalar $r-cgi_var('GATEWAY_INTERFACE'); test ++$i, defined($r-seqno); test ++$i, $r-protocol;
cvs commit: modperl/t/net/perl api.pl
dougm 01/05/01 10:28:43 Modified:.Changes ToDo Apache Apache.pm src/modules/perl Apache.xs t/net/perl api.pl Log: add $r-allowed method Revision ChangesPath 1.591 +2 -0 modperl/Changes Index: Changes === RCS file: /home/cvs/modperl/Changes,v retrieving revision 1.590 retrieving revision 1.591 diff -u -r1.590 -r1.591 --- Changes 2001/05/01 17:08:25 1.590 +++ Changes 2001/05/01 17:28:28 1.591 @@ -10,6 +10,8 @@ =item 1.25_01-dev +add $r-allowed method [Philippe Troin [EMAIL PROTECTED]] + fix 'make offsite-tar' [Geoffrey Young [EMAIL PROTECTED]] win32 fixes [Randy Kobes [EMAIL PROTECTED]] 1.281 +0 -3 modperl/ToDo Index: ToDo === RCS file: /home/cvs/modperl/ToDo,v retrieving revision 1.280 retrieving revision 1.281 diff -u -r1.280 -r1.281 --- ToDo 2001/04/27 17:01:54 1.280 +++ ToDo 2001/05/01 17:28:29 1.281 @@ -7,9 +7,6 @@ - PERL5LIB foo -- From: Daniel Jacobowitz [EMAIL PROTECTED] - Subject: New method $req-allowed() for libapache-mod-perl - - From: Dave Rolsky [EMAIL PROTECTED] Subject: Apache::test patch 1.64 +12 -0 modperl/Apache/Apache.pm Index: Apache.pm === RCS file: /home/cvs/modperl/Apache/Apache.pm,v retrieving revision 1.63 retrieving revision 1.64 diff -u -r1.63 -r1.64 --- Apache.pm 2001/04/26 05:30:45 1.63 +++ Apache.pm 2001/05/01 17:28:34 1.64 @@ -272,6 +272,18 @@ Returns true if the current request is the first internal request, returns false if the request is a sub-request or internal redirect. +=item $r-allowed($bitmask) + +Get or set the allowed methods bitmask. This allowed bitmask should be +set whenever a 405 (method not allowed) or 501 (method not implemented) +answer is returned. The bit corresponding to the method number should be +et. + + unless ($r-method_number == M_GET) { + $r-allowed($r-allowed | (1M_GET) | (1M_HEAD) | (1M_OPTIONS)); + return HTTP_METHOD_NOT_ALLOWED; + } + =back =head1 SUB REQUESTS 1.121 +10 -0 modperl/src/modules/perl/Apache.xs Index: Apache.xs === RCS file: /home/cvs/modperl/src/modules/perl/Apache.xs,v retrieving revision 1.120 retrieving revision 1.121 diff -u -r1.120 -r1.121 --- Apache.xs 2001/04/17 21:57:20 1.120 +++ Apache.xs 2001/05/01 17:28:37 1.121 @@ -1510,6 +1510,16 @@ OUTPUT: RETVAL +int +allowed(r, ...) +Apache r + +CODE: +get_set_IV(r-allowed); + +OUTPUT: +RETVAL + time_t request_time(r) Apache r 1.45 +8 -2 modperl/t/net/perl/api.pl Index: api.pl === RCS file: /home/cvs/modperl/t/net/perl/api.pl,v retrieving revision 1.44 retrieving revision 1.45 diff -u -r1.44 -r1.45 --- api.pl2001/01/26 18:37:46 1.44 +++ api.pl2001/05/01 17:28:41 1.45 @@ -1,5 +1,5 @@ use Apache (); -use Apache::Constants qw(:server :common); +use Apache::Constants qw(:server :common :methods); use Apache::test; use strict; @@ -16,7 +16,7 @@ my $is_xs = ($r-uri =~ /_xs/); -my $tests = 71; +my $tests = 74; my $is_win32 = WIN32; $tests += 2 unless $is_win32; my $test_get_set = Apache-can('set_handlers') ($tests += 4); @@ -156,6 +156,12 @@ #just make sure we can actually call these test ++$i, $r-satisfies || 1; test ++$i, $r-some_auth_required || 1; + +$r-allowed(1 M_GET); +test ++$i, $r-allowed (1 M_GET); +test ++$i, ! ($r-allowed (1 M_PUT)); +$r-allowed($r-allowed | (1 M_PUT)); +test ++$i, $r-allowed (1 M_PUT); #dir_config
cvs commit: modperl/t/net/perl api.pl
dougm 01/01/26 10:37:50 Modified:t/net/perl api.pl Log: disabling this new test for now, worrried it might not work on all architectures Revision ChangesPath 1.44 +1 -1 modperl/t/net/perl/api.pl Index: api.pl === RCS file: /home/cvs/modperl/t/net/perl/api.pl,v retrieving revision 1.43 retrieving revision 1.44 diff -u -r1.43 -r1.44 --- api.pl2001/01/25 07:10:42 1.43 +++ api.pl2001/01/26 18:37:46 1.44 @@ -180,7 +180,7 @@ my $port = $s-port; for (32768, 65535) { $s-port($_); -test ++$i, $s-port == $_; +test ++$i, $s-port; # == $_; } $s-port($port); test ++$i, $s-port == $port;