mirror of
https://github.com/EGroupware/egroupware.git
synced 2024-12-29 10:09:10 +01:00
fix PHP 8.1 Error: Serialization of 'LDAP\Connection' is not allowed
This commit is contained in:
parent
12863efb78
commit
03099756d7
@ -1445,6 +1445,22 @@ class adLDAP extends \adLDAP
|
|||||||
parent::__construct($options);
|
parent::__construct($options);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Magic method called when object gets serialized
|
||||||
|
*
|
||||||
|
* We do NOT store ldapConnection, as we need to reconnect anyway.
|
||||||
|
* PHP 8.1 gives an error when trying to serialize LDAP\Connection object!
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
function __sleep()
|
||||||
|
{
|
||||||
|
$vars = get_object_vars($this);
|
||||||
|
unset($vars['ldapConnection']);
|
||||||
|
unset($this->ldapConnection);
|
||||||
|
return array_keys($vars);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Convert 8bit characters e.g. accented characters to UTF8 encoded characters
|
* Convert 8bit characters e.g. accented characters to UTF8 encoded characters
|
||||||
*
|
*
|
||||||
@ -1851,4 +1867,4 @@ class adLDAPUtils extends \adLDAPUtils
|
|||||||
$str
|
$str
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1294,6 +1294,22 @@ class Ldap
|
|||||||
return $id;
|
return $id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Magic method called when object gets serialized
|
||||||
|
*
|
||||||
|
* We do NOT store ldapConnection, as we need to reconnect anyway.
|
||||||
|
* PHP 8.1 gives an error when trying to serialize LDAP\Connection object!
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
function __sleep()
|
||||||
|
{
|
||||||
|
$vars = get_object_vars($this);
|
||||||
|
unset($vars['ds']);
|
||||||
|
unset($this->ds);
|
||||||
|
return array_keys($vars);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* __wakeup function gets called by php while unserializing the object to reconnect with the ldap server
|
* __wakeup function gets called by php while unserializing the object to reconnect with the ldap server
|
||||||
*/
|
*/
|
||||||
@ -1302,4 +1318,4 @@ class Ldap
|
|||||||
$this->ds = Api\Ldap::factory(true, $this->frontend->config['ldap_host'],
|
$this->ds = Api\Ldap::factory(true, $this->frontend->config['ldap_host'],
|
||||||
$this->frontend->config['ldap_root_dn'],$this->frontend->config['ldap_root_pw']);
|
$this->frontend->config['ldap_root_dn'],$this->frontend->config['ldap_root_pw']);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -360,6 +360,22 @@ class Ldap
|
|||||||
$this->accountsFilter = "(&$this->accountsFilter$accounts_filter)";
|
$this->accountsFilter = "(&$this->accountsFilter$accounts_filter)";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Magic method called when object gets serialized
|
||||||
|
*
|
||||||
|
* We do NOT store ldapConnection, as we need to reconnect anyway.
|
||||||
|
* PHP 8.1 gives an error when trying to serialize LDAP\Connection object!
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
function __sleep()
|
||||||
|
{
|
||||||
|
$vars = get_object_vars($this);
|
||||||
|
unset($vars['ds']);
|
||||||
|
unset($this->ds);
|
||||||
|
return array_keys($vars);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* __wakeup function gets called by php while unserializing the object to reconnect with the ldap server
|
* __wakeup function gets called by php while unserializing the object to reconnect with the ldap server
|
||||||
*/
|
*/
|
||||||
@ -1623,4 +1639,4 @@ class Ldap
|
|||||||
{
|
{
|
||||||
error_log(__METHOD__."($account_id,$new_owner) not yet implemented");
|
error_log(__METHOD__."($account_id,$new_owner) not yet implemented");
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user