diff options
author | Aleksander Machniak <alec@alec.pl> | 2013-09-23 12:40:25 +0200 |
---|---|---|
committer | Aleksander Machniak <alec@alec.pl> | 2013-09-23 12:40:25 +0200 |
commit | 6776d31ceed36b2078a30c18f0b7d1156eca36ef (patch) | |
tree | 6a1ab41115ef8e7ae20ae29bf6982bff459c3fba | |
parent | 0b17aae0cd86e0d253f804045cfe131bff50be1d (diff) |
Add new password encodage ('ad') in ldap password drivers (#1489349)
-rw-r--r-- | plugins/password/config.inc.php.dist | 2 | ||||
-rw-r--r-- | plugins/password/drivers/ldap.php | 4 | ||||
-rw-r--r-- | plugins/password/drivers/ldap_simple.php | 3 |
3 files changed, 8 insertions, 1 deletions
diff --git a/plugins/password/config.inc.php.dist b/plugins/password/config.inc.php.dist index bfea52918..8c83dd703 100644 --- a/plugins/password/config.inc.php.dist +++ b/plugins/password/config.inc.php.dist @@ -201,7 +201,7 @@ $config['password_ldap_search_filter'] = '(uid=%login)'; // LDAP password hash type // Standard LDAP encryption type which must be one of: crypt, -// ext_des, md5crypt, blowfish, md5, sha, smd5, ssha, or clear. +// ext_des, md5crypt, blowfish, md5, sha, smd5, ssha, ad or clear. // Please note that most encodage types require external libraries // to be included in your PHP installation, see function hashPassword in drivers/ldap.php for more info. // Default: 'crypt' diff --git a/plugins/password/drivers/ldap.php b/plugins/password/drivers/ldap.php index 548d327e1..29c43fbf4 100644 --- a/plugins/password/drivers/ldap.php +++ b/plugins/password/drivers/ldap.php @@ -279,6 +279,10 @@ class rcube_ldap_password } break; + case 'ad': + $cryptedPassword = rcube_charset::convert('"' . $passwordClear . '"', RCUBE_CHARSET, 'UTF-16LE'); + break; + case 'clear': default: $cryptedPassword = $passwordClear; diff --git a/plugins/password/drivers/ldap_simple.php b/plugins/password/drivers/ldap_simple.php index d47e14492..f442d2422 100644 --- a/plugins/password/drivers/ldap_simple.php +++ b/plugins/password/drivers/ldap_simple.php @@ -247,6 +247,9 @@ class rcube_ldap_simple_password return false; } break; + case 'ad': + $crypted_password = rcube_charset::convert('"' . $password_clear . '"', RCUBE_CHARSET, 'UTF-16LE'); + break; case 'clear': default: $crypted_password = $password_clear; |