X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Socket%2FProtocols%2FINet%2FMulticastSocketProtocol.test.cc;h=8493c8646a6b693a13acb3d717e4afb1921a5518;hb=a1fdb7bb122f0b05be809a922d4b7ef5e125fa67;hp=6f23b5d2a95c78099d894fa56e0ee277ef35f51d;hpb=6ba573a99f93543ee32292f79865751b3e9b89a4;p=senf.git diff --git a/Socket/Protocols/INet/MulticastSocketProtocol.test.cc b/Socket/Protocols/INet/MulticastSocketProtocol.test.cc index 6f23b5d..8493c86 100644 --- a/Socket/Protocols/INet/MulticastSocketProtocol.test.cc +++ b/Socket/Protocols/INet/MulticastSocketProtocol.test.cc @@ -21,7 +21,7 @@ // 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. /** \file - \brief MulticastSocketProtocol.test unit tests */ + \brief MulticastSocketProtocol unit tests */ //#include "MulticastSocketProtocol.test.hh" //#include "MulticastSocketProtocol.test.ih" @@ -29,7 +29,7 @@ // Custom includes #include "UDPSocketHandle.hh" -#include +#include "../../../Utils/auto_unit_test.hh" #include #define prefix_ @@ -53,8 +53,32 @@ BOOST_AUTO_UNIT_TEST(multicastSocketProtocol) BOOST_CHECK( ! sock.protocol().mcLoop() ); sock.protocol().mcLoop(true); BOOST_CHECK( sock.protocol().mcLoop() ); - + sock.protocol().mcIface("lo"); + + SENF_CHECK_NO_THROW( sock.protocol().mcJoinSSMSource( + senf::INet4Address(0xE0000001u), + senf::INet4Address(0x7F000001u), + "lo") ); + // This fails with EADDRNOTAVAIL .. no idea why. I tried with 'eth' interface + // and a real address (not loopback) to no avail. +// SENF_CHECK_NO_THROW( sock.protocol().mcLeaveSSMSource( +// senf::INet4Address(0xE0000001u), +// senf::INet4Address(0x7F000001u), +// "lo") ); + + senf::UDPv6ClientSocketHandle sock6; + + SENF_CHECK_NO_THROW( sock6.protocol().mcJoinSSMSource( + senf::INet6Address(0xFF00u, 0, 0, 0, 0, 0, 0, 1), + senf::INet6Address::Loopback, + "lo") ); + // This fails with EADDRNOTAVAIL .. no idea why. I tried with 'eth' interface + // and a real address (not loopback) to no avail. +// SENF_CHECK_NO_THROW( sock6.protocol().mcLeaveSSMSource( +// senf::INet6Address(0xFF00u, 0, 0, 0, 0, 0, 0, 1), +// senf::INet6Address::Loopback, +// "lo") ); } ///////////////////////////////cc.e////////////////////////////////////////