diff --git a/phpgwapi/inc/class.sessions_db.inc.php b/phpgwapi/inc/class.sessions_db.inc.php index 169520ebad..0b42699e31 100644 --- a/phpgwapi/inc/class.sessions_db.inc.php +++ b/phpgwapi/inc/class.sessions_db.inc.php @@ -311,12 +311,23 @@ $parts = explode('.',$dom); if (count($parts) > 2) { - $this->cookie_domain = '.'.$parts[count($parts)-2].'.'.$parts[count($parts)-1]; + if (!ereg('[0-9]+',$parts[1])) + { + for($i=1;$icookie_domain .= '.'.$parts[$i]; + } + } + else + { + $this->cookie_domain = ''; + } } else { $this->cookie_domain = ''; } + print_debug('COOKIE_DOMAIN',$this->cookie_domain,'api'); } function phpgw_setcookie($cookiename,$cookievalue='',$cookietime=0) diff --git a/phpgwapi/inc/class.sessions_php4.inc.php b/phpgwapi/inc/class.sessions_php4.inc.php index aa6993e092..0d2b30e5c5 100644 --- a/phpgwapi/inc/class.sessions_php4.inc.php +++ b/phpgwapi/inc/class.sessions_php4.inc.php @@ -291,12 +291,24 @@ $parts = explode('.',$dom); if (count($parts) > 2) { - $this->cookie_domain = '.'.$parts[count($parts)-2].'.'.$parts[count($parts)-1]; + if (!ereg('[0-9]+',$parts[1])) + { + for($i=1;$icookie_domain .= '.'.$parts[$i]; + } + } + else + { + $this->cookie_domain = ''; + } } else { $this->cookie_domain = ''; } + print_debug('COOKIE_DOMAIN',$this->cookie_domain,'api'); + session_set_cookie_params(0,'/',$this->cookie_domain); } function phpgw_setcookie($cookiename,$cookievalue='',$cookietime=0)