[Koha-cvs] CVS: koha/C4 Auth.pm,1.7,1.8
Steve Tonnesen
tonnesen at users.sourceforge.net
Tue Jul 9 07:37:55 CEST 2002
Update of /cvsroot/koha/koha/C4
In directory usw-pr-cvs1:/tmp/cvs-serv20328
Modified Files:
Auth.pm
Log Message:
Auth.pm now caches form submissions and resubmits them if a user logs back in
after being logged out for inactivity. Also switched from crypt passwords to
md5 passwords stored in borrowers table. Used Digest::MD5 module. I ain't
gonna reinvent _that_ wheel. :)
Index: Auth.pm
===================================================================
RCS file: /cvsroot/koha/koha/C4/Auth.pm,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -r1.7 -r1.8
*** Auth.pm 5 Jul 2002 20:33:23 -0000 1.7
--- Auth.pm 9 Jul 2002 05:37:53 -0000 1.8
***************
*** 2,5 ****
--- 2,8 ----
use strict;
+ use Digest::MD5 qw(md5_base64);
+
+
require Exporter;
use C4::Database;
***************
*** 37,41 ****
if ($sth->rows) {
my ($userid, $ip, $lasttime) = $sth->fetchrow;
! if ($lasttime<time()-40 && $userid ne 'tonnesen') {
# timed logout
warn "$sessionID logged out due to inactivity.";
--- 40,44 ----
if ($sth->rows) {
my ($userid, $ip, $lasttime) = $sth->fetchrow;
! if ($lasttime<time()-15 && $userid ne 'tonnesen') {
# timed logout
warn "$sessionID logged out due to inactivity.";
***************
*** 43,46 ****
--- 46,53 ----
my $sti=$dbh->prepare("delete from sessions where sessionID=?");
$sti->execute($sessionID);
+ my $scriptname=$ENV{'SCRIPT_NAME'};
+ my $selfurl=$query->self_url();
+ $sti=$dbh->prepare("insert into sessionqueries (sessionID, userid, value) values (?, ?, ?)");
+ $sti->execute($sessionID, $userid, $selfurl);
open L, ">>/tmp/sessionlog";
my $time=localtime(time());
***************
*** 79,82 ****
--- 86,98 ----
my $sti=$dbh->prepare("insert into sessions (sessionID, userid, ip,lasttime) values (?, ?, ?, ?)");
$sti->execute($sessionID, $userid, $ENV{'REMOTE_ADDR'}, time());
+ $sti=$dbh->prepare("select value from sessionqueries where sessionID=? and userid=?");
+ $sti->execute($sessionID, $userid);
+ if ($sti->rows) {
+ my $stj=$dbh->prepare("delete from sessionqueries where sessionID=?");
+ $stj->execute($sessionID);
+ my ($selfurl) = $sti->fetchrow;
+ print $query->redirect($selfurl);
+ exit;
+ }
open L, ">>/tmp/sessionlog";
my $time=localtime(time());
***************
*** 154,159 ****
$sth->execute($userid);
if ($sth->rows) {
! my ($cryptpassword) = $sth->fetchrow;
! if (crypt($password, $cryptpassword) eq $cryptpassword) {
return 1;
}
--- 170,175 ----
$sth->execute($userid);
if ($sth->rows) {
! my ($md5password) = $sth->fetchrow;
! if (md5_base64($password) eq $md5password) {
return 1;
}
***************
*** 162,167 ****
$sth->execute($userid);
if ($sth->rows) {
! my ($cryptpassword) = $sth->fetchrow;
! if (crypt($password, $cryptpassword) eq $cryptpassword) {
return 1;
}
--- 178,183 ----
$sth->execute($userid);
if ($sth->rows) {
! my ($md5password) = $sth->fetchrow;
! if (md5_base64($password) eq $md5password) {
return 1;
}
More information about the Koha-cvs
mailing list