--- loncom/interface/lonpreferences.pm 2021/03/06 19:44:12 1.238 +++ loncom/interface/lonpreferences.pm 2021/11/30 15:55:37 1.239 @@ -1,7 +1,7 @@ # The LearningOnline Network # Preferences # -# $Id: lonpreferences.pm,v 1.238 2021/03/06 19:44:12 raeburn Exp $ +# $Id: lonpreferences.pm,v 1.239 2021/11/30 15:55:37 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -1265,7 +1265,8 @@ sub passwordchanger { # This function is a bit of a mess.... # Passwords are encrypted using londes.js (DES encryption) $errormessage = ($errormessage || ''); - my ($user,$domain,$currentpass); + my ($user,$domain,$currentpass,$clientip); + $clientip = &Apache::lonnet::get_requestor_ip($r); &Apache::lonhtmlcommon::add_breadcrumb( { href => '/adm/preferences?action=changepass', text => 'Change Password'}); @@ -1280,7 +1281,7 @@ sub passwordchanger { $caller = 'preferences'; } my ($blocked,$blocktext) = - &Apache::loncommon::blocking_status('passwd'); + &Apache::loncommon::blocking_status('passwd',$clientip); if ($blocked) { $r->print('

'.$blocktext.'

'); return; @@ -1302,7 +1303,7 @@ sub passwordchanger { $domain = $data{'domain'}; $currentpass = $data{'temppasswd'}; my ($blocked,$blocktext) = - &Apache::loncommon::blocking_status('passwd',$user,$domain); + &Apache::loncommon::blocking_status('passwd',$clientip,$user,$domain); if ($blocked) { $r->print('

'.$blocktext.'

'); return; @@ -1623,7 +1624,7 @@ sub server_form { sub verify_and_change_password { my ($r,$caller,$mailtoken,$timelimit,$extrafields,$ended) = @_; - my ($user,$domain,$homeserver); + my ($user,$domain,$homeserver,$clientip); if ($caller eq 'reset_by_email') { $user = $env{'form.uname'}; $domain = $env{'form.udom'}; @@ -1646,8 +1647,9 @@ sub verify_and_change_password { $domain = $env{'user.domain'}; $homeserver = $env{'user.home'}; } + $clientip = &Apache::lonnet::get_requestor_ip($r); my ($blocked,$blocktext) = - &Apache::loncommon::blocking_status('passwd',$user,$domain); + &Apache::loncommon::blocking_status('passwd',$clientip,$user,$domain); if ($blocked) { $r->print('

'.$blocktext.'

'); if ($caller eq 'reset_by_email') {