summaryrefslogtreecommitdiff
path: root/source3/winbindd
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2009-10-05 17:05:38 +0200
committerGünther Deschner <gd@samba.org>2009-10-06 16:50:23 +0200
commitc344bf0184be484fff8bb5ed93b5c2ca6de58611 (patch)
tree21c2041a31aaf20ed901060eb1f1b8a72f020cfc /source3/winbindd
parent0c2fc9eedf241746067d1625f643c894bfa11394 (diff)
downloadsamba-c344bf0184be484fff8bb5ed93b5c2ca6de58611.tar.gz
samba-c344bf0184be484fff8bb5ed93b5c2ca6de58611.tar.bz2
samba-c344bf0184be484fff8bb5ed93b5c2ca6de58611.zip
s3-winbindd: make sure to reset connections when machine account password change chain was broken.
Guenther
Diffstat (limited to 'source3/winbindd')
-rw-r--r--source3/winbindd/winbindd_dual.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/source3/winbindd/winbindd_dual.c b/source3/winbindd/winbindd_dual.c
index edf784cc21..a832451e08 100644
--- a/source3/winbindd/winbindd_dual.c
+++ b/source3/winbindd/winbindd_dual.c
@@ -1100,6 +1100,14 @@ static void machine_password_change_handler(struct event_context *ctx,
DEBUG(10,("machine_password_change_handler: "
"failed to change machine password: %s\n",
nt_errstr(result)));
+ if (NT_STATUS_EQUAL(result, NT_STATUS_ACCESS_DENIED) ) {
+ DEBUG(3,("machine_password_change_handler: password set returned "
+ "ACCESS_DENIED. Maybe the trust account "
+ "password was changed and we didn't know it. "
+ "Killing connections to domain %s\n",
+ child->domain->name));
+ invalidate_cm_connection(&child->domain->conn);
+ }
} else {
DEBUG(10,("machine_password_change_handler: "
"successfully changed machine password\n"));