svn commit: samba r20330 - in branches: SAMBA_3_0/source/nsswitch
SAMBA_3_0_24/source/nsswitch
jra at samba.org
jra at samba.org
Sat Dec 23 02:26:19 GMT 2006
Author: jra
Date: 2006-12-23 02:26:18 +0000 (Sat, 23 Dec 2006)
New Revision: 20330
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20330
Log:
And here's the fix for the parent winbindd crashing
after it's child died unexpectedly whilst the parent
was waiting for a reply. We need to clean up the request
we're not going to service, plus we still need to call
the continuation function with a "False" flag so it
can clean things up. Still testing this, but I think
I'm right.
Jeremy
Modified:
branches/SAMBA_3_0/source/nsswitch/winbindd_dual.c
branches/SAMBA_3_0_24/source/nsswitch/winbindd_dual.c
Changeset:
Modified: branches/SAMBA_3_0/source/nsswitch/winbindd_dual.c
===================================================================
--- branches/SAMBA_3_0/source/nsswitch/winbindd_dual.c 2006-12-23 00:17:15 UTC (rev 20329)
+++ branches/SAMBA_3_0/source/nsswitch/winbindd_dual.c 2006-12-23 02:26:18 UTC (rev 20330)
@@ -192,7 +192,12 @@
if (!success) {
DEBUG(5, ("Could not receive async reply\n"));
+
+ cache_cleanup_response(child->pid);
+ DLIST_REMOVE(child->requests, state);
+
state->response->result = WINBINDD_ERROR;
+ state->continuation(state->private_data, False);
return;
}
Modified: branches/SAMBA_3_0_24/source/nsswitch/winbindd_dual.c
===================================================================
--- branches/SAMBA_3_0_24/source/nsswitch/winbindd_dual.c 2006-12-23 00:17:15 UTC (rev 20329)
+++ branches/SAMBA_3_0_24/source/nsswitch/winbindd_dual.c 2006-12-23 02:26:18 UTC (rev 20330)
@@ -192,7 +192,12 @@
if (!success) {
DEBUG(5, ("Could not receive async reply\n"));
+
+ cache_cleanup_response(child->pid);
+ DLIST_REMOVE(child->requests, state);
+
state->response->result = WINBINDD_ERROR;
+ state->continuation(state->private_data, False);
return;
}
More information about the samba-cvs
mailing list