X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Socket%2FProtocols%2FINet%2FINetAddressing.cci;h=3ad38493a257844741047eecaa819390080557a8;hb=6f50bf49e282c0528f51faa0a245bbfa2b867399;hp=f053e1db8b73b7ea6101ad8cc19cd6391a855f4d;hpb=6b6681bb03aac52a523b2ff8417e09be55dd446c;p=senf.git diff --git a/Socket/Protocols/INet/INetAddressing.cci b/Socket/Protocols/INet/INetAddressing.cci index f053e1d..3ad3849 100644 --- a/Socket/Protocols/INet/INetAddressing.cci +++ b/Socket/Protocols/INet/INetAddressing.cci @@ -1,9 +1,9 @@ // $Id$ // // Copyright (C) 2006 -// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS) -// Kompetenzzentrum fuer Satelitenkommunikation (SatCom) -// Stefan Bund +// Fraunhofer Institute for Open Communication Systems (FOKUS) +// Competence Center NETwork research (NET), St. Augustin, GERMANY +// Stefan Bund // // 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 @@ -104,18 +104,6 @@ prefix_ senf::INet6SocketAddress::INet6SocketAddress() clear(); } -prefix_ senf::INet6SocketAddress::INet6SocketAddress(std::string const & addr) -{ - clear(); - assignAddr(addr); -} - -prefix_ senf::INet6SocketAddress::INet6SocketAddress(char const * addr) -{ - clear(); - assignAddr(addr); -} - prefix_ senf::INet6SocketAddress::INet6SocketAddress(INet6Address const & addr, unsigned port) { clear(); @@ -132,21 +120,13 @@ prefix_ senf::INet6SocketAddress::INet6SocketAddress(INet6Address const & addr, assignIface(iface); } -prefix_ senf::INet6SocketAddress::INet6SocketAddress(std::string const & addr, - std::string const & iface) -{ - clear(); - assignAddr(addr); - assignIface(iface); -} - -prefix_ senf::INet6Address senf::INet6SocketAddress::host() +prefix_ senf::INet6Address senf::INet6SocketAddress::address() const { return INet6Address::from_data(&sockaddr_.sin6_addr.s6_addr[0]); } -prefix_ void senf::INet6SocketAddress::host(INet6Address const & addr) +prefix_ void senf::INet6SocketAddress::address(INet6Address const & addr) { std::copy(addr.begin(), addr.end(), &sockaddr_.sin6_addr.s6_addr[0]); } @@ -186,7 +166,11 @@ prefix_ unsigned senf::INet6SocketAddress::sockaddr_len() prefix_ std::ostream & senf::operator<<(std::ostream & os, INet6SocketAddress const & addr) { - os << addr.address(); + os << '[' << addr.address(); + std::string iface (addr.iface()); + if (! iface.empty()) + os << '%' << iface; + os << "]:" << addr.port(); return os; }