From 7253b8b19618aad2da107ccbf2364db1a6e23785 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Thu, 4 May 2023 10:47:46 +0200 Subject: [PATCH] Bug 17427: Remove confusion between session id and param id FIXME Certainly more work needed here --- C4/Auth.pm | 18 +++++++++--------- t/db_dependent/Auth.t | 8 ++++---- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/C4/Auth.pm b/C4/Auth.pm index 2e31580102f..22bfe811307 100644 --- a/C4/Auth.pm +++ b/C4/Auth.pm @@ -855,7 +855,7 @@ sub checkauth { ); if ( $return eq 'ok' || $return eq 'additional-auth-needed' ) { - $userid = $session->param('id'); + $userid = $session->param('userid'); } $auth_state = @@ -1217,7 +1217,7 @@ sub checkauth { } $session->param( 'number', $borrowernumber ); - $session->param( 'id', $userid ); + $session->param( 'userid', $userid ); $session->param( 'cardnumber', $cardnumber ); $session->param( 'firstname', $firstname ); $session->param( 'surname', $surname ); @@ -1237,7 +1237,7 @@ sub checkauth { } $session->param('cas_ticket', $cas_ticket) if $cas_ticket; C4::Context->set_userenv( - $session->param('number'), $session->param('id'), + $session->param('number'), $session->param('userid'), $session->param('cardnumber'), $session->param('firstname'), $session->param('surname'), $session->param('branch'), $session->param('branchname'), $session->param('flags'), @@ -1654,7 +1654,7 @@ sub check_api_auth { } } $session->param( 'number', $borrowernumber ); - $session->param( 'id', $userid ); + $session->param( 'userid', $userid ); $session->param( 'cardnumber', $cardnumber ); $session->param( 'firstname', $firstname ); $session->param( 'surname', $surname ); @@ -1668,7 +1668,7 @@ sub check_api_auth { } $session->param( 'cas_ticket', $cas_ticket); C4::Context->set_userenv( - $session->param('number'), $session->param('id'), + $session->param('number'), $session->param('userid'), $session->param('cardnumber'), $session->param('firstname'), $session->param('surname'), $session->param('branch'), $session->param('branchname'), $session->param('flags'), @@ -1754,7 +1754,7 @@ sub check_cookie_auth { C4::Context::_unset_userenv($sessionID); # remove old userenv first my $session = get_session($sessionID); if ($session) { - my $userid = $session->param('id'); + my $userid = $session->param('userid'); my $ip = $session->param('ip'); my $lasttime = $session->param('lasttime'); my $timeout = _timeout_syspref(); @@ -1782,7 +1782,7 @@ sub check_cookie_auth { C4::Context->_new_userenv($sessionID); C4::Context->interface($session->param('interface')); C4::Context->set_userenv( - $session->param('number'), $session->param('id') // '', + $session->param('number'), $session->param('userid') // '', $session->param('cardnumber'), $session->param('firstname'), $session->param('surname'), $session->param('branch'), $session->param('branchname'), $session->param('flags'), @@ -1883,7 +1883,7 @@ sub create_basic_session { my $session = get_session(""); $session->param( 'number', $patron->borrowernumber ); - $session->param( 'id', $patron->userid ); + $session->param( 'userid', $patron->userid ); $session->param( 'cardnumber', $patron->cardnumber ); $session->param( 'firstname', $patron->firstname ); $session->param( 'surname', $patron->surname ); @@ -1891,7 +1891,7 @@ sub create_basic_session { $session->param( 'branchname', $patron->library->branchname ); $session->param( 'flags', $patron->flags ); $session->param( 'emailaddress', $patron->email ); - $session->param( 'ip', $session->remote_addr() ); + $session->param( 'ip', $ENV{REMOTE_ADDR} ); # FIXME $session->remote_addr() ); $session->param( 'lasttime', time() ); $session->param( 'interface', $interface); diff --git a/t/db_dependent/Auth.t b/t/db_dependent/Auth.t index c3b58f766c8..c1162eff704 100755 --- a/t/db_dependent/Auth.t +++ b/t/db_dependent/Auth.t @@ -157,7 +157,7 @@ subtest 'checkauth() tests' => sub { # Create 'former' session my $session = C4::Auth::get_session(); $session->param( 'number', $patron->id ); - $session->param( 'id', $patron->userid ); + $session->param( 'userid', $patron->userid ); $session->param( 'ip', '1.2.3.4' ); $session->param( 'lasttime', time() ); $session->param( 'interface', 'opac' ); @@ -196,7 +196,7 @@ subtest 'checkauth() tests' => sub { # Similar situation: Relogin with former session of $patron, new user $patron2 has no permissions $patron2->flags(undef)->store; $session->param( 'number', $patron->id ); - $session->param( 'id', $patron->userid ); + $session->param( 'userid', $patron->userid ); $session->param( 'interface', 'intranet' ); $session->flush; $sessionID = $session->id; @@ -946,7 +946,7 @@ subtest 'create_basic_session tests' => sub { isnt($session->id, undef, 'A new sessionID was created'); is( $session->param('number'), $patron->borrowernumber, 'Session parameter number matches' ); - is( $session->param('id'), $patron->userid, 'Session parameter id matches' ); + is( $session->param('userid'), $patron->userid, 'Session parameter userid matches' ); is( $session->param('cardnumber'), $patron->cardnumber, 'Session parameter cardnumber matches' ); is( $session->param('firstname'), $patron->firstname, 'Session parameter firstname matches' ); is( $session->param('surname'), $patron->surname, 'Session parameter surname matches' ); @@ -954,7 +954,7 @@ subtest 'create_basic_session tests' => sub { is( $session->param('branchname'), $patron->library->branchname, 'Session parameter branchname matches' ); is( $session->param('flags'), $patron->flags, 'Session parameter flags matches' ); is( $session->param('emailaddress'), $patron->email, 'Session parameter emailaddress matches' ); - is( $session->param('ip'), $session->remote_addr(), 'Session parameter ip matches' ); + is( $session->param('ip'), $ENV{REMOTE_ADDR}, 'Session parameter ip matches' ); is( $session->param('interface'), 'opac', 'Session parameter interface matches' ); $session = C4::Auth::create_basic_session({ patron => $patron, interface => 'staff' }); -- 2.25.1