function sess_regenerate in Drupal 5
Same name and namespace in other branches
- 4 includes/session.inc \sess_regenerate()
- 6 includes/session.inc \sess_regenerate()
Called when an anonymous user becomes authenticated or vice-versa.
3 calls to sess_regenerate()
- user_login_submit in modules/
user/ user.module - user_pass_reset in modules/
user/ user.module - Menu callback; process one time login link and redirects to the user page on success.
- user_save in modules/
user/ user.module - Save changes to a user account or add a new user.
File
- includes/
session.inc, line 88 - User session handling functions.
Code
function sess_regenerate() {
$old_session_id = session_id();
// We code around http://bugs.php.net/bug.php?id=32802 by destroying
// the session cookie by setting expiration in the past (a negative
// value). This issue only arises in PHP versions before 4.4.0,
// regardless of the Drupal configuration.
// TODO: remove this when we require at least PHP 4.4.0
if (isset($_COOKIE[session_name()])) {
setcookie(session_name(), '', time() - 42000, '/');
}
session_regenerate_id();
db_query("UPDATE {sessions} SET sid = '%s' WHERE sid = '%s'", session_id(), $old_session_id);
}