Here goes...
-------------8<---------- Start Bug Report ------------8<----------
1. Problem Description:
This issue occurs only when using auth and internal_redirects.
User request page a.html
some task is done and redirects to b.html
the redirect page (b.html) will not contain $r->user unless
get_basic_auth_pw is checked first
odd (not sure why)... here's how I had it and what I did to fix
it.
OLD WAY: [broken]
$obj->{USER_ID} = $r->user;
$obj->{USER_PASS} = $I->get_basic_auth_pw;
NEW WAY: [fixed]
$obj->{USER_PASS} = $r->get_basic_auth_pw;
$obj->{USER_ID} = $r->user;
So anyway, the only way I figured this out is because I put debugging
on just about every var through the app, and I notice that my USER_ID
one was the only one that changed (from the user who was on to undef).
well, I decided to warn out $r->user later on ... and after moving it
closer and closer to where I put it in my object, I noticed that it's
not assigned 'til immediately after get_basic_auth_pw.
Meaning: The problem is that $r->user will not return the proper user id
in an internal_redirect without first calling get_basic_auth_pw (which
i'm guessing not too many do)...
Hope this helps, any chance on a fix for this?
2. Used Components and their Configuration:
*** mod_perl version 1.9914
*** using
/var/tmp/src/apache/apache2/mod_perl-1.99_14/lib/Apache/BuildConfig.pm
*** Makefile.PL options:
MP_APXS => /usr/local/apache2/bin/apxs
MP_COMPAT_1X => 1
MP_GENERATE_XS => 1
MP_INST_APACHE2 => 1
MP_LIBNAME => mod_perl
MP_USE_DSO => 1
MP_USE_STATIC => 1
*** httpd -V
Server version: Apache/2.0.49
Server built: Jun 1 2004 14:59:01
Server's Module Magic Number: 20020903:7
Architecture: 32-bit
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/worker"
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_PROC_PTHREAD_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-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"
*** perl -v (it's perl 5.8.4 using threading on solaris... )
*** Packages of interest status:
Apache::Request: 2.03-dev
CGI : 3.05
LWP : 5.79
mod_perl : 1.29, 1.9914
-------------8<---------- End Bug Report --------------8<----------
--
Report problems: 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