diff options
author | lego <lego@f5534014-38df-0310-8fa8-9805f1628bb7> | 2005-03-02 23:25:41 +0000 |
---|---|---|
committer | lego <lego@f5534014-38df-0310-8fa8-9805f1628bb7> | 2005-03-02 23:25:41 +0000 |
commit | a87efa2179e6ad581cd9e0365bf89acd7d17f4cb (patch) | |
tree | bf6c0e53510a8209205f5d8921ef49b4bacb440b /gtk/voip_calls.c | |
parent | 8ca42476b4910a761a63bba26d503c01220b79fd (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.c | 6 |
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) |