/** * @return string */ public static function CleanUpAgent() { $maxlifetime = intval(ini_get("session.gc_maxlifetime")); if ($maxlifetime && !CSecuritySessionMC::isStorageEnabled()) { CSecuritySessionDB::gc($maxlifetime); } return self::GC_AGENT_NAME; }
/** * @return string */ public static function CleanUpAgent() { global $DB; $maxlifetime = intval(ini_get("session.gc_maxlifetime")); if ($maxlifetime && !CSecuritySessionMC::isStorageEnabled()) { $strSql = "\n\t\t\t\tdelete from b_sec_session\n\t\t\t\twhere TIMESTAMP_X < " . CSecurityDB::SecondsAgo($maxlifetime) . "\n\t\t\t"; if (CSecurityDB::Init()) { CSecurityDB::Query($strSql, "Module: security; Class: CSecuritySession; Function: CleanUpAgent; File: " . __FILE__ . "; Line: " . __LINE__); } else { $DB->Query($strSql, false, "Module: security; Class: CSecuritySession; Function: CleanUpAgent; File: " . __FILE__ . "; Line: " . __LINE__); } } return self::GC_AGENT_NAME; }
function Init() { if (defined("BX_SECURITY_SESSION_MEMCACHE_HOST") && CSecuritySessionMC::Init()) { //may return false with session.auto_start is set to On if (session_set_save_handler(array("CSecuritySessionMC", "open"), array("CSecuritySessionMC", "close"), array("CSecuritySessionMC", "read"), array("CSecuritySessionMC", "write"), array("CSecuritySessionMC", "destroy"), array("CSecuritySessionMC", "gc"))) { register_shutdown_function("session_write_close"); } } elseif (CSecuritySessionDB::Init()) { //may return false with session.auto_start is set to On if (session_set_save_handler(array("CSecuritySessionDB", "open"), array("CSecuritySessionDB", "close"), array("CSecuritySessionDB", "read"), array("CSecuritySessionDB", "write"), array("CSecuritySessionDB", "destroy"), array("CSecuritySessionDB", "gc"))) { register_shutdown_function("session_write_close"); } } }
protected static function closeConnection() { self::$connection->close(); self::$connection = null; }
function open($save_path, $session_name) { return CSecuritySessionMC::Init(); }