- compatibility with pcap++

This commit is contained in:
2023-04-09 15:46:33 +03:00
parent f01c5040e1
commit 5182cb8379
5 changed files with 30 additions and 5 deletions

View File

@@ -185,6 +185,24 @@ NetworkAddress::NetworkAddress(const char *ip, unsigned short port)
setPort(port);
}
NetworkAddress::NetworkAddress(uint32_t ip_4, uint16_t port)
:mInitialized(true), mRelayed(false)
{
memset(&mAddr6, 0, sizeof(mAddr6));
mAddr4.sin_family = AF_INET;
mAddr4.sin_addr.s_addr = ip_4;
mAddr4.sin_port = port;
}
NetworkAddress::NetworkAddress(const uint8_t* ip_6, uint16_t port)
:mInitialized(true), mRelayed(false)
{
memset(&mAddr6, 0, sizeof(mAddr6));
mAddr6.sin6_family = AF_INET6;
memmove(&mAddr6.sin6_addr, ip_6, sizeof(mAddr6.sin6_addr));
mAddr6.sin6_port = port;
}
NetworkAddress::NetworkAddress(const sockaddr& addr, unsigned addrLen)
:mInitialized(true), mRelayed(false)
{

View File

@@ -26,9 +26,16 @@ namespace ice
NetworkAddress(int stunType);
NetworkAddress(const std::string& ip, unsigned short port);
NetworkAddress(const char* ip, unsigned short port);
// Both ip_4 and port are network byte order
NetworkAddress(uint32_t ip_4, uint16_t port);
// Both ip_6 and port are network byte order
NetworkAddress(const uint8_t* ip_6, uint16_t port);
NetworkAddress(const in6_addr& ip, unsigned short port);
NetworkAddress(const in_addr& ip, unsigned short port);
NetworkAddress(const sockaddr& addr, unsigned addrLen);
NetworkAddress(const sockaddr& addr, unsigned addrLen);
NetworkAddress(const NetworkAddress& src);
~NetworkAddress();