ChangeLog

vanessa_socket
Library to simplify handling of TCP sockets
Copyright (C) 1999-2004  Horms
----------------------------------------------------------------------

22nd March 2004
(Horms)

  * 0.0.7
  - Don't call umask in daemon code in vanessa_socket_daemon_process()
    or vanessa_socket_daemon_inetd_process().

----------------------------------------------------------------------

15th December 2003
(Horms)

  * 0.0.6
  - Better logging of faile gethopstbyname() and gethostbyaddr() calls
  - Reset addrlen correctly in vanessa_socket_server_accept()
    Maxim Dounin
  - Set listen() to SOMAXCONN if possible. Maxim Dounin
  - Better logging of errors looking user or group in
    vanessa_socket_daemon_setid()

----------------------------------------------------------------------

6th June 2003
(Horms)

  * 0.0.5
  - No Change


----------------------------------------------------------------------

26th March 2003
(Horms)

  * 0.0.5beta7
  - Compile time check to see if stdio and stderr can be reassigned.
  - Set upper bound of ports to 65535 rather than USHRT_MAX.
    USHRT_MAX doesn't seem to be universal.


----------------------------------------------------------------------

7th February 2003
(Horms)

  * 0.0.5beta4
  - Made vanessa_socket_accept resistant to SIGPIPE. Russell Corker.


----------------------------------------------------------------------

8th January 2003
(Horms)

  * 0.0.5beta2
  - Packaging fixes


----------------------------------------------------------------------

27th December 2002
(Horms)

  * 0.0.5beta1
  - Since the introduction of non-forking code the noconnections
    variable has not been incremented. However, the reaper
    signal handler continues to decrement this value, causing
    a wraparound. This has been resolved, and maximum connection
    tracking now impliclty works with when vanessa_socket_server_accept()
    is in forking mode. Thanks to Chris Stratford for spotting this
    problem.
  - Be sure to close socket on error in vanessa_socket_server_bind_sockaddr_in
  - Use logging convenicence macros provided by libvanessa_logger
    rather than providing our own.
  - Fixed potential infinite recursion problem in
    vanessa_socket_pipe_write_func()
  - Fixed handling of invalid port lookups
  - Support lookup up UCP port names
  - If possible vanessa_socket_daemon_process() opens /dev/console as
    fd 1 and 2. Otherwise /dev/null is opened (which was the previous
    behaviour). These two file descriptors are then linked to
    the file handles stdout and stderr respectivley.
  - Cast parameters to calls to isdigit to int in 
    vanessa_socket_str_is_digit(). Should avoid compiler
    warnings.
  - Fixed bug in zering of addr data structure in
    vanessa_socket_host_port_sockaddr_in() where the size
    to be zeroed was set to the size of a pointer, rather than
    the structure it points to. This caused host lookup problems
    on (at least) FreeBSD. Dounin Maxim <mdounin@rambler-co.ru>
  - Use memset() instead of bzero().
  - Ignore ECONNABORTED for accept(). Maxim Dounin.
  - Treat getsockname() and getpeername() errors as transient.
    Maxim Dounin


----------------------------------------------------------------------

17th May 2002
(Horms)

  * 0.0.4


----------------------------------------------------------------------

11th May 2002
(Horms)

  * 0.0.4beta4
  - ignore EINTR for accept() in vanessa_socket_server_accept().
    This will occur as a child process exits.


----------------------------------------------------------------------

30th April 2002
(Horms)

  * 0.0.4beta3
  - Fix bug in reseting signal hander in vanessa_socket_handler_reaper
  - vanessa_socket_host_port_sockaddr_in provides a more infomative 
    message if conversion of an IP address to binary fails when 
    VANESSA_SOCKET_NO_LOOKUP is set.
  - include errno.h in vanessa_socket_pipe to allow it to compile
    on GNU/Hurd


----------------------------------------------------------------------

24th March 2002
(Horms)

 * 0.0.4beta2
 - Server code doesn't set SIGCHLD handler to vanessa_socket_server_reaper,
   this should be done by the aplication. If a non-forking server is being 
   used, SIGPIPE needs to be set to something, and SIGCHILD is irrelevant.
 - vanessa_socket_server_open() and freinds use 
   vanessa_socket_server_bind() amd vanessa_socket_server_accept()
 

----------------------------------------------------------------------

14th March 2002
(Horms)

 * 0.0.4beta1
 - Added code to detatch from the terminal to become a daemon.
 - include <errno.h> in vanessa_socket_pipe.c.  closes: Debian Bug#108209
 - Fixed minor .spec file errors 
   Scot W. Hetzel <scot@genroco.com> & Horms
 - Added vanessa_socket_server_bind(), vanessa_socket_server_accept()
   and friends
 - Allow select() function to be supplied to  vanessa_socket_pipe().
 - Use system variants of read(), write() and select() by default
   in  vanessa_socket_pipe() and friends.
 

----------------------------------------------------------------------

29th June 2001
(Horms)

 * 0.0.3
 - Allow read() and write() functions to be supplied to 
   vanessa_socket_pipe() and friends.
 - Tidyied up logging
 

----------------------------------------------------------------------

19th April 2001
(Horms)

 * 0.0.2
 - Fixed problem linking so that it is linked against the
   shared libary libvanessa_logger instead of statically linked
 - Fixed some (minor) casting problems when using bind() and
   various popt calls.
 

----------------------------------------------------------------------

5th April 2001
(Horms)

 * 0.0.1
 - Fixed problem with -b under BSD ("Erik R. Leo" <erikl@sover.net>)
 - Fixed problem with client connecting to bizzare address under BSD
   ("Erik R. Leo" <erikl@sover.net>)
 - Added -lresolv and -lvanessa_logger to build to aid compiling
   under solaris (Chris Stratford <Chris.Stratford@uk.uu.net>)
 - Added -lresolv and -lvanessa_logger to build to aid compiling
   under solaris (Chris Stratford <Chris.Stratford@uk.uu.net>)
 - Added timeradd and timersub compatibility for Solaris
   (Chris Stratford <Chris.Stratford@uk.uu.net>)
 - Cleaned up Debian packages
   

----------------------------------------------------------------------

9th January 2000
(Horms)

 * version 0.0.0 
 - Added vanessa_socket_client_src_open() and
   vanessa_socket_client_src_open_in_addr() that enable a conection
   to be openend to a server and optionally have the source port 
   and/or address specified.

