/* Ensure that only one username is used by one client at a time
* by Paul Taylor
*/
function kick_concurrent_logins($user) {
captiveportal_lock();
/* read database */
$cpdb = captiveportal_read_db();
captiveportal_unlock();
if (isset($cpdb)) {
/* find duplicate entry */
for ($i = 0; $i < count($cpdb); $i++) {
if ($cpdb[$i][4] == $user) {
/* This user was already logged in */
disconnect_client($cpdb[$i][5],"CONCURRENT LOGIN - TERMINATING OLD SESSION",13);
/* find and expier the user from the user database
by Dabba */
$userdb = &$config['captiveportal']['user'];
if (is_array($userdb)) {
$moddb = false;
for ($i = 0; $i < count($userdb); $i++) {
if ($userdb[$i]['name'] == $user) {
$userdb[$i]['expirationdate'] = "-2 day";
$moddb = true;
}
}
if ($moddb)
write_config()