From c485725c5a284b9d08eba3eeab71a97c704351eb Mon Sep 17 00:00:00 2001 From: Roger Dingledine Date: Tue, 6 Jan 2004 07:53:40 +0000 Subject: Fix the dns bug: children weren't dying We were telling a child to die by closing the parent's file descriptor to him. But newer children were inheriting the open file descriptor from the parent, and since they weren't closing them, the socket never closed, so the child never read eof, so he never knew to exit. As a side effect to this bug, we were probably failing to properly close connections to remote hosts, ORs, and OPs, after a dns child was born. I'm surprised Tor worked at all. svn:r974 --- src/or/or.h | 1 + 1 file changed, 1 insertion(+) (limited to 'src/or/or.h') diff --git a/src/or/or.h b/src/or/or.h index 76d2afeb5..b7e323b3d 100644 --- a/src/or/or.h +++ b/src/or/or.h @@ -615,6 +615,7 @@ int getconfig(int argc, char **argv, or_options_t *options); connection_t *connection_new(int type); void connection_free(connection_t *conn); +void connection_free_all(void); int connection_create_listener(char *bindaddress, uint16_t bindport, int type); -- cgit v1.2.3