37 #ifndef RTPIPV6ADDRESS_H 39 #define RTPIPV6ADDRESS_H 41 #include "rtpconfig.h" 43 #ifdef RTP_SUPPORT_IPV6 47 #ifdef RTP_SUPPORT_NETINET_IN 48 #include <netinet/in.h> 49 #endif // RTP_SUPPORT_NETINET_IN 73 RTPIPv6Address(in6_addr ip,uint16_t port = 0):
RTPAddress(IPv6Address) { RTPIPv6Address::ip = ip; RTPIPv6Address::port = port; }
77 void SetIP(in6_addr ip) { RTPIPv6Address::ip = ip; }
80 void SetIP(
const uint8_t ip[16]) {
for (
int i = 0 ; i < 16 ; i++) RTPIPv6Address::ip.s6_addr[i] = ip[i]; }
83 void SetPort(uint16_t port) { RTPIPv6Address::port = port; }
86 void GetIP(uint8_t ip[16])
const {
for (
int i = 0 ; i < 16 ; i++) ip[i] = RTPIPv6Address::ip.s6_addr[i]; }
89 in6_addr
GetIP()
const {
return ip; }
95 bool IsSameAddress(
const RTPAddress *addr)
const;
96 bool IsFromSameHost(
const RTPAddress *addr)
const;
98 std::string GetAddressString()
const;
107 #endif // RTP_SUPPORT_IPV6 109 #endif // RTPIPV6ADDRESS_H RTPIPv6Address()
Creates an instance with IP address and port number set to zero.
Definition: rtpipv6address.h:65
void SetIP(in6_addr ip)
Sets the IP address for this instance to ip.
Definition: rtpipv6address.h:77
This class is an abstract class which is used to specify destinations, multicast groups etc...
Definition: rtpaddress.h:50
void SetPort(uint16_t port)
Sets the port number for this instance to port, which is interpreted in host byte order...
Definition: rtpipv6address.h:83
uint16_t GetPort() const
Returns the port number contained in this instance in host byte order.
Definition: rtpipv6address.h:92
in6_addr GetIP() const
Returns the IP address of this instance.
Definition: rtpipv6address.h:89
void SetIP(const uint8_t ip[16])
Sets the IP address for this instance to ip.
Definition: rtpipv6address.h:80
Definition: rtpfaketransmitter.h:64
A memory manager.
Definition: rtpmemorymanager.h:150
Represents an IPv6 IP address and port.
Definition: rtpipv6address.h:61
RTPIPv6Address(in6_addr ip, uint16_t port=0)
Creates an instance with IP address ip and port number port (the port number is assumed to be in host...
Definition: rtpipv6address.h:73
void GetIP(uint8_t ip[16]) const
Copies the IP address of this instance in ip.
Definition: rtpipv6address.h:86
RTPIPv6Address(const uint8_t ip[16], uint16_t port=0)
Creates an instance with IP address ip and port number port (the port number is assumed to be in host...
Definition: rtpipv6address.h:69