forked from extern/egroupware
fixed php4-sessions to work with xmlrpc, our sessionid is now identical to the php4 sessionid
This commit is contained in:
parent
b26fa6246a
commit
9384c24217
@ -260,9 +260,13 @@
|
|||||||
$this->sessionid = $sessionid;
|
$this->sessionid = $sessionid;
|
||||||
$this->kp3 = $kp3;
|
$this->kp3 = $kp3;
|
||||||
|
|
||||||
$session = $this->read_session($sessionid);
|
$session = $this->read_session();
|
||||||
//echo "<p>session::verify(id='$sessionid'): \n"; print_r($session); echo "</p>\n";
|
//echo "<pre>session::verify(id='$sessionid'): \n".print_r($session,True)."</pre>\n";
|
||||||
|
/*
|
||||||
|
$fp = fopen('/tmp/session_verify','a+');
|
||||||
|
fwrite($fp,"session::verify(id='$sessionid'): \n".print_r($session,True)."\n\n");
|
||||||
|
fclose($fp);
|
||||||
|
*/
|
||||||
if ($session['session_dla'] <= (time() - $GLOBALS['phpgw_info']['server']['sessions_timeout']))
|
if ($session['session_dla'] <= (time() - $GLOBALS['phpgw_info']['server']['sessions_timeout']))
|
||||||
{
|
{
|
||||||
$this->clean_sessions();
|
$this->clean_sessions();
|
||||||
@ -523,7 +527,7 @@
|
|||||||
}
|
}
|
||||||
$GLOBALS['phpgw_info']['user']['account_id'] = $this->account_id;
|
$GLOBALS['phpgw_info']['user']['account_id'] = $this->account_id;
|
||||||
$GLOBALS['phpgw']->accounts->accounts($this->account_id);
|
$GLOBALS['phpgw']->accounts->accounts($this->account_id);
|
||||||
$this->sessionid = md5($GLOBALS['phpgw']->common->randomstring(15));
|
$this->sessionid = $this->new_session_id();
|
||||||
$this->kp3 = md5($GLOBALS['phpgw']->common->randomstring(15));
|
$this->kp3 = md5($GLOBALS['phpgw']->common->randomstring(15));
|
||||||
|
|
||||||
if ($GLOBALS['phpgw_info']['server']['usecookies'])
|
if ($GLOBALS['phpgw_info']['server']['usecookies'])
|
||||||
@ -688,7 +692,7 @@
|
|||||||
$this->sessionid = $sessionid;
|
$this->sessionid = $sessionid;
|
||||||
$this->kp3 = $kp3;
|
$this->kp3 = $kp3;
|
||||||
|
|
||||||
$session = $this->read_session($this->sessionid);
|
$session = $this->read_session();
|
||||||
$this->session_flags = $session['session_flags'];
|
$this->session_flags = $session['session_flags'];
|
||||||
|
|
||||||
list($this->account_lid,$this->account_domain) = explode('@', $session['session_lid']);
|
list($this->account_lid,$this->account_domain) = explode('@', $session['session_lid']);
|
||||||
@ -1203,10 +1207,11 @@
|
|||||||
/**
|
/**
|
||||||
* Load user's session information
|
* Load user's session information
|
||||||
*
|
*
|
||||||
* @param string $sessionid user's session id string
|
* The sessionid of the session to read is passed in the class-var $this->sessionid
|
||||||
|
*
|
||||||
* @return mixed the session data
|
* @return mixed the session data
|
||||||
*/
|
*/
|
||||||
function read_session($sessionid)
|
function read_session()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1224,6 +1229,14 @@
|
|||||||
function set_cookie_params($domain)
|
function set_cookie_params($domain)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a new session id
|
||||||
|
*
|
||||||
|
* @return string a new session id
|
||||||
|
*/
|
||||||
|
function new_session_id()
|
||||||
|
{}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a new session
|
* Create a new session
|
||||||
*
|
*
|
||||||
|
@ -30,7 +30,7 @@
|
|||||||
$this->sessions_();
|
$this->sessions_();
|
||||||
}
|
}
|
||||||
|
|
||||||
function read_session($sessionid)
|
function read_session()
|
||||||
{
|
{
|
||||||
$this->db->query("SELECT * FROM phpgw_sessions WHERE session_id='" . $this->sessionid . "'",__LINE__,__FILE__);
|
$this->db->query("SELECT * FROM phpgw_sessions WHERE session_id='" . $this->sessionid . "'",__LINE__,__FILE__);
|
||||||
$this->db->next_record();
|
$this->db->next_record();
|
||||||
@ -52,6 +52,11 @@
|
|||||||
. "'",__LINE__,__FILE__);
|
. "'",__LINE__,__FILE__);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function new_session_id()
|
||||||
|
{
|
||||||
|
return md5($GLOBALS['phpgw']->common->randomstring(15));
|
||||||
|
}
|
||||||
|
|
||||||
function register_session($login,$user_ip,$now,$session_flags)
|
function register_session($login,$user_ip,$now,$session_flags)
|
||||||
{
|
{
|
||||||
$GLOBALS['phpgw']->db->query("INSERT INTO phpgw_sessions VALUES ('" . $this->sessionid
|
$GLOBALS['phpgw']->db->query("INSERT INTO phpgw_sessions VALUES ('" . $this->sessionid
|
||||||
|
@ -34,8 +34,9 @@
|
|||||||
define('PHPGW_PHPSESSID', ini_get('session.name'));
|
define('PHPGW_PHPSESSID', ini_get('session.name'));
|
||||||
}
|
}
|
||||||
|
|
||||||
function read_session($sessionid)
|
function read_session()
|
||||||
{
|
{
|
||||||
|
session_id($this->sessionid);
|
||||||
session_start();
|
session_start();
|
||||||
return $GLOBALS['phpgw_session'] = $_SESSION['phpgw_session'];
|
return $GLOBALS['phpgw_session'] = $_SESSION['phpgw_session'];
|
||||||
}
|
}
|
||||||
@ -45,10 +46,17 @@
|
|||||||
session_set_cookie_params(0,'/',$domain);
|
session_set_cookie_params(0,'/',$domain);
|
||||||
}
|
}
|
||||||
|
|
||||||
function register_session($login,$user_ip,$now,$session_flags)
|
function new_session_id()
|
||||||
{
|
{
|
||||||
session_start();
|
session_start();
|
||||||
|
|
||||||
|
return session_id();
|
||||||
|
}
|
||||||
|
|
||||||
|
function register_session($login,$user_ip,$now,$session_flags)
|
||||||
|
{
|
||||||
|
// session_start() is now called in new_session_id() !!!
|
||||||
|
|
||||||
$GLOBALS['phpgw_session']['session_id'] = $this->sessionid;
|
$GLOBALS['phpgw_session']['session_id'] = $this->sessionid;
|
||||||
$GLOBALS['phpgw_session']['session_lid'] = $login;
|
$GLOBALS['phpgw_session']['session_lid'] = $login;
|
||||||
$GLOBALS['phpgw_session']['session_ip'] = $user_ip;
|
$GLOBALS['phpgw_session']['session_ip'] = $user_ip;
|
||||||
|
Loading…
Reference in New Issue
Block a user