\n"; echo "
\n"; } echo "
\n"; } ?>
'cp_oldpass', _("New Password") => 'cp_newpass', _("Verify New Password") => 'cp_verify'); foreach($values as $key=>$value) { ?>
name="plugin_change_pass">
$strResp"; } } } function change_pass_check($debug = 0) { global $cp_oldpass, $cp_newpass, $cp_verify; global $plugin_change_pass; sqgetGlobalVar('key', $key, SQ_COOKIE); sqgetGlobalVar('onetimepad', $onetimepad, SQ_SESSION); $messages = array(); $password = OneTimePadDecrypt($key, $onetimepad); if ($cp_oldpass == '') { $messages[] = _("You must type in your old password."); } if ($cp_newpass == '') { $messages[] = _("You must type in a new password."); } if ($cp_verify == '') { $messages[] = _("You must also type in your new password in the verify box."); } if ($cp_newpass != '' && ($cp_verify != $cp_newpass)) { $messages[] = _("Your new password doesn't match the verify password."); } if ($cp_oldpass != '' && ($cp_oldpass != $password)) { $messages[] = _("Your old password is not correct."); } if (count($messages)) { $return = $messages; } else { $return = change_pass_go($password, $debug); } return $return; } function change_pass_go($password, $debug) { include_once(SM_PATH . 'plugins/change_pass/settings.php'); global $username; global $cp_newpass, $key, $onetimepad; sqgetGlobalVar('base_uri', $base_uri, SQ_SESSION); $messages = array(); if ($debug) { $messages[] = _("Connecting to Password Server"); } $pop_socket = fsockopen($poppass_server, $poppass_port, $errno, $errstr); if (!$pop_socket) { $messages[] = _("ERROR:") . "$errstr ($errno)"; return $messages; } change_pass_readfb($pop_socket, $result, $messages, $debug); if(!preg_match('/^2\d\d/', $result) ) { change_pass_closeport($pop_socket, $messages, $debug); return $messages; } fputs($pop_socket, "user $username\r\n"); change_pass_readfb($pop_socket, $result, $messages, $debug); if(!preg_match('/^[23]\d\d/', $result) ) { change_pass_closeport($pop_socket, $messages, $debug); return $messages; } fputs($pop_socket, "pass $password\r\n"); change_pass_readfb($pop_socket, $result, $messages, $debug); if(!preg_match('/^[23]\d\d/', $result) ) { change_pass_closeport($pop_socket, $messages, $debug); return $messages; } fputs($pop_socket, "newpass $cp_newpass\r\n"); change_pass_readfb($pop_socket, $result, $messages, $debug); change_pass_closeport($pop_socket, $messages, $debug); if(!preg_match('/^2\d\d/', $result) ) { return $messages; } $messages[] = _("Password changed successfully."); // Write new cookies for the password $onetimepad = OneTimePadCreate(strlen($cp_newpass)); $key = OneTimePadEncrypt($cp_newpass, $onetimepad); sqsession_register($onetimepad, 'onetimepad'); setcookie('key', $key, 0, $base_uri); return $messages; } ?>