-*- outline -*-

* New in AdaSockets 1.0

** New exception

The exception Socket_Error will be raised instead of Constraint_Error.
Thanks to Dmitriy Anisimkov <anisimkov@yahoo.com>.

** Major version change

I was tired of the 0.1.x serie, as AdaSockets is now mature enough for
being used in large applications.

* New in AdaSockets 0.1.20

** New contrib directory

The new contrib directory includes scripts to make win32 installation easier,
thanks to Dmitriy Anisimkov <anisimkov@yahoo.com>.

** New high-level function

Getsockopt is now available. Patch sent by Dmitriy Anisimkov
<anisimkov@yahoo.com>.

** New thin function and constants

The ioctl() function and two constants, FIONBIO and FIONREAD, have
been added to the thin binding. close() is now bound as a function
instead of a procedure, since specific code may need to check the
result. Also, a new Sockets.Thin.Errno function gives an error code
that is portable between Unix and win32. Thanks to Dmitriy Anisimkov
<anisimkov@yahoo.com>.

* New in AdaSockets 0.1.19

** New features for Windows

Maxim Reznik <max1@mbank.com.ua> did adapt AdaSockets so that it offers
all the functions needed for AdaBroker on Windows. This way, he could use
AdaBroker on this new platform.

** Minor enhancement

When a socket is closed, its buffer space is reclaimed if the socket was
still in buffered mode. Suggestion and patch sent by Dmitriy
Anisimkov <anisimkov@yahoo.com>.

** Example fix

The multicast example (which now works on Windows) has been fixed to do
what it says. Fix sent by Juanma Barranquero <lektu@terra.es>.

* New in AdaSockets 0.1.18

** New subprograms Set_Buffer and Unset_Buffer

Two new subprograms, Set_Buffer and Unset_Buffer, allow to read sockets
in buffered mode. This is particularily important for UDP sockets. Feature
suggested by Juanma Barranquero <lektu@terra.es>.

The listener example has been modified to use buffered mode.

* New in AdaSockets 0.1.17

** Bug fix

A bug prevented UDP sockets to be able to receive data, at least on Windows.
Reported and fixed by Juanma Barranquero <lektu@terra.es>.

* New in AdaSockets 0.1.16

** New port

Thanks to Dmitriy Anisimkov <anisimkov@yahoo.com>, AdaSockets now builds
correctly on a Windows MINGW system. You need a set of Unix tools to
build it; it has been tested with the Cygwin toolset.

* New in AdaSockets 0.1.15

** Bug fix

Send could sometimes incorrectly raise Constraint_Error instead of
the more logical Connection_Closed. Reported and fixed by
Pascal Obry <p.obry@wanadoo.fr>.

* New in AdaSockets 0.1.14

** Bug fix

Get_Sock_Port and Get_Peer_Port did not return the right result on little
endian machines. Reported and fixed by Stphane Patureau
<spaturea@meletu.univ-valenciennes.fr>.

* New in AdaSockets 0.1.13

** New functions Get_Sock_Addr and Get_Sock_Port

This time, the new functions, that work locally, have been suggested by
Alan Barnes <barnesa@aston.ac.uk>.

** Bind enhancement

Alan Barnes <barnesa@aston.ac.uk> also proposed a Bind enhancement to
accept 0 as a valid port. In this case, a free one will be allocated
by the system. Also, it is now possible to specify the bind address.

* New in AdaSockets 0.1.12

** New functions Get_Peer_Addr and Get_Peer_Port

Two new functions allow a user to know the address and port used by the
peer. Based on a suggestion from Sander Cox <sander.cox@philips.com>.

** Bug fix

The split program had a forgotten incrementation, which made it fail on
some machines with long qualified names. Fix sent by Thomas Quinot
<thomas@cuivre.fr.eu.org>.

* New in AdaSockets 0.1.11

** New constants defined

David J. Kristola <David95037@aol.com> asked for two new constants to be
defined, O_NONBLOCK and MSG_PEEK. These will be used for a new extension
(non-blocking sockets) that he plans to release in the near future.

* New in AdaSockets 0.1.10

** New package Sockets.Stream_IO

A new package Sockets.Stream_IO allows the user to build a stream from an
existing socket. The stream can then be used as any other Ada stream.
Two new examples, stream_listener and stream_sender are provided to
demonstrate this feature.

** New procedure Receive_Some.

A new Receive_Some procedure, suggested by Laurent Guerby, allows the user
to get the first data available instead of waiting for the buffer to be
filled.

** Allow adasockets-config to be called with no parameter.

This has been suggested by Preben Randhol, and simplifies the gnatmake
command line whenever someone uses no library but adasockets.

* New in AdaSockets 0.1.9

** Add a new function Get_FD.

A new function Get_FD has been added in the Sockets package to let GtkAda users
add this descriptor to the list of descriptors to watch. Patch sent by
Bobby D. Bryant <bdbryant@mail.utexas.edu>.

* New in AdaSockets 0.1.8

** Change the building process

AdaSockets now comes as a shared and a non-shared library.

** Fix bugs on 64 bit platforms

The iovec_len field in sockets-thin.ads was incorrectly marked as being
an Integer instead of a Storage_Offset.

* New in AdaSockets 0.1.7

** Add support for FreeBSD

FreeBSD 3.x, 4.0 and 5.0-CURRENT are now supported out of the box.

* New in AdaSockets 0.1.6

** Add a `adasockets-config' script

The AdaSockets library can now be found automatically on your system if
it has been installed properly.

* New in AdaSockets 0.1.5

** Fix a race condition when using naming services

gethostbyname() and friends functions are not thread safe because they return
a pointer on a static memory zone. Incriminated calls are now protected by a
mutex. The overhead should be neglictible as those functions aren't usually
called often.

* New in AdaSockets 0.1.4

** Fix a descriptor leak when using TCP sockets

close() was not called properly after a socket has been shutdowned in
both directions. Since we do not want to add the burden of calling
close() onto the user, we record the state for each direction and call 
close() when appropriate.

** Fix an installation bug

In some situations (unexistant lib subdirectory in target prefix
directory), the installation directory was not properly created. This
is now fixed.

** Add some thin bindings entries

Thin bindigs entries have been added for socketpair() and AF_UNIX.

* New in AdaSockets 0.1.3

** Support for IP multicast

The package Sockets.Multicast can be used to create Multicast
interfaces on machine that support it.

** Interface changes

Some functions have been transformed into procedures to ease the
addition of multicast sockets.

** New example

The multi example can be used as both a multicast sender and receiver.

* New in AdaSockets 0.1.2

** Warning suppressed

Some versions of GNAT were detecting incorrectly a missing raise in
some cases. Signaled by Nicolas Ollinger <Nicolas.Ollinger@ens-lyon.fr>.

** New example

A listener example which is only a server has been added to avoid any
confusion between clients and servers. Suggestion by Scott Moody
<scott@plato.ds.boeing.com>.

* New in AdaSockets 0.1.1

** `aux' -> `support'

The subdirectory `aux' in the distribution has been renamed into
`support' to avoid a name clash on Windows NT with the standard
peripherical `aux'. Suggestion from Juanma Barranquero
<barranquero@laley-actualidad.es>.

** Better error messages

Exception raised during the connection now have messages in many cases 
explaining why the connexion could not be made.
