diff options
| author | till <till@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2008-02-13 05:26:47 +0000 |
|---|---|---|
| committer | till <till@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2008-02-13 05:26:47 +0000 |
| commit | a616b886480d2cd0facb7fa532528cd7a7a5b7eb (patch) | |
| tree | 4c26c6199b90b2371d3e77cbf84e8d2e1ed97001 | |
| parent | a12195ebd97c75413f397623d116332e68b5d857 (diff) | |
* implemented feature from #1484476
git-svn-id: https://svn.roundcube.net/trunk@1063 208e9e7b-5314-0410-a742-e7e81cd9613c
| -rw-r--r-- | roundcubemail/program/include/main.inc | 5 | ||||
| -rw-r--r-- | roundcubemail/program/include/session.inc | 10 |
2 files changed, 12 insertions, 3 deletions
diff --git a/roundcubemail/program/include/main.inc b/roundcubemail/program/include/main.inc index 9e33bae69..2d28090c7 100644 --- a/roundcubemail/program/include/main.inc +++ b/roundcubemail/program/include/main.inc @@ -57,6 +57,11 @@ function rcmail_startup($task='mail') // load configuration $CONFIG = rcmail_load_config(); + // set session domain + if (isset($CONFIG['session_domain']) && !empty($CONFIG['session_domain'])) { + ini_set('session.cookie_domain', $CONFIG['session_domain']); + } + // set session garbage collecting time according to session_lifetime if (!empty($CONFIG['session_lifetime'])) ini_set('session.gc_maxlifetime', ($CONFIG['session_lifetime']) * 120); diff --git a/roundcubemail/program/include/session.inc b/roundcubemail/program/include/session.inc index a29eabba9..9becacf00 100644 --- a/roundcubemail/program/include/session.inc +++ b/roundcubemail/program/include/session.inc @@ -172,9 +172,13 @@ function sess_regenerate_id() sess_destroy(session_id()); session_id($random); - $cookie = session_get_cookie_params(); - setcookie(session_name(), "", time() - 3600); - setcookie(session_name(), $random, $cookie['lifetime'] ? time() + $cookie['lifetime'] : 0, $cookie['path']); + + $cookie = session_get_cookie_params(); + $_lifetime = $cookie['lifetime'] ? time() + $cookie['lifetime'] : 0; + + setcookie(session_name(), '', time() - 3600); + setcookie(session_name(), $random, $_lifetime, $cookie['path'], + $cookie['domain']); return true; } |
