diff --git a/webui/controller/login/sso.php b/webui/controller/login/sso.php index 177322a..f612750 100644 --- a/webui/controller/login/sso.php +++ b/webui/controller/login/sso.php @@ -12,6 +12,7 @@ $request = Registry::get('request'); + $session = Registry::get('session'); $db = Registry::get('db'); diff --git a/webui/model/user/auth.php b/webui/model/user/auth.php index 2b1422a..2dff734 100644 --- a/webui/model/user/auth.php +++ b/webui/model/user/auth.php @@ -329,6 +329,11 @@ if(isset($a['mail']['count'])) { $username = $a['mail'][0]; } else { $username = $a['mail']; } $username = strtolower(preg_replace("/^smtp\:/i", "", $username)); + if($username == '') { + syslog(LOG_INFO, "no email address found for " . $a['dn']); + return 0; + } + $query = $ldap->query(LDAP_BASE_DN, "(|(&(objectClass=$ldap_account_objectclass)($ldap_mail_attr=$username))(&(objectClass=$ldap_distributionlist_objectclass)($ldap_distributionlist_attr=$username)" . ")(&(objectClass=$ldap_distributionlist_objectclass)($ldap_distributionlist_attr=" . $a['dn'] . ")))", array()); $emails = $this->get_email_array_from_ldap_attr($query->rows); diff --git a/webui/sso.php b/webui/sso.php index 71e16f8..406dbc3 100644 --- a/webui/sso.php +++ b/webui/sso.php @@ -1,25 +1,19 @@