#include "../EthernetPacket.hh"
#include "../IPv6Packet.hh"
-#include <boost/test/auto_unit_test.hpp>
+#include "../../../Utils/auto_unit_test.hh"
#include <boost/test/test_tools.hpp>
#define prefix_
namespace senf {
- /** \brief Base-class for INet4Address exceptions */
+ /** \brief Base-class for Address exceptions */
struct AddressException : public senf::Exception
{
protected:
: senf::Exception(msg) {}
};
- /** \brief Invalid INet4 address syntax */
+ /** \brief Invalid address syntax */
struct AddressSyntaxException : public AddressException
- { AddressSyntaxException() : AddressException("invalid INet4 address syntax") {} };
+ {
+ AddressSyntaxException() : AddressException("invalid address syntax") {}
+ AddressSyntaxException(std::string const & msg) : AddressException(msg) {}
+ };
/** \brief Resolver failure */
struct UnknownHostnameException : public AddressException
- { UnknownHostnameException() : AddressException("failed to resolve INet4 hostname") {} };
+ {
+ UnknownHostnameException() : AddressException("failed to resolve hostname") {}
+ UnknownHostnameException(std::string const & msg) : AddressException(msg) {}
+ };
}
\par Policy Interface:
ClientSocketHandle::read(), ClientSocketHandle::write(), ClientSocketHandle::bind(),
- ClientSocketHandle::local(), ClientSocketHandle::connect(), ClientSocketHandle::peer(),
- ClientSocketHandle::rcvbuf(), ClientSocketHandle::sndbuf()
+ ClientSocketHandle::local(), ClientSocketHandle::connect(), ClientSocketHandle::peer()
\par Address Type:
- INet4Address
+ INet4SocketAddress
ConnectedRawV4SocketProtocol provides an internet protocol raw socket based on IPv4 addressing.
This socket will put data written to it onto the IPv4 layer: if you call writeto don't inlude the header!
\par Policy Interface:
ClientSocketHandle::read(), ClientSocketHandle::write(), ClientSocketHandle::bind(),
- ClientSocketHandle::local(), ClientSocketHandle::connect(), ClientSocketHandle::peer(),
- ClientSocketHandle::rcvbuf(), ClientSocketHandle::sndbuf()
-
+ ClientSocketHandle::local(), ClientSocketHandle::connect(), ClientSocketHandle::peer()
+
\par Address Type:
INet6Address
\par Policy Interface:
ClientSocketHandle::read(), ClientSocketHandle::write(), ClientSocketHandle::bind(),
- ClientSocketHandle::local(), ClientSocketHandle::connect(), ClientSocketHandle::peer(),
- ClientSocketHandle::rcvbuf(), ClientSocketHandle::sndbuf()
+ ClientSocketHandle::local(), ClientSocketHandle::connect(), ClientSocketHandle::peer()
\par Address Type:
- INet4Address
+ INet4SocketAddress
ConnectedUDPv4SocketProtocol provides an internet protocol stream socket based on the UDP
protocol and IPv4 addressing.
\par Policy Interface:
ClientSocketHandle::read(), ClientSocketHandle::write(), ClientSocketHandle::bind(),
- ClientSocketHandle::local(), ClientSocketHandle::connect(), ClientSocketHandle::peer(),
- ClientSocketHandle::rcvbuf(), ClientSocketHandle::sndbuf()
-
+ ClientSocketHandle::local(), ClientSocketHandle::connect(), ClientSocketHandle::peer()
+
\par Address Type:
INet6Address
/** \brief Addressing policy supporting IPv4 addressing
\par Address Type:
- INet4Address
+ INet4SocketAddress
This addressing policy implements addressing using Internet V4
addresses.
\par Policy Interface:
ClientSocketHandle::read(), ClientSocketHandle::readfrom(),
- ClientSocketHandle::writeto(), ClientSocketHandle::bind(), ClientSocketHandle::local(),
- ClientSocketHandle::rcvbuf(), ClientSocketHandle::sndbuf()
+ ClientSocketHandle::writeto(), ClientSocketHandle::bind(), ClientSocketHandle::local()
\par Address Type:
- INet4Address
+ INet4SocketAddress
RawV4SocketProtocol provides an internet protocol raw socket based on IPv4 addressing.
This socket will put data written to it onto the IPv4 layer: if you call writeto don't inlude the header!
\par Policy Interface:
ClientSocketHandle::read(), ClientSocketHandle::readfrom(),
- ClientSocketHandle::writeto(), ClientSocketHandle::bind(), ClientSocketHandle::local(),
- ClientSocketHandle::rcvbuf(), ClientSocketHandle::sndbuf()
+ ClientSocketHandle::writeto(), ClientSocketHandle::bind(), ClientSocketHandle::local()
\par Address Type:
INet6Address
\par Policy Interface:
ClientSocketHandle::read(), ClientSocketHandle::write(), ClientSocketHandle::bind(),
- ClientSocketHandle::local(), ClientSocketHandle::connect(), ClientSocketHandle::peer(),
- ClientSocketHandle::rcvbuf(), ClientSocketHandle::sndbuf()
+ ClientSocketHandle::local(), ClientSocketHandle::connect(), ClientSocketHandle::peer()
\par Address Type:
- INet4Address
+ INet4SocketAddress
TCPv4SocketProtocol provides an internet protocol stream socket based on the TCP protocol
and IPv4 addressing.
\par Policy Interface:
ClientSocketHandle::read(), ClientSocketHandle::write(), ClientSocketHandle::bind(),
- ClientSocketHandle::local(), ClientSocketHandle::connect(), ClientSocketHandle::peer(),
- ClientSocketHandle::rcvbuf(), ClientSocketHandle::sndbuf()
+ ClientSocketHandle::local(), ClientSocketHandle::connect(), ClientSocketHandle::peer()
\par Address Type:
- INet6Address
+ INet6Address
TCPv6SocketProtocol provides an internet protocol stream socket based on the TCP protocol
and IPv6 addressing.
\par Policy Interface:
ClientSocketHandle::read(), ClientSocketHandle::readfrom(),
- ClientSocketHandle::writeto(), ClientSocketHandle::bind(), ClientSocketHandle::local(),
- ClientSocketHandle::rcvbuf(), ClientSocketHandle::sndbuf()
+ ClientSocketHandle::writeto(), ClientSocketHandle::bind(), ClientSocketHandle::local()
\par Address Type:
- INet4Address
+ INet4SocketAddress
UDPv4SocketProtocol provides an internet protocol stream socket based on the UDP protocol
and IPv4 addressing.
\par Policy Interface:
ClientSocketHandle::read(), ClientSocketHandle::readfrom(),
- ClientSocketHandle::writeto(), ClientSocketHandle::bind(), ClientSocketHandle::local(),
- ClientSocketHandle::rcvbuf(), ClientSocketHandle::sndbuf()
+ ClientSocketHandle::writeto(), ClientSocketHandle::bind(), ClientSocketHandle::local()
\par Address Type:
INet6Address
\par Policy Interface:
ClientSocketHandle::read(), ClientSocketHandle::readfrom(), ClientSocketHandle::writeto(),
- ClientSocketHandle::bind(), ClientSocketHandle::local(), ClientSocketHandle::rcvbuf(),
- ClientSocketHandle::sndbuf()
+ ClientSocketHandle::bind(), ClientSocketHandle::local()
\par Address Type:
- LLSocketAddress
+ LLSocketAddress
The PacketSocketProtocol provides access to the linux packet socket API. This API gives access to
the low level network packets. The packet socket allows read() and write() operations. The
\par Policy Interface: (to be checked)
ClientSocketHandle::read(), ClientSocketHandle::readfrom(),
- ClientSocketHandle::writeto(), ClientSocketHandle::bind(), ClientSocketHandle::local(),
- ClientSocketHandle::rcvbuf(), ClientSocketHandle::sndbuf()
+ ClientSocketHandle::writeto(), ClientSocketHandle::bind(), ClientSocketHandle::local()
\par Address Type:
- UNAddress
+ UNSocketAddress
ConnectedUNDatagramSocketProtocol provides an datagram protocol socket based on the unix domain addressing which operates in a connected mode.
/** \brief Addressing policy supporting unix domain addressing
\par Address Type:
- UNAddress
+ UNSocketAddress
This addressing policy implements addressing using unix domain
addresses.
\par Policy Interface: (to be checked)
ClientSocketHandle::read(), ClientSocketHandle::readfrom(),
- ClientSocketHandle::writeto(), ClientSocketHandle::bind(), ClientSocketHandle::local(),
- ClientSocketHandle::rcvbuf(), ClientSocketHandle::sndbuf()
+ ClientSocketHandle::writeto(), ClientSocketHandle::bind(), ClientSocketHandle::local()
\par Address Type:
- UNAddress
+ UNSocketAddress
UNDatagramSocketProtocol provides an datagram protocol socket based on the unix domain
addressing.
any necessary workarounds.
So, instead of <tt>\#include <boost/test/auto_unit_test.hpp></tt>, you should always write
- <tt>\#include "../Utils/auto_unit_test.hh"</tt> (with possibliy adjusted path).
+ <pre>
+ #include "../Utils/auto_unit_test.hh"
+ </pre> (with possibliy adjusted path).
*/
#ifndef HH_auto_unit_test_
<li><a class="ext" href="http://svn.berlios.de/viewcvs/senf/trunk/">Browse SVN</a></li>
<li><a class="ext" href="http://svn.berlios.de/wsvn/senf/?op=log&rev=0&sc=0&isdir=1">ChangeLog</a></li>
<li><a class="ext" href="http://developer.berlios.de/projects/senf">BerliOS</a></li>
- <li><a class="ext" href="http://openfacts.berlios.de/index-en.phtml?title=SENF+Network+Framework">Wiki</a></li>
+ <li><a class="ext" href="http://openfacts2.berlios.de/wikien/index.php/BerliosProject:SENF_Network_Framework">Wiki</a></li>
<li><a href="@TOPDIR@/doc/html/index.html">Home</a></li>
</ul>
<h2>${TITLE}</h2>