Hi all,
Cookies driving me nuts as usual but I think the problem appears to be
related to which handler phase we are in.
Basically, the same call to read the cookies works in the PerlHandler but
not in the PerlAccessHandler.
in Access.pm I have :
use CGI;
use CGI::Cookie;
sub handler {
my $r = shift;
warn $r->as_string;
my $cookies = fetch CGI::Cookie;
warn "Access Dumping Cookies:\n" . Dumper($cookies);
return Apache::DECLINED if $r->uri =~ m|/authenticate|
Access.pm is called thus:
<Location />
AddType text/html .html
AddHandler server-parsed .html
Options +Includes
PerlSetVar WM_Auth_Domain wm.tonkinresolutions.com
PerlAccessHandler WM::Auth::Access
</Location>
in Auth.pm I have :
use CGI;
use CGI::Cookie;
sub handler {
my $r = shift;
warn $r->as_string;
my $cookies = fetch CGI::Cookie;
warn "Auth Dumping Cookies:\n" . Dumper($cookies);
Auth.pm is called thus:
ErrorDocument 403 /authenticate
<Location /authenticate>
sethandler perl-script
PerlHandler WM::Auth::Auth
</Location>
I request /authenticate when I already have an 'auth' cookie on the
browser, and I get this:
Access Dumping Headers:
GET /authenticate?foo HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
application/vnd.ms-powerpoint, application/vnd.ms-excel,
application/msword, */*
Accept-Language: en-us
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
Host: wm.tonkinresolutions.com
Connection: Keep-Alive
Cookie: foo=bar;
remembered_uri=https%3A%2F%2Fwm.tonkinresolutions.com%2Findex.html;
auth=hash&6032ccbfd909f951dcfbd804441163bc&group_name&root&session&580a5fc6a0215f2eaecde2e6d5554b07&user&nick&_time&1045689878&expires&60
INCLUDED (null)
Access Dumping Cookies:
$VAR1 = undef;
Auth Dumping Headers:
GET /authenticate?foo HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
application/vnd.ms-powerpoint, application/vnd.ms-excel,
application/msword, */*
Accept-Language: en-us
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
Host: wm.tonkinresolutions.com
Connection: Keep-Alive
Cookie: foo=bar;
remembered_uri=https%3A%2F%2Fwm.tonkinresolutions.com%2Findex.html;
auth=hash&6032ccbfd909f951dcfbd804441163bc&group_name&root&session&580a5fc6a0215f2eaecde2e6d5554b07&user&nick&_time&1045689878&expires&60
HTTP/1.1 (null)
Auth Dumping Cookies:
$VAR1 = {
'auth' => bless( {
'value' => [
'hash',
'6032ccbfd909f951dcfbd804441163bc',
'group_name',
'root',
'session',
'580a5fc6a0215f2eaecde2e6d5554b07',
'user',
'nick',
'_time',
'1045689878',
'expires',
'60'
],
'name' => 'auth',
'path' => '/'
}, 'CGI::Cookie' ),
'foo' => bless( {
'value' => [
'bar'
],
'name' => 'foo',
'path' => '/'
}, 'CGI::Cookie' ),
'remembered_uri' => bless( {
'value' => [
'https://wm.tonkinresolutions.com/index.html'
],
'name' => 'remembered_uri',
'path' => '/'
}, 'CGI::Cookie' )
};
Can anyone offer a clue?
Thanks,
- nick
--
~~~~~~~~~~~~~~~~~~~~
Nick Tonkin {|8^)>