From 7bc513aa822fa9e91a734117730c63e4c9828d55 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Thu, 4 May 2023 11:40:41 +0200 Subject: [PATCH] Bug 17427: Retrieve sessionID from HTTP_COOKIE To make some tests pass (t/db_dependent/Auth.t) and mimick what did CGI::Session, but that is certainly useless and the tests should be adjusted. --- C4/Auth.pm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/C4/Auth.pm b/C4/Auth.pm index 882d18cdc5e..20bc6884345 100644 --- a/C4/Auth.pm +++ b/C4/Auth.pm @@ -1861,6 +1861,12 @@ sub _get_session_params { sub get_session { my $sessionID = shift; my $params = _get_session_params(); + unless ( $sessionID ) { + my $http_cookie = $ENV{HTTP_COOKIE}; + if ( $http_cookie && $http_cookie =~ m{CGISESSID=([^,:]*)} ) { + $sessionID = $1; + } + } my $session = Data::Session->new( %$params, ($sessionID ? ( id => $sessionID ) : () ) ) || die $Data::Session::errstr; $session->new_session unless $sessionID; return $session; -- 2.25.1