lokinet/llarp/net/ip.hpp

29 lines
487 B
C++
Raw Normal View History

#pragma once
#include <net/net_int.hpp>
#include <net/net.hpp>
#include <cstdint>
namespace llarp::net
{
huint128_t
In6ToHUInt(in6_addr addr);
in6_addr
HUIntToIn6(huint128_t x);
constexpr huint128_t
ExpandV4(huint32_t x)
{
return huint128_t{0xffff'0000'0000UL} | huint128_t{x.h};
}
constexpr huint32_t
TruncateV6(huint128_t x)
{
huint32_t ret = {0};
ret.h = (uint32_t)(x.h & 0x0000'0000'ffff'ffffUL);
return ret;
}
2020-05-20 22:48:13 +00:00
} // namespace llarp::net