Boost logo

Boost :

From: Pedro Lamarão (pedro.lamarao_at_[hidden])
Date: 2005-11-04 04:57:30

Fellow Boosters,

this is an update on my proposal for (the beggining of?) a Boost.Network
library, located in the "Input - Output" folder of the Sandbox.

I consider it feature complete for a 1.0 milestone; the features being:

* IOStreams through boost::iostreams (providing a "talker" type model of
Device over sockets).
* A listener class.
* A wrapper for the name resolution services of the system library.
* Types to store network addresses with formatted output operators.

There's still some more documentation to write, though.

Please give one last shot at this proposal.

Last time people objected to it as a "Boost.Network" library for not
being sufficiently generic (in which it doesn't support "multiplexing"
or "asynchronicity"), so perhaps I should move it deeper inside, like,
Boost.IOStreams.Network. What do you think?

The four components provided could be considered independently: the
listener class is as simple as it gets, with a private "accept" method
for RAII initialization of whatever socket wrapper type; the model of
Device is also as simple as it gets; maybe there is some other
interesting stuff to improve the getaddrinfo wrapper and the address types.

Possible areas of improvement for the future are:
* selector/poller (which is sitting around here waiting)
* full formatted input and output for address types
* asynchronous resolver (based on Boost.Threads).
* Wrapper for sendfile/TransmitFile.

 Pedro Lamarão

Boost list run by bdawes at, gregod at, cpdaniel at, john at