|
|
|
@ -53,10 +53,10 @@ namespace llarp
|
|
|
|
|
Addr(const llarp_ai & other) {
|
|
|
|
|
af = AF_INET6;
|
|
|
|
|
memcpy(addr.s6_addr, other.ip.s6_addr, 16);
|
|
|
|
|
port = htons(other.port);
|
|
|
|
|
port = other.port;
|
|
|
|
|
saddr.sa_family = af;
|
|
|
|
|
memcpy(((sockaddr_in6 *)&saddr)->sin6_addr.s6_addr, addr.s6_addr, 16);
|
|
|
|
|
((sockaddr_in6 *)&saddr)->sin6_port = port;
|
|
|
|
|
((sockaddr_in6 *)&saddr)->sin6_port = htons(port);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Addr(const sockaddr & other) {
|
|
|
|
@ -69,12 +69,12 @@ namespace llarp
|
|
|
|
|
memcpy(12+addrptr, &((const sockaddr_in*)(&other))->sin_addr, 4);
|
|
|
|
|
addrptr[11] = 0xff;
|
|
|
|
|
addrptr[10] = 0xff;
|
|
|
|
|
port = ((sockaddr_in*)(&other))->sin_port;
|
|
|
|
|
port = ntohs(((sockaddr_in*)(&other))->sin_port);
|
|
|
|
|
break;
|
|
|
|
|
case AF_INET6:
|
|
|
|
|
af = AF_INET6;
|
|
|
|
|
memcpy(addrptr, &((const sockaddr_in6*)(&other))->sin6_addr, 16);
|
|
|
|
|
port = ((sockaddr_in6*)(&other))->sin6_port;
|
|
|
|
|
port = ntohs(((sockaddr_in6*)(&other))->sin6_port);
|
|
|
|
|
break;
|
|
|
|
|
// TODO : sockaddr_ll
|
|
|
|
|
default:
|
|
|
|
|