summaryrefslogtreecommitdiffstats
path: root/source/rpc_server
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2004-06-16 18:05:47 +0000
committerJeremy Allison <jra@samba.org>2004-06-16 18:05:47 +0000
commitb9dc2a4adb83e255282072c37a24acb1246d37e8 (patch)
tree8411d9f4ad17ec1fe7093cb983cea0b30a9421f8 /source/rpc_server
parente6432d445a9ff4f95291f2f774620cabdce70c90 (diff)
downloadsamba-b9dc2a4adb83e255282072c37a24acb1246d37e8.tar.gz
samba-b9dc2a4adb83e255282072c37a24acb1246d37e8.tar.xz
samba-b9dc2a4adb83e255282072c37a24acb1246d37e8.zip
r1171: Patch from "Lu, Jianliang" <Jianliang.Lu@getronics.com> to
reset password counts when account is reset. Jeremy.
Diffstat (limited to 'source/rpc_server')
-rw-r--r--source/rpc_server/srv_samr_util.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/source/rpc_server/srv_samr_util.c b/source/rpc_server/srv_samr_util.c
index 417a712036a..8cc44074abe 100644
--- a/source/rpc_server/srv_samr_util.c
+++ b/source/rpc_server/srv_samr_util.c
@@ -240,6 +240,12 @@ void copy_id21_to_sam_passwd(SAM_ACCOUNT *to, SAM_USER_INFO_21 *from)
if (from->fields_present & ACCT_FLAGS) {
DEBUG(10,("INFO_21 ACCT_CTRL: %08X -> %08X\n",pdb_get_acct_ctrl(to),from->acb_info));
if (from->acb_info != pdb_get_acct_ctrl(to)) {
+ if (!(from->acb_info & ACB_AUTOLOCK) && (pdb_get_acct_ctrl(to) & ACB_AUTOLOCK)) {
+ /* We're unlocking a previously locked user. Reset bad password counts.
+ Patch from Jianliang Lu. <Jianliang.Lu@getronics.com> */
+ pdb_set_bad_password_count(to, 0, PDB_CHANGED);
+ pdb_set_bad_password_time(to, 0, PDB_CHANGED);
+ }
pdb_set_acct_ctrl(to, from->acb_info, PDB_CHANGED);
}
}