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