// $Id$
//
// Copyright (C) 2006
-// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS)
-// Kompetenzzentrum fuer Satelitenkommunikation (SatCom)
-// Stefan Bund <stefan.bund@fokus.fraunhofer.de>
+// Fraunhofer Institute for Open Communication Systems (FOKUS)
+// Competence Center NETwork research (NET), St. Augustin, GERMANY
+// Stefan Bund <g0dil@berlios.de>
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
#include "TCPSocketHandle.hh"
#include <iostream>
-#include <boost/test/auto_unit_test.hpp>
+#include "../../../Utils/auto_unit_test.hh"
#include <boost/test/test_tools.hpp>
#define prefix_
(*fn)();
_exit(0);
}
+ ::sleep(1);
}
void wait()
{
senf::TCPv4ClientSocketHandle sock;
- BOOST_CHECK_THROW( sock.connect(senf::INet4SocketAddress("127.0.0.1:12345")), senf::SystemException );
- BOOST_CHECK_THROW( sock.protocol().connect("127.0.0.1:12345"), senf::SystemException );
+ BOOST_CHECK_THROW( sock.connect(senf::INet4SocketAddress("127.0.0.1:12345")),
+ senf::SystemException );
}
try {
alarm(10);
start(server_v4);
senf::TCPv4ClientSocketHandle sock;
- BOOST_CHECK_NO_THROW( sock.bind("127.0.0.1:23456") );
- BOOST_CHECK_NO_THROW( sock.connect("127.0.0.1:12345") );
- BOOST_CHECK( sock.peer() == "127.0.0.1:12345" );
- BOOST_CHECK( sock.local() == "127.0.0.1:23456" );
+ BOOST_CHECK_NO_THROW( sock.bind(senf::INet4SocketAddress("127.0.0.1:23456")) );
+ BOOST_CHECK_NO_THROW( sock.connect(senf::INet4SocketAddress("127.0.0.1:12345")) );
+ BOOST_CHECK( sock.peer() == senf::INet4SocketAddress("127.0.0.1:12345") );
+ BOOST_CHECK( sock.local() == senf::INet4SocketAddress("127.0.0.1:23456") );
BOOST_CHECK( sock.blocking() );
- BOOST_CHECK_NO_THROW( sock.rcvbuf(2048) );
- BOOST_CHECK_EQUAL( sock.rcvbuf(), 2048u );
- BOOST_CHECK_NO_THROW( sock.sndbuf(2048) );
- BOOST_CHECK_EQUAL( sock.sndbuf(), 2048u );
+ BOOST_CHECK_NO_THROW( sock.protocol().rcvbuf(2048) );
+ BOOST_CHECK_EQUAL( sock.protocol().rcvbuf(), 2048u );
+ BOOST_CHECK_NO_THROW( sock.protocol().sndbuf(2048) );
+ BOOST_CHECK_EQUAL( sock.protocol().sndbuf(), 2048u );
BOOST_CHECK_NO_THROW( sock.write("TEST-WRITE") );
BOOST_CHECK_EQUAL( sock.read(), "TEST-WRITE" );
BOOST_CHECK( !sock.eof() );
{
senf::TCPv6ClientSocketHandle sock;
- BOOST_CHECK_THROW( sock.connect(senf::INet6SocketAddress("[::1]:12345")), senf::SystemException );
- BOOST_CHECK_THROW( sock.protocol().connect("[::1]:12345"), senf::SystemException );
+ BOOST_CHECK_THROW( sock.connect(senf::INet6SocketAddress("[::1]:12345")),
+ senf::SystemException );
}
try {
alarm(10);
start(server_v6);
senf::TCPv6ClientSocketHandle sock;
- BOOST_CHECK_NO_THROW( sock.bind("[::1]:23456") );
- BOOST_CHECK_NO_THROW( sock.connect("[::1]:12345") );
- BOOST_CHECK( sock.peer() == "[::1]:12345" );
- BOOST_CHECK( sock.local() == "[::1]:23456" );
+ BOOST_CHECK_NO_THROW( sock.bind(senf::INet6SocketAddress("[::1]:23456")) );
+ BOOST_CHECK_NO_THROW( sock.connect(senf::INet6SocketAddress("[::1]:12345")) );
+ BOOST_CHECK( sock.peer() == senf::INet6SocketAddress("[::1]:12345") );
+ BOOST_CHECK( sock.local() == senf::INet6SocketAddress("[::1]:23456") );
BOOST_CHECK( sock.blocking() );
- BOOST_CHECK_NO_THROW( sock.rcvbuf(2048) );
- BOOST_CHECK_EQUAL( sock.rcvbuf(), 2048u );
- BOOST_CHECK_NO_THROW( sock.sndbuf(2048) );
- BOOST_CHECK_EQUAL( sock.sndbuf(), 2048u );
+ BOOST_CHECK_NO_THROW( sock.protocol().rcvbuf(2048) );
+ BOOST_CHECK_EQUAL( sock.protocol().rcvbuf(), 2048u );
+ BOOST_CHECK_NO_THROW( sock.protocol().sndbuf(2048) );
+ BOOST_CHECK_EQUAL( sock.protocol().sndbuf(), 2048u );
BOOST_CHECK_NO_THROW( sock.write("TEST-WRITE") );
BOOST_CHECK_EQUAL( sock.read(), "TEST-WRITE" );
// this fails with ENOFILE ... why ????
try {
alarm(10);
BOOST_CHECKPOINT("Opening server socket");
- senf::TCPv4ServerSocketHandle server ("127.0.0.1:12346");
+ senf::TCPv4ServerSocketHandle server (senf::INet4SocketAddress("127.0.0.1:12346"));
BOOST_CHECKPOINT("Starting client");
start(client_v4);
try {
alarm(10);
BOOST_CHECKPOINT("Opening server socket");
- senf::TCPv6ServerSocketHandle server ("[::1]:12347");
+ senf::TCPv6ServerSocketHandle server (senf::INet6SocketAddress("[::1]:12347"));
BOOST_CHECKPOINT("Starting client");
start(client_v6);