Bugzilla – Attachment 153037 Details for
Bug 17427
Replace CGI::Session with Data::Session
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 17427: Remove confusion between session id and param id
Bug-17427-Remove-confusion-between-session-id-and-.patch (text/plain), 7.24 KB, created by
Jonathan Druart
on 2023-07-05 08:04:28 UTC
(
hide
)
Description:
Bug 17427: Remove confusion between session id and param id
Filename:
MIME Type:
Creator:
Jonathan Druart
Created:
2023-07-05 08:04:28 UTC
Size:
7.24 KB
patch
obsolete
>From bb8092e6b38d7ccb9323185dcc7ebdeec21e3ee0 Mon Sep 17 00:00:00 2001 >From: Jonathan Druart <jonathan.druart@bugs.koha-community.org> >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 61c2e29c751..f2088618c5d 100644 >--- a/C4/Auth.pm >+++ b/C4/Auth.pm >@@ -854,7 +854,7 @@ sub checkauth { > ); > > if ( $return eq 'ok' || $return eq 'additional-auth-needed' ) { >- $userid = $session->param('id'); >+ $userid = $session->param('userid'); > } > > $auth_state = >@@ -1216,7 +1216,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 ); >@@ -1236,7 +1236,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'), >@@ -1653,7 +1653,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 ); >@@ -1667,7 +1667,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'), >@@ -1753,7 +1753,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(); >@@ -1790,7 +1790,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'), >@@ -1891,7 +1891,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 ); >@@ -1899,7 +1899,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 785eaba1ee8..4f0b1587e15 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; >@@ -963,7 +963,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' ); >@@ -971,7 +971,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
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 17427
:
56185
|
56504
|
56572
|
57067
|
60355
|
121337
|
121633
|
121657
|
121658
|
121659
|
150569
|
150570
|
150571
|
150603
|
150604
|
150605
|
150606
|
150633
|
150634
|
150635
|
150636
|
150637
|
150638
|
150639
|
150926
|
150927
|
150928
|
150929
|
150930
|
150931
|
153030
|
153031
|
153032
|
153033
|
153034
|
153035
|
153036
| 153037 |
153038
|
153039
|
153040