aboutsummaryrefslogtreecommitdiffstats
path: root/asn1/t38
diff options
context:
space:
mode:
authorJeff Morriss <jeff.morriss.ws@gmail.com>2015-03-11 22:51:52 -0400
committerAnders Broman <a.broman58@gmail.com>2015-03-12 16:35:36 +0000
commit283336508efad6c58ad0a62508b7e6ca5db34ece (patch)
tree42e0792f8d99b7e36038343e8173d77593c091a2 /asn1/t38
parentad1b3ee110a3824e0efa52ff6ed1bfcc54261ea6 (diff)
Don't pass a t4-non-ecm-sig-end to the tap if we didn't see the start of the
data: the invalid frame number will crash Wireshark. Bug: 10885 Change-Id: I3ae278b77a9449136fbaaac52f2bbaa8a510bf76 Reviewed-on: https://code.wireshark.org/review/7651 Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'asn1/t38')
-rw-r--r--asn1/t38/t38.cnf4
1 files changed, 3 insertions, 1 deletions
diff --git a/asn1/t38/t38.cnf b/asn1/t38/t38.cnf
index 3a769e1aa2..7fa29ee1c7 100644
--- a/asn1/t38/t38.cnf
+++ b/asn1/t38/t38.cnf
@@ -246,7 +246,9 @@ VAL_PTR=&Data_Field_field_type_value
primary_part = TRUE;
#.FN_FTR UDPTLPacket/primary-ifp-packet
/* if is a valid t38 packet, add to tap */
- if (p_t38_packet_conv && (!actx->pinfo->flags.in_error_pkt) && ((gint32) seq_number != p_t38_packet_conv_info->last_seqnum))
+ /* Note that t4-non-ecm-sig-end without first_t4_data is not valid */
+ if (p_t38_packet_conv && (!actx->pinfo->flags.in_error_pkt) && ((gint32) seq_number != p_t38_packet_conv_info->last_seqnum) &&
+ !(t38_info->type_msg == 1 && t38_info->Data_Field_field_type_value == 7 && t38_info->frame_num_first_t4_data == 0))
tap_queue_packet(t38_tap, actx->pinfo, t38_info);
if (p_t38_conv) p_t38_conv_info->last_seqnum = (gint32) seq_number;