2005-03-07 Adam Sampson * COPYING, onenetd.c: Change the license from the GPL to the MIT license. * onenetd.c: Use getsockname() to get the local address to put in TCPLOCALIP, rather than just using the listen address; this means that TCPLOCALIP will be set to the address of the interface the client connected to. * onenetd.c: Check that accept() returned a valid address. * onenetd.c: Catch a (harmless) out-of-memory crash while parsing options (reported by Ulf Härnhammar, who also did a security review of the code -- thanks!). * onenetd.1: Document the environment variables (reported by Tim Bishop). 2005-01-27 Adam Sampson * onenetd.c: Update the list of connected clients correctly; previously clients weren't being added to the list at all, so memory would be leaked if the refusal message wasn't accepted immediately, and the child FD would be closed immediately anyway. Avoid overfilling fd_sets by dropping client connections if they wouldn't fit. 2003-06-17 Adam Sampson * onenetd.c: Set fd options correctly (required for Solaris). Fix copyright notices. Block SIGCHLD except while select() is running. Use a self-pipe again, since the other way is not correct (it leaves zombies if the handler gets called early enough). Use FD_CLOEXEC to avoid leaking fds. Various cleanups. * configure.ac: Checked into CVS, and renamed this file for the new standards. 2002-12-29 Adam Sampson * onenetd.c: Made all the errors that can occur in the main loop non-fatal. 2002-08-06 Adam Sampson * onenetd.c: Removed obsolete -o and -d from getopt args. Added -e to redirect stderr of child to socket. * onenetd.1: Wrote manual page. 2002-08-05 Adam Sampson * onenetd.c: Fixed bug where onenetd wouldn't accept any connections after it had ever been full (calculating "full" in the wrong place). Made the disconnect message show the connection count after disconnection (since it's a bit more obvious then how much clients are actually connected from the log). 2002-06-03 Adam Sampson * onenetd.c: Avoid selecting on the listening socket when full. Split out the "send response" code, so that we can call it when we first notice a socket needs a response (which saves on the calls to select()). Made the status messages include the number of children running. 2002-05-31 Adam Sampson * onenetd.c: Removed redundant test for host being "0" (since inet_addr handles this case already). Changed uid and gid to longs, since uid_t and gid_t aren't signed under dietlibc. Made help a bit more helpful. Removed malloc debugging code. 2002-05-29 Adam Sampson * onenetd.c: Due to missing features on Solaris: removed "kill IP options", replaced setenv with putenv, replaced inet_ntoa with inet_addr. * onenetd.c: Added escape characters in response string. 2002-05-29 Adam Sampson * onenetd.c: Initial release.