diff options
Diffstat (limited to 'www/index.php')
-rw-r--r-- | www/index.php | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/www/index.php b/www/index.php index ddfa610..109689a 100644 --- a/www/index.php +++ b/www/index.php @@ -149,17 +149,15 @@ if($id == 4 && $_SERVER['HTTP_HOST'] == $_SESSION['_config']['securehostname']) { include_once("../includes/lib/general.php"); - /* identify unique certs serial number related to root or subroot */ - $query = "select * from `emailcerts` where - `serial`='".$_SERVER['SSL_CLIENT_M_SERIAL']."' and - `rootcert`='".rootcertid($_SERVER['SSL_CLIENT_I_DN_CN'])."' and - `revoked`=0 and disablelogin=0 and - UNIX_TIMESTAMP(`expire`) - UNIX_TIMESTAMP() > 0"; - $res = mysql_query($query); - if(mysql_num_rows($res) > 0) + $user_id = get_user_id_from_cert($_SERVER['SSL_CLIENT_M_SERIAL'], + $_SERVER['SSL_CLIENT_I_DN_CN']); + + if($user_id >= 0) { - $row = mysql_fetch_assoc($res); - $_SESSION['profile'] = mysql_fetch_assoc(mysql_query("select * from `users` where `id`='$row[memid]' and `deleted`=0 and `locked`=0")); + $_SESSION['profile'] = mysql_fetch_assoc(mysql_query( + "select * from `users` where + `id`='$user_id' and `deleted`=0 and `locked`=0")); + if($_SESSION['profile']['id'] != 0) { $_SESSION['profile']['loggedin'] = 1; |