diff options
author | Henri Herscher <henri@oreka.org> | 2006-03-29 21:18:10 +0000 |
---|---|---|
committer | Henri Herscher <henri@oreka.org> | 2006-03-29 21:18:10 +0000 |
commit | 15808b4c81e4373c71456ba66e2cdfd41b292e94 (patch) | |
tree | 821b7cf03f9818655a5606fe707ed3414514a107 /orkaudio | |
parent | a6750925f6425e83aeadbcc20a288a539799af1d (diff) |
now cast all strutct in_addr.s_addr to unsigned int before comparing.
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@206 09dcff7a-b715-0410-9601-b79a96267cd0
Diffstat (limited to 'orkaudio')
-rw-r--r-- | orkaudio/audiocaptureplugins/voip/RtpSession.cpp | 8 | ||||
-rw-r--r-- | orkaudio/audiocaptureplugins/voip/VoIp.cpp | 10 |
2 files changed, 12 insertions, 6 deletions
diff --git a/orkaudio/audiocaptureplugins/voip/RtpSession.cpp b/orkaudio/audiocaptureplugins/voip/RtpSession.cpp index 28e1c37..0c194e3 100644 --- a/orkaudio/audiocaptureplugins/voip/RtpSession.cpp +++ b/orkaudio/audiocaptureplugins/voip/RtpSession.cpp @@ -146,13 +146,13 @@ void RtpSession::ProcessMetadataSip(RtpPacketInfoRef& rtpPacket) bool done = false; // work out invitee IP address - if(rtpPacket->m_sourceIp.s_addr == m_invitorIp.s_addr) + if((unsigned int)rtpPacket->m_sourceIp.s_addr == (unsigned int)m_invitorIp.s_addr) { m_inviteeIp = rtpPacket->m_destIp; m_inviteeTcpPort = rtpPacket->m_destPort; m_invitorTcpPort = rtpPacket->m_sourcePort; } - else if(rtpPacket->m_destIp.s_addr == m_invitorIp.s_addr) + else if((unsigned int)rtpPacket->m_destIp.s_addr == (unsigned int)m_invitorIp.s_addr) { m_inviteeIp = rtpPacket->m_sourceIp; m_inviteeTcpPort = rtpPacket->m_sourcePort; @@ -275,7 +275,7 @@ void RtpSession::AddRtpPacket(RtpPacketInfoRef& rtpPacket) } else { - if(rtpPacket->m_sourceIp.s_addr == m_lastRtpPacketSide1->m_sourceIp.s_addr) + if((unsigned int)rtpPacket->m_sourceIp.s_addr == (unsigned int)m_lastRtpPacketSide1->m_sourceIp.s_addr) { m_lastRtpPacketSide1 = rtpPacket; channel = 1; @@ -526,7 +526,7 @@ void RtpSessions::ReportSkinnyStartMediaTransmission(SkStartMediaTransmissionStr { RtpSessionRef tmpSession = pair->second; - if(tmpSession->m_endPointIp.s_addr == ipHeader->ip_dest.s_addr) + if((unsigned int)tmpSession->m_endPointIp.s_addr == (unsigned int)ipHeader->ip_dest.s_addr) { if(tmpSession->m_ipAndPort.size() == 0) { diff --git a/orkaudio/audiocaptureplugins/voip/VoIp.cpp b/orkaudio/audiocaptureplugins/voip/VoIp.cpp index f9124c8..96e7349 100644 --- a/orkaudio/audiocaptureplugins/voip/VoIp.cpp +++ b/orkaudio/audiocaptureplugins/voip/VoIp.cpp @@ -222,6 +222,7 @@ bool TrySipBye(EthernetHeaderStruct* ethernetHeader, IpHeaderStruct* ipHeader, U bool TrySipInvite(EthernetHeaderStruct* ethernetHeader, IpHeaderStruct* ipHeader, UdpHeaderStruct* udpHeader, u_char* udpPayload) { bool result = false; + bool drop = false; if (memcmp("INVITE", (void*)udpPayload, 6) == 0) { result = true; @@ -298,16 +299,21 @@ bool TrySipInvite(EthernetHeaderStruct* ethernetHeader, IpHeaderStruct* ipHeader if(ACE_OS::inet_aton((PCSTR)connectionAddress, &fromIp)) { info->m_fromIp = fromIp; + + //if((unsigned int)fromIp.s_addr != (unsigned int)ipHeader->ip_src.s_addr) + //{ + // drop =true; + //} } } } - if(info->m_fromIp.s_addr == 0) + if((unsigned int)info->m_fromIp.s_addr == 0) { // In case connection address could not be extracted, use SIP invite sender IP address info->m_fromIp = ipHeader->ip_src; } - if(info->m_fromRtpPort.size() && info->m_from.size() && info->m_to.size() && info->m_callId.size()) + if(drop ==false && info->m_fromRtpPort.size() && info->m_from.size() && info->m_to.size() && info->m_callId.size()) { RtpSessionsSingleton::instance()->ReportSipInvite(info); } |