diff options
author | ivan <ivan> | 2011-09-30 05:15:32 +0000 |
---|---|---|
committer | ivan <ivan> | 2011-09-30 05:15:32 +0000 |
commit | 3846d4d0394f42c80dd8088c6763962b40bb929b (patch) | |
tree | 93aa1cb2dfc5d9de406acf115a843f0b7e182b91 | |
parent | 06e9b0e6c9329e480e3b26bd38e1d3d23a88f6a3 (diff) |
check old password if supplied, RT#13656
-rw-r--r-- | FS/FS/ClientAPI/MyAccount.pm | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/FS/FS/ClientAPI/MyAccount.pm b/FS/FS/ClientAPI/MyAccount.pm index a5f47934b..16a631118 100644 --- a/FS/FS/ClientAPI/MyAccount.pm +++ b/FS/FS/ClientAPI/MyAccount.pm @@ -2148,6 +2148,11 @@ sub myaccount_passwd { } ) or return { 'error' => "Service not found" }; + if ( exists($p->{'old_password'}) ) { + return "Incorrect password." + unless $svc_acct->check_password($p->{'old_password'}); + } + $svc_acct->_password($p->{'new_password'}); my $error = $svc_acct->replace(); |