diff options
author | Matthias Dieter Wallnöfer <mwallnoefer@yahoo.de> | 2009-12-03 10:48:44 +0100 |
---|---|---|
committer | Matthias Dieter Wallnöfer <mdw@samba.org> | 2010-05-10 19:12:26 +0200 |
commit | 029351571a5bd65a467ff9e7844a7a1ef3d688a0 (patch) | |
tree | efef7243faf6fafa5ed07ae6fbc6e6e51cfadd59 /source4/dsdb/common | |
parent | 6e8098b261b9357204c8fa5534871a4c137ca1c5 (diff) | |
download | samba-029351571a5bd65a467ff9e7844a7a1ef3d688a0.tar.gz samba-029351571a5bd65a467ff9e7844a7a1ef3d688a0.tar.bz2 samba-029351571a5bd65a467ff9e7844a7a1ef3d688a0.zip |
s4:samdb_set_password - adapt it for the user password change handling
Make use of the new "change old password checked" control.
Diffstat (limited to 'source4/dsdb/common')
-rw-r--r-- | source4/dsdb/common/util.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/source4/dsdb/common/util.c b/source4/dsdb/common/util.c index a63c4204cc..5deb1d08b1 100644 --- a/source4/dsdb/common/util.c +++ b/source4/dsdb/common/util.c @@ -1994,6 +1994,18 @@ NTSTATUS samdb_set_password(struct ldb_context *ldb, TALLOC_CTX *mem_ctx, return NT_STATUS_NO_MEMORY; } + if (user_change) { + /* a user password change and we've checked already the old + * password somewhere else (callers responsability) */ + ret = ldb_request_add_control(req, + DSDB_CONTROL_PASSWORD_CHANGE_OLD_PW_CHECKED_OID, + true, NULL); + if (ret != LDB_SUCCESS) { + talloc_free(req); + talloc_free(msg); + return NT_STATUS_NO_MEMORY; + } + } ret = ldb_request_add_control(req, DSDB_CONTROL_PASSWORD_HASH_VALUES_OID, true, NULL); |