On Mon, Dec 28, 2009 at 09:31:34PM +0100, Florian Lohoff wrote:
evbuffer_free(hc->evb);
Getstream does not have a function called shutdown.
Aeh - sorry - just found the libc shutdown - but what on earth does shutdown do more than closing the socket - The bug was that the filedescriptor still stays around and getstream eats up all filedescriptors which means they are not closed.
durex001:/iptv/proxy# diff -u m/mcgw/socket.c mcgw/socket.c --- m/mcgw/socket.c 2009-03-01 19:39:42.000000000 +0100 +++ mcgw/socket.c 2009-10-05 16:39:10.000000000 +0200 @@ -15,6 +15,7 @@ #include "simplebuffer.h"
void socket_close(int sock) { + shutdown(sock, 2); close(sock); }
And this looks like a layering violation.
I take this back - its an additional signal - but what for? A closed socket is closed, closed, closed - nothing could happen on it. Flo -- Florian Lohoff flo@rfc822.org "Es ist ein grobes Missverständnis und eine Fehlwahrnehmung, dem Staat im Internet Zensur- und Überwachungsabsichten zu unterstellen." - - Bundesminister Dr. Wolfgang Schäuble -- 10. Juli in Berlin