From eb372831ddbb7398fbe2022cb81840e356211446 Mon Sep 17 00:00:00 2001 From: Gerald Combs Date: Sat, 5 Mar 2005 17:57:27 +0000 Subject: [PATCH] When analyzing RTP streams, use the source address as well as the SSRC to determine forward and reverse directions. This fixes a capture I have which has the same SSRC in the forward and reverse streams. svn path=/trunk/; revision=13599 --- gtk/rtp_analysis.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gtk/rtp_analysis.c b/gtk/rtp_analysis.c index 072b8085c2..8caedc4c33 100644 --- a/gtk/rtp_analysis.c +++ b/gtk/rtp_analysis.c @@ -511,7 +511,8 @@ static int rtp_packet(void *user_data_arg, packet_info *pinfo, epan_dissect_t *e else if (rtpinfo->info_version !=2) return 0; /* is it the forward direction? */ - else if (user_data->ssrc_fwd == rtpinfo->info_sync_src) { + else if (user_data->ssrc_fwd == rtpinfo->info_sync_src && + CMP_ADDRESS(&(user_data->ip_src_fwd), &(pinfo->net_src)) == 0) { #ifdef USE_CONVERSATION_GRAPH vp.time = ((double)pinfo->fd->rel_secs + (double)pinfo->fd->rel_usecs/1000000); vp.fnumber = pinfo->fd->num; @@ -526,7 +527,8 @@ static int rtp_packet(void *user_data_arg, packet_info *pinfo, epan_dissect_t *e &(user_data->forward.statinfo), pinfo, rtpinfo); } /* is it the reversed direction? */ - else if (user_data->ssrc_rev == rtpinfo->info_sync_src) { + else if (user_data->ssrc_rev == rtpinfo->info_sync_src && + CMP_ADDRESS(&(user_data->ip_src_rev), &(pinfo->net_src)) == 0) { #ifdef USE_CONVERSATION_GRAPH vp.time = ((double)pinfo->fd->rel_secs + (double)pinfo->fd->rel_usecs/1000000); vp.fnumber = pinfo->fd->num;