summaryrefslogtreecommitdiff
path: root/plugins/password/drivers/ldap_simple.php
diff options
context:
space:
mode:
authoralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2010-09-30 07:02:52 +0000
committeralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2010-09-30 07:02:52 +0000
commitaf9701630d5a04924e5f28d34f5346f20e7875e2 (patch)
tree65cd9adf5119af7ccf4d1bd5086009e322c4eeae /plugins/password/drivers/ldap_simple.php
parent03e6e60988ea2b51aaa972e39d143ab705fa5386 (diff)
- Added password_ldap_lchattr option (#1486927)
git-svn-id: https://svn.roundcube.net/trunk@4019 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'plugins/password/drivers/ldap_simple.php')
-rw-r--r--plugins/password/drivers/ldap_simple.php11
1 files changed, 9 insertions, 2 deletions
diff --git a/plugins/password/drivers/ldap_simple.php b/plugins/password/drivers/ldap_simple.php
index fbe2edd97..541afa96b 100644
--- a/plugins/password/drivers/ldap_simple.php
+++ b/plugins/password/drivers/ldap_simple.php
@@ -1,4 +1,5 @@
<?php
+
/**
* Simple LDAP Password Driver
*
@@ -12,7 +13,7 @@
function password_save($curpass, $passwd)
{
$rcmail = rcmail::get_instance();
-
+
/* Connect */
if (!$ds = ldap_connect($rcmail->config->get('password_ldap_host'), $rcmail->config->get('password_ldap_port'))) {
ldap_unbind($ds);
@@ -24,7 +25,7 @@ function password_save($curpass, $passwd)
ldap_unbind($ds);
return PASSWORD_CONNECT_ERROR;
}
-
+
/* Start TLS */
if ($rcmail->config->get('password_ldap_starttls')) {
if (!ldap_start_tls($ds)) {
@@ -72,6 +73,12 @@ function password_save($curpass, $passwd)
}
$entree[$rcmail->config->get('password_ldap_pwattr')] = $passwd;
+
+ /* Updating PasswordLastChange Attribute if desired */
+ if ($lchattr = $rcmail->config->get('password_ldap_lchattr')) {
+ $entree[$lchattr] = (int)(time() / 86400)
+ }
+
if (!ldap_modify($ds, $user_dn, $entree)) {
ldap_unbind($ds);