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; }
