X-Git-Url: http://git.shiar.nl/minimedit.git/blobdiff_plain/765d694a7c932a32c01e6fbfa15d16b5a6454d5a..d6bf8fa992cc01adc311b2ba80f29d7af466c2f3:/login/pass.inc.php diff --git a/login/pass.inc.php b/login/pass.inc.php index 483f8bb..5b03c80 100644 --- a/login/pass.inc.php +++ b/login/pass.inc.php @@ -1,21 +1,21 @@ dir}/.passwd"; + if (file_exists($pwfile) and !is_writable($pwfile)) { return "Het wachtwoord kan niet worden aangepast voor deze gebruiker."; } - if (!empty($user['pass'])) { + if (!empty($user->pass)) { if (empty($input['oldpass'])) { return "Als extra beveiliging tegen ongewenste aanpassingen moet het bestaande wachtwoord worden ingevoerd."; } - if (!login_password_verify($input['oldpass'], $user['pass'])) { + if (!login_password_verify($input['oldpass'], $user->pass)) { return "Het bestaande wachtwoord is onjuist ingevoerd; niet aangepast."; } } @@ -28,7 +28,7 @@ function passform($user, $input = []) return "Zo'n kort wachtwoord is een slecht idee."; } - if ($input['newpass'] == $user['name']) { + if ($input['newpass'] == $user->login) { return "De loginnaam is wel heel makkelijk raadbaar als wachtwoord."; } @@ -36,14 +36,15 @@ function passform($user, $input = []) return "Zorg dat bij de bevestiging precies het zelfde wachtwoord staat."; } - if (!file_put_contents($pwfile, $input['newpass'])) { + $passstore = password_hash($input['newpass'], PASSWORD_DEFAULT); + if (empty($passstore) or !file_put_contents($pwfile, $passstore)) { return "Het nieuwe wachtwoord kon niet worden opgeslagen. Het oude wachtwoord is behouden."; } - @unlink("{$user['dir']}/.token"); # invalidate reset token + @unlink("{$user->dir}/.token"); # invalidate reset token - $authhash = md5($input['newpass']); - $user['auth'] = "{$user['name']}:$authhash"; + $authhash = md5($passstore); + $user->auth = "{$user->login}:$authhash"; if ($GLOBALS['User'] === $user) { login_setcookie(); }