svn commit: samba r4811 - in branches/SAMBA_4_0/source/libcli/raw: .

tridge at samba.org tridge at samba.org
Mon Jan 17 22:53:38 GMT 2005


Author: tridge
Date: 2005-01-17 22:53:37 +0000 (Mon, 17 Jan 2005)
New Revision: 4811

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=4811

Log:
now that the event context is at the socket level, the event cleanup
should be there too


Modified:
   branches/SAMBA_4_0/source/libcli/raw/clisocket.c
   branches/SAMBA_4_0/source/libcli/raw/clitransport.c


Changeset:
Modified: branches/SAMBA_4_0/source/libcli/raw/clisocket.c
===================================================================
--- branches/SAMBA_4_0/source/libcli/raw/clisocket.c	2005-01-17 22:53:00 UTC (rev 4810)
+++ branches/SAMBA_4_0/source/libcli/raw/clisocket.c	2005-01-17 22:53:37 UTC (rev 4811)
@@ -35,6 +35,17 @@
 	const char *dest_host;
 };
 
+
+static int smbcli_sock_destructor(void *ptr)
+{
+	struct smbcli_socket *sock = talloc_get_type(ptr, struct smbcli_socket);
+
+	if (sock->event.fde && sock->event.ctx) {
+		event_remove_fd(sock->event.ctx, sock->event.fde);
+	}
+	return 0;
+}
+
 /*
   create a smbcli_socket context
 */
@@ -53,6 +64,8 @@
 		return NULL;
 	}
 
+	talloc_set_destructor(sock, smbcli_sock_destructor);
+
 	return sock;
 }
 

Modified: branches/SAMBA_4_0/source/libcli/raw/clitransport.c
===================================================================
--- branches/SAMBA_4_0/source/libcli/raw/clitransport.c	2005-01-17 22:53:00 UTC (rev 4810)
+++ branches/SAMBA_4_0/source/libcli/raw/clitransport.c	2005-01-17 22:53:37 UTC (rev 4811)
@@ -54,7 +54,6 @@
 	struct smbcli_transport *transport = ptr;
 
 	smbcli_transport_dead(transport);
-	event_remove_fd(transport->socket->event.ctx, transport->socket->event.fde);
 	event_remove_timed(transport->socket->event.ctx, transport->socket->event.te);
 	return 0;
 }



More information about the samba-cvs mailing list