squirrelmail-webmail
1.4.22
About: SquirrelMail is a standards-based webmail package with strong MIME support, address books, and folder manipulation (written in PHP4).
![]() ![]() |
Go to the source code of this file.
Namespaces | |
squirrelmail | |
Variables | |
const | PAGE_NAME 'login' |
const | SM_PATH '../' |
$sep = '' | |
$sel = '' | |
if(!empty($_SESSION)) global | $custom_session_handlers |
$loginname_value = (sqGetGlobalVar('loginname', $loginname) ? htmlspecialchars($loginname) : '') | |
$header | |
$custom_css = 'none' | |
$username_form_name = 'login_username' | |
$password_form_name = 'secretkey' | |
if(sqgetGlobalVar('mailtodata', $mailtodata)) | else |
if (isset( $org_logo) &&$org_logo) | |
if (!empty( $_SESSION)) global $custom_session_handlers |
in some rare instances, the session seems to stick around even after destroying it (!!), so if it does, we'll manually flatten the $_SESSION dataAllow administrators to define custom session handlers for SquirrelMail without needing to change anything in php.ini (application-level).
In config_local.php, admin needs to put:
$custom_session_handlers = array( 'my_open_handler', 'my_close_handler', 'my_read_handler', 'my_write_handler', 'my_destroy_handler', 'my_gc_handler', ); session_module_name('user'); session_set_save_handler( $custom_session_handlers[0], $custom_session_handlers[1], $custom_session_handlers[2], $custom_session_handlers[3], $custom_session_handlers[4], $custom_session_handlers[5] );
We need to replicate that code once here because PHP has long had a bug that resets the session handler mechanism when the session data is also destroyed. Because of this bug, even administrators who define custom session handlers via a PHP pre-load defined in php.ini (auto_prepend_file) will still need to define the $custom_session_handlers array in config_local.php.
$header |
$loginname_value = (sqGetGlobalVar('loginname', $loginname) ? htmlspecialchars($loginname) : '') |
$sel = '' |
Definition at line 44 of file login.php.
Referenced by AddressBook\list_addr(), AddressBook\lookup(), oh_opt(), s_opt(), and AddressBook\search().
$sep = '' |
In case the last session was not terminated properly, make sure we get a new one, but make sure we preserve session_expired_*
Definition at line 43 of file login.php.
Referenced by get_paginator_str().
if (sqgetGlobalVar( 'mailtodata', $mailtodata)) else |