/** * Delete a session by IP/session_id/user * NOTE: Session on sessions_store table it's not deleted if a user * was specified, sumo_delete_old_sessions() it's called to minimize * life of expired sessions. * * @global resource $SUMO * @author Alberto Basso <*****@*****.**> */ function sumo_delete_session($ip = NULL, $session_id = NULL, $username = NULL) { global $SUMO; if ($username) { $query = "DELETE FROM " . SUMO_TABLE_SESSIONS . "\n \t\t WHERE username='******'"; $SUMO['DB']->Execute($query); sumo_delete_old_sessions(); } else { $user_ip = empty($ip) ? $SUMO['client']['ip'] : $ip; $session_id = empty($session_id) ? $SUMO['client']['session_id'] : $session_id; $query1 = "DELETE FROM " . SUMO_TABLE_SESSIONS . "\n\t\t WHERE node='" . $SUMO['server']['name'] . "'\n\t\t AND ip='" . $user_ip . "'\n\t\t AND session_id='" . $session_id . "'"; $query2 = "DELETE FROM " . SUMO_TABLE_SESSIONS_STORE . "\n\t\t WHERE sesskey='" . $session_id . "'"; $SUMO['DB']->Execute($query1); $SUMO['DB']->Execute($query2); } }
$_OLD_COOKIE = $_COOKIE; } if (!sumo_verify_is_today()) { sumo_update_day_limit(); sumo_write_today(); sumo_delete_old_users_temp(); sumo_delete_old_sessions(); sumo_delete_old_connections(); sumo_delete_old_log(); sumo_optimize_db(); sumo_optimize_hits_counter(); } // Auto optimize Sumo database if (sumo_hits_count($SUMO['config']['database']['optimize_hits'], TRUE)) { sumo_delete_old_users_temp(); sumo_delete_old_sessions(); sumo_delete_old_connections(); sumo_delete_old_log(); sumo_optimize_db(); } // Filter all input data $_GET = sumo_array_combine(array_keys($_GET), sumo_array_filter(array_values($_GET))); $_POST = sumo_array_combine(array_keys($_POST), sumo_array_filter(array_values($_POST), 'POST')); $_COOKIE = sumo_array_combine(array_keys($_COOKIE), sumo_array_filter(array_values($_COOKIE), 'COOKIE')); // Get variables require SUMO_PATH . '/inc/inc.get_variables.php'; $SUMO['user'] = sumo_get_user_info(); $SUMO['connection'] = sumo_get_connection_info(); // ...to remember 'security string' after login if (empty($SUMO['connection']['security_string'])) { $SUMO['connection']['security_string'] = $_SESSION['security_string'];