X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fnet%2Finet6.cpp;h=77d757082379f70e713d7587bbf0d61df675ff75;hb=HEAD;hp=758005860582dc968ef2064e6d2047e19376fe5c;hpb=cc2e643d6ec3025db3fb6f0a4c1f77af05cf1026;p=libs%2Fnet.git diff --git a/source/net/inet6.cpp b/source/net/inet6.cpp index 7580058..1b8fc39 100644 --- a/source/net/inet6.cpp +++ b/source/net/inet6.cpp @@ -1,6 +1,7 @@ #include "inet6.h" #include "platform_api.h" #include +#include #include "sockaddr_private.h" using namespace std; @@ -15,6 +16,21 @@ Inet6Addr::Inet6Addr(const SysAddr &sa) port = htons(sai6.sin6_port); } +Inet6Addr Inet6Addr::wildcard(unsigned port) +{ + Inet6Addr addr; + addr.port = port; + return addr; +} + +Inet6Addr Inet6Addr::localhost(unsigned port) +{ + Inet6Addr addr; + addr.addr[15] = 1; + addr.port = port; + return addr; +} + SockAddr::SysAddr Inet6Addr::to_sys() const { SysAddr sa; @@ -34,9 +50,9 @@ string Inet6Addr::str() const string result = "["; for(unsigned i=0; i<16; i+=2) { - unsigned short part = (addr[i]<<8) | addr[i+1]; if(i>0) result += ':'; + unsigned short part = (addr[i]<<8) | addr[i+1]; result += format("%x", part); } result += ']';