37 #ifndef RTPIPV6DESTINATION_H 39 #define RTPIPV6DESTINATION_H 41 #include "rtpconfig.h" 43 #ifdef RTP_SUPPORT_IPV6 48 #ifndef RTP_SOCKETTYPE_WINSOCK 49 #include <netinet/in.h> 50 #include <arpa/inet.h> 51 #include <sys/socket.h> 52 #endif // RTP_SOCKETTYPE_WINSOCK 57 class JRTPLIB_IMPORTEXPORT RTPIPv6Destination
60 RTPIPv6Destination(in6_addr ip,uint16_t portbase)
62 memset(&rtpaddr,0,
sizeof(
struct sockaddr_in6));
63 memset(&rtcpaddr,0,
sizeof(
struct sockaddr_in6));
64 rtpaddr.sin6_family = AF_INET6;
65 rtpaddr.sin6_port = htons(portbase);
66 rtpaddr.sin6_addr = ip;
67 rtcpaddr.sin6_family = AF_INET6;
68 rtcpaddr.sin6_port = htons(portbase+1);
69 rtcpaddr.sin6_addr = ip;
71 in6_addr GetIP()
const {
return rtpaddr.sin6_addr; }
72 bool operator==(
const RTPIPv6Destination &src)
const 74 if (rtpaddr.sin6_port == src.rtpaddr.sin6_port && (memcmp(&(src.rtpaddr.sin6_addr),&(rtpaddr.sin6_addr),
sizeof(in6_addr)) == 0))
78 const struct sockaddr_in6 *GetRTPSockAddr()
const {
return &rtpaddr; }
79 const struct sockaddr_in6 *GetRTCPSockAddr()
const {
return &rtcpaddr; }
80 std::string GetDestinationString()
const;
82 struct sockaddr_in6 rtpaddr;
83 struct sockaddr_in6 rtcpaddr;
88 #endif // RTP_SUPPORT_IPV6 90 #endif // RTPIPV6DESTINATION_H Definition: rtpfaketransmitter.h:64