Port SENF to compile against boost-1.35
[senf.git] / Socket / Protocols / INet / UDPSocketHandle.test.cc
index 4f3fd6f..44c51ec 100644 (file)
@@ -1,8 +1,8 @@
 // $Id$
 //
-// Copyright (C) 2007 
-// Fraunhofer Institute for Open Communication Systems (FOKUS) 
-// Competence Center NETwork research (NET), St. Augustin, GERMANY 
+// Copyright (C) 2007
+// 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
@@ -62,9 +62,11 @@ namespace {
         server_pid = ::fork();
         if (server_pid < 0) BOOST_FAIL("fork()");
         if (server_pid == 0) {
+            signal(SIGCHLD, SIG_IGN);
             (*fn)();
             _exit(0);
         }
+        signal(SIGCHLD, SIG_DFL);
     }
 
     void wait()
@@ -146,15 +148,15 @@ BOOST_AUTO_UNIT_TEST(udpv4ClientSocketHandle)
         senf::UDPv4ClientSocketHandle sock;
         BOOST_CHECK_NO_THROW( sock.bind(senf::INet4SocketAddress("127.0.0.1:23456")) );
         BOOST_CHECK( sock.local() == senf::INet4SocketAddress("127.0.0.1:23456") );
-        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.writeto(senf::INet4SocketAddress("127.0.0.1:12345"),
                                            std::string("TEST-WRITE")) );
         BOOST_CHECK_EQUAL( sock.read(), "TEST-WRITE" );
         BOOST_CHECK_NO_THROW( sock.protocol().timestamp() );
-        sock.writeto(senf::INet4SocketAddress("127.0.0.1:12345"),"QUIT");
+        sock.writeto(senf::INet4SocketAddress("127.0.0.1:12345"), std::string("QUIT"));
         sleep(1);
         stop();
         sleep(1);