diff options
author | Pascal Quantin <pascal.quantin@gmail.com> | 2015-10-24 11:35:02 +0200 |
---|---|---|
committer | Michael Mann <mmann78@netscape.net> | 2015-10-24 12:40:30 +0000 |
commit | fcdb06190a7cff2c078ddebfe0d1d2d2d5b10630 (patch) | |
tree | 54155334e323362c059186659d381b765d15aeab | |
parent | 41e646ec4e668f690de8c92846f28e92d2396c6e (diff) | |
download | wireshark-fcdb06190a7cff2c078ddebfe0d1d2d2d5b10630.tar.gz |
T38: fix a dereference of NULL pointer
Change-Id: I6d0a87e301145f43af0c0ccba44c1dbb2f84adb2
Ping-Bug: 9887
Reviewed-on: https://code.wireshark.org/review/11243
Reviewed-by: Michael Mann <mmann78@netscape.net>
(cherry picked from commit eb6ccb1b0c4ad02b828652c3fe6e8d51c30a315e)
Reviewed-on: https://code.wireshark.org/review/11244
-rw-r--r-- | asn1/t38/packet-t38-template.c | 64 | ||||
-rw-r--r-- | epan/dissectors/packet-t38.c | 64 |
2 files changed, 64 insertions, 64 deletions
diff --git a/asn1/t38/packet-t38-template.c b/asn1/t38/packet-t38-template.c index 40363bb83a..eb2ba9a641 100644 --- a/asn1/t38/packet-t38-template.c +++ b/asn1/t38/packet-t38-template.c @@ -425,7 +425,7 @@ init_t38_info_conv(packet_info *pinfo) p_t38_conv = NULL; /* Use existing packet info if available */ - p_t38_packet_conv = (t38_conv *)p_get_proto_data(wmem_file_scope(), pinfo, proto_t38, 0); + p_t38_packet_conv = (t38_conv *)p_get_proto_data(wmem_file_scope(), pinfo, proto_t38, 0); /* find the conversation used for Reassemble and Setup Info */ @@ -442,38 +442,38 @@ init_t38_info_conv(packet_info *pinfo) conversation_set_dissector(p_conv, t38_udp_handle); } - if (!p_t38_packet_conv) { - p_t38_conv = (t38_conv *)conversation_get_proto_data(p_conv, proto_t38); - - /* create the conversation if it doen't exist */ - if (!p_t38_conv) { - p_t38_conv = wmem_new(wmem_file_scope(), t38_conv); - p_t38_conv->setup_method[0] = '\0'; - p_t38_conv->setup_frame_number = 0; - - p_t38_conv->src_t38_info.reass_ID = 0; - p_t38_conv->src_t38_info.reass_start_seqnum = -1; - p_t38_conv->src_t38_info.reass_data_type = 0; - p_t38_conv->src_t38_info.last_seqnum = -1; - p_t38_conv->src_t38_info.packet_lost = 0; - p_t38_conv->src_t38_info.burst_lost = 0; - p_t38_conv->src_t38_info.time_first_t4_data = 0; - p_t38_conv->src_t38_info.additional_hdlc_data_field_counter = 0; - p_t38_conv->src_t38_info.seqnum_prev_data_field = -1; - - p_t38_conv->dst_t38_info.reass_ID = 0; - p_t38_conv->dst_t38_info.reass_start_seqnum = -1; - p_t38_conv->dst_t38_info.reass_data_type = 0; - p_t38_conv->dst_t38_info.last_seqnum = -1; - p_t38_conv->dst_t38_info.packet_lost = 0; - p_t38_conv->dst_t38_info.burst_lost = 0; - p_t38_conv->dst_t38_info.time_first_t4_data = 0; - p_t38_conv->dst_t38_info.additional_hdlc_data_field_counter = 0; - p_t38_conv->dst_t38_info.seqnum_prev_data_field = -1; - - conversation_add_proto_data(p_conv, proto_t38, p_t38_conv); - } + p_t38_conv = (t38_conv *)conversation_get_proto_data(p_conv, proto_t38); + + /* create the conversation if it doesn't exist */ + if (!p_t38_conv) { + p_t38_conv = wmem_new(wmem_file_scope(), t38_conv); + p_t38_conv->setup_method[0] = '\0'; + p_t38_conv->setup_frame_number = 0; + + p_t38_conv->src_t38_info.reass_ID = 0; + p_t38_conv->src_t38_info.reass_start_seqnum = -1; + p_t38_conv->src_t38_info.reass_data_type = 0; + p_t38_conv->src_t38_info.last_seqnum = -1; + p_t38_conv->src_t38_info.packet_lost = 0; + p_t38_conv->src_t38_info.burst_lost = 0; + p_t38_conv->src_t38_info.time_first_t4_data = 0; + p_t38_conv->src_t38_info.additional_hdlc_data_field_counter = 0; + p_t38_conv->src_t38_info.seqnum_prev_data_field = -1; + + p_t38_conv->dst_t38_info.reass_ID = 0; + p_t38_conv->dst_t38_info.reass_start_seqnum = -1; + p_t38_conv->dst_t38_info.reass_data_type = 0; + p_t38_conv->dst_t38_info.last_seqnum = -1; + p_t38_conv->dst_t38_info.packet_lost = 0; + p_t38_conv->dst_t38_info.burst_lost = 0; + p_t38_conv->dst_t38_info.time_first_t4_data = 0; + p_t38_conv->dst_t38_info.additional_hdlc_data_field_counter = 0; + p_t38_conv->dst_t38_info.seqnum_prev_data_field = -1; + + conversation_add_proto_data(p_conv, proto_t38, p_t38_conv); + } + if (!p_t38_packet_conv) { /* copy the t38 conversation info to the packet t38 conversation */ p_t38_packet_conv = wmem_new(wmem_file_scope(), t38_conv); g_strlcpy(p_t38_packet_conv->setup_method, p_t38_conv->setup_method, MAX_T38_SETUP_METHOD_SIZE); diff --git a/epan/dissectors/packet-t38.c b/epan/dissectors/packet-t38.c index ffbe6c466d..67a99e0fc0 100644 --- a/epan/dissectors/packet-t38.c +++ b/epan/dissectors/packet-t38.c @@ -1016,7 +1016,7 @@ init_t38_info_conv(packet_info *pinfo) p_t38_conv = NULL; /* Use existing packet info if available */ - p_t38_packet_conv = (t38_conv *)p_get_proto_data(wmem_file_scope(), pinfo, proto_t38, 0); + p_t38_packet_conv = (t38_conv *)p_get_proto_data(wmem_file_scope(), pinfo, proto_t38, 0); /* find the conversation used for Reassemble and Setup Info */ @@ -1033,38 +1033,38 @@ init_t38_info_conv(packet_info *pinfo) conversation_set_dissector(p_conv, t38_udp_handle); } - if (!p_t38_packet_conv) { - p_t38_conv = (t38_conv *)conversation_get_proto_data(p_conv, proto_t38); - - /* create the conversation if it doen't exist */ - if (!p_t38_conv) { - p_t38_conv = wmem_new(wmem_file_scope(), t38_conv); - p_t38_conv->setup_method[0] = '\0'; - p_t38_conv->setup_frame_number = 0; - - p_t38_conv->src_t38_info.reass_ID = 0; - p_t38_conv->src_t38_info.reass_start_seqnum = -1; - p_t38_conv->src_t38_info.reass_data_type = 0; - p_t38_conv->src_t38_info.last_seqnum = -1; - p_t38_conv->src_t38_info.packet_lost = 0; - p_t38_conv->src_t38_info.burst_lost = 0; - p_t38_conv->src_t38_info.time_first_t4_data = 0; - p_t38_conv->src_t38_info.additional_hdlc_data_field_counter = 0; - p_t38_conv->src_t38_info.seqnum_prev_data_field = -1; - - p_t38_conv->dst_t38_info.reass_ID = 0; - p_t38_conv->dst_t38_info.reass_start_seqnum = -1; - p_t38_conv->dst_t38_info.reass_data_type = 0; - p_t38_conv->dst_t38_info.last_seqnum = -1; - p_t38_conv->dst_t38_info.packet_lost = 0; - p_t38_conv->dst_t38_info.burst_lost = 0; - p_t38_conv->dst_t38_info.time_first_t4_data = 0; - p_t38_conv->dst_t38_info.additional_hdlc_data_field_counter = 0; - p_t38_conv->dst_t38_info.seqnum_prev_data_field = -1; - - conversation_add_proto_data(p_conv, proto_t38, p_t38_conv); - } + p_t38_conv = (t38_conv *)conversation_get_proto_data(p_conv, proto_t38); + + /* create the conversation if it doesn't exist */ + if (!p_t38_conv) { + p_t38_conv = wmem_new(wmem_file_scope(), t38_conv); + p_t38_conv->setup_method[0] = '\0'; + p_t38_conv->setup_frame_number = 0; + + p_t38_conv->src_t38_info.reass_ID = 0; + p_t38_conv->src_t38_info.reass_start_seqnum = -1; + p_t38_conv->src_t38_info.reass_data_type = 0; + p_t38_conv->src_t38_info.last_seqnum = -1; + p_t38_conv->src_t38_info.packet_lost = 0; + p_t38_conv->src_t38_info.burst_lost = 0; + p_t38_conv->src_t38_info.time_first_t4_data = 0; + p_t38_conv->src_t38_info.additional_hdlc_data_field_counter = 0; + p_t38_conv->src_t38_info.seqnum_prev_data_field = -1; + + p_t38_conv->dst_t38_info.reass_ID = 0; + p_t38_conv->dst_t38_info.reass_start_seqnum = -1; + p_t38_conv->dst_t38_info.reass_data_type = 0; + p_t38_conv->dst_t38_info.last_seqnum = -1; + p_t38_conv->dst_t38_info.packet_lost = 0; + p_t38_conv->dst_t38_info.burst_lost = 0; + p_t38_conv->dst_t38_info.time_first_t4_data = 0; + p_t38_conv->dst_t38_info.additional_hdlc_data_field_counter = 0; + p_t38_conv->dst_t38_info.seqnum_prev_data_field = -1; + + conversation_add_proto_data(p_conv, proto_t38, p_t38_conv); + } + if (!p_t38_packet_conv) { /* copy the t38 conversation info to the packet t38 conversation */ p_t38_packet_conv = wmem_new(wmem_file_scope(), t38_conv); g_strlcpy(p_t38_packet_conv->setup_method, p_t38_conv->setup_method, MAX_T38_SETUP_METHOD_SIZE); |