aboutsummaryrefslogtreecommitdiffstats
path: root/gtk/voip_calls.c
diff options
context:
space:
mode:
authorlego <lego@f5534014-38df-0310-8fa8-9805f1628bb7>2005-03-02 23:25:41 +0000
committerlego <lego@f5534014-38df-0310-8fa8-9805f1628bb7>2005-03-02 23:25:41 +0000
commita87efa2179e6ad581cd9e0365bf89acd7d17f4cb (patch)
treebf6c0e53510a8209205f5d8921ef49b4bacb440b /gtk/voip_calls.c
parent8ca42476b4910a761a63bba26d503c01220b79fd (diff)
From Alejandro Vaquero:
Avoid adding to a call non ISUP mtp3 packets towards the same destination as a copy of the last ISUP packet towards that dpc. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@13576 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'gtk/voip_calls.c')
-rw-r--r--gtk/voip_calls.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gtk/voip_calls.c b/gtk/voip_calls.c
index f4d61ed257..ebf80f4364 100644
--- a/gtk/voip_calls.c
+++ b/gtk/voip_calls.c
@@ -650,6 +650,7 @@ static gchar isup_called_number[255], isup_calling_number[255];
static guint16 isup_cic;
static guint8 isup_message_type;
static guint8 isup_cause_value;
+static guint32 isup_frame_num;
/****************************************************************************/
/* whenever a isup_ packet is seen by the tap listener */
@@ -669,6 +670,8 @@ isup_calls_packet(void *ptr _U_, packet_info *pinfo, epan_dissect_t *edt _U_, co
isup_cause_value = pi->cause_value;
isup_cic = pinfo->circuit_id;
+ isup_frame_num = pinfo->fd->num;
+
return 0;
}
@@ -738,6 +741,9 @@ mtp3_calls_packet(void *ptr _U_, packet_info *pinfo, epan_dissect_t *edt _U_, co
const mtp3_tap_rec_t *pi = mtp3_info;
+ /* check if the upper layer is ISUP matching the frame number */
+ if (isup_frame_num != pinfo->fd->num) return 0;
+
/* check wether we already have a call with these parameters in the list */
list = g_list_first(tapinfo->strinfo_list);
while (list)