Hi,
I did try using %udat initially, but it throws the foll error:
Can't store CODE items at blib/lib/Storable.pm (autosplit into blib/lib/auto/Storable/_freeze.al) line 282, at /usr/local/ext/perl/5.8.0/lib/site_perl/Apache/Session/Serialize/Storable.pm line 21
Thanks & Best Regards,
Thanks & Best Regards,
-Dhaval.
On 9/1/06, Gerald Richter <[EMAIL PROTECTED]> wrote:
Hi,
> Well I did try printing the value for $cookie and gives me
> the foll value:
>
> EMBPERL_UID=df9c7b02f04343807ef7ab570ab43dc6;
> SESSION_ID=97f3d8207d2e8d9afd7493ca28c3908a;
> BIGipServerwebster2=593498284.20480.0000
>
> Also, while trying to retrieve the session, I tried supplying
> the following values for $cookie:
> 1) EMBPERL_UID=df9c7b02f04343807ef7ab570ab43dc6;
> SESSION_ID=97f3d8207d2e8d9afd7493ca28c3908a;
> BIGipServerwebster2=593498284.20480.0000
>
> 2) EMBPERL_UID=df9c7b02f04343807ef7ab570ab43dc6;
> 97f3d8207d2e8d9afd7493ca28c3908a;
> BIGipServerwebster2=593498284.20480.0000
>
> 3) 97f3d8207d2e8d9afd7493ca28c3908a
>
> But, each time, I get the same error , i.e.
> Died at
> /usr/local/ext/perl/5.8.0/lib/site_perl/Apache/Session/Generat
> e/MD5.pm line 40.
>
As Perrin already wrote only the last one is a valid session id you can pass
to tie.
Anyway Embperl already handles session retrival for you and you only need to
access the values in %udat to get your session data.
If you really want to do it one your own you need to change the regex to
extract the session id:
$cookie =~ /SESSION_ID=([a-z0-9]+)/;
$cookie = $1 ;
Otherwise you have other cookie data in your session id which doesn't work.
Gerald
>
>
> Let me know what do you think. Is it an issue with cookie or
> with retrieving sessions ? Also, what value needs to be
> supplied for $cookie while trying to retrieve a session.
> tie %session, 'Apache::Session::File', $cookie,
>
> { Directory => './tmp/sessions' ,
> LockDirectory => './var/lock/sessions' , };
>
>
> Your help is really appreciated.
>
> Thanks & Best Regards,
> Dhaval Gada.
>
> On 8/30/06, Perrin Harkins <[EMAIL PROTECTED] > wrote:
>
> [ Please keep replies on the mailing list ]
>
> On Wed, 2006-08-30 at 09:29 -0400, dhaval gada wrote:
>
> > If its the 1st time... then the following code. ( i.e. session
> > creation)
> >
> > [-
> > eval {
> > tie %session, 'Apache::Session::File', undef,
> > { Directory => './tmp/sessions',
> > LockDirectory => './var/lock/sessions',
> > };
> > };
> > if ($@) {
> > die "Global data is not accessible: $@";
> > }
> >
> > $session{"manpage"} = new BFM::ManPage();
> > $session{"visit"} = '1 all';
> > $tp = yes;
> >
> > my $session_cookie =
> "SESSION_ID=$session{_session_id};";
> > $r->header_out("Set-Cookie" => $session_cookie);
> > -]
>
> Okay, and you said that seemed to work. I'd be nervous
> about your use
> of relative directories in those path names, personally.
>
> > And if not the 1st time... then the following
> code.(i.e. retrieving
> > established session)
> > [-
> > $r = Apache ->request;
> > $cookie = $ r->header_in('Cookie');
> > $ cookie =~ s/SESSION_ID=(\w*)/$1/;
> >
> > eval { tie %session ,
> 'Apache::Session::File', $cookie,
> > { Directory => './tmp/sessions',
> > LockDirectory => './var/lock/sessions',
> > };
> > };
> >
> > if ($@)
> > { die "Global data is not accessible: $@"; }
> > -]
>
> And that's where it dies on you? Have you checked the
> value of $cookie
> inside that eval? Maybe it isn't what you think it is.
>
> - Perrin
>
>
>
>
>
** Virus checked by BB-5000 Mailfilter **