Ethereal-dev: [Ethereal-dev] Core dump in current gsm-sms-ud dissector
Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.
From: Biot Olivier <Olivier.Biot@xxxxxxxxxxx>
Date: Tue, 27 Jan 2004 14:08:26 +0100
Hi list, Current "gsm-sms-ud" dissector causes a crash on a reference capture I have (funny it didn't crash yesterday when I committed a SMPP patch). I think the gsm-sms-ud protocol registration is the cause (handle = 0x0). As I don't have the time right now, could someone else have a look? Regards, Olivier GNU gdb 2003-09-20-cvs (cygwin-special) Copyright 2003 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i686-pc-cygwin"... (gdb) r Starting program: /home/Administrator/Ethereal/cvs/ethereal-pcre/ethereal.exe -r /home/be322008/Desktop/Snoops/BigCap.snoop Program received signal SIGSEGV, Segmentation fault. 0x00a8e5af in call_dissector_work (handle=0x0, tvb=0x10defe60, pinfo=0x10e05c18, tree=0x10425b48) at packet.c:403 403 if (handle->protocol != NULL && (gdb) bt full #0 0x00a8e5af in call_dissector_work (handle=0x0, tvb=0x10defe60, pinfo=0x10e05c18, tree=0x10425b48) at packet.c:403 saved_proto = 0x610e2707 "\213M\b)Y\b\001\031\211û\001]ð)ß\213U\f\213B\b)Ø\205À\211B\b\017\204gÿÿÿ\21 3U\b\205ÿ\017·B\fu\234ë\212\213\032\213B\020)Ã\211\004$\215\f\037\211Mä\211L $\004èÑ)÷ÿ\205À\017\204=ÿÿÿ\213U\b\213Mä\211B\020\001Ø\211û\211\002\211J\024 \211z\béxÿÿÿ\213U\b\213\002;B\020v\0049ßwS\213U\b\213Z\0249ßr'\211\\$\b\213M ð\211L$\004\213B \211\004$ÿR(\205À\211Ã\017\217jÿÿÿéèþÿÿ\215t&" saved_can_desegment = 50824 ret = 10357596 save_writable = 2284280 save_dl_src = {type = 283049568, len = 0, data = 0x15934d4 "\211X\004\211ð\215eø[^]Ã\211ØëõU\211åèÈ\006"} save_dl_dst = {type = 269763144, len = 4096, data = 0x9e0aea "[Illegal %s]"} save_net_src = {type = 282274976, len = 6, data = 0x21 <Address 0x21 out of bounds>} save_net_dst = {type = 128, len = 189, data = 0x10defe60 ""} save_src = {type = AT_NONE, len = 1, data = 0x9e08fd "Frame: %u, payload: %u-%u"} save_dst = {type = 272766776, len = 4349, data = 0x10defe60 ""} saved_proto = 0x610e2707 "\213M\b)Y\b\001\031\211û\001]ð)ß\213U\f\213B\b)Ø\205À\211B\b\017\204gÿÿÿ\21 3U\b\205ÿ\017·B\fu\234ë\212\213\032\213B\020)Ã\211\004$\215\f\037\211Mä\211L $\004èÑ)÷ÿ\205À\017\204=ÿÿÿ\213U\b\213Mä\211B\020\001Ø\211û\211\002\211J\024 \211z\béxÿÿÿ\213U\b\213\002;B\020v\0049ßwS\213U\b\213Z\0249ßr'\211\\$\b\213M ð\211L$\004\213B \211\004$ÿR(\205À\211Ã\017\217jÿÿÿéèþÿÿ\215t&" saved_can_desegment = 50824 ret = 10357596 save_writable = 2284280 save_dl_src = {type = 283049568, len = 0, data = 0x15934d4 "\211X\004\211ð\215eø[^]Ã\211ØëõU\211åèÈ\006"} save_dl_dst = {type = 269763144, len = 4096, data = 0x9e0aea "[Illegal %s]"} save_net_src = {type = 282274976, len = 6, data = 0x21 <Address 0x21 out of bounds>} save_net_dst = {type = 128, len = 189, data = 0x10defe60 ""} save_src = {type = AT_NONE, len = 1, data = 0x9e08fd "Frame: %u, payload: %u-%u"} save_dst = {type = 272766776, len = 4349, data = 0x10defe60 ""} #1 0x00a903bf in call_dissector (handle=0x0, tvb=0x10defe60, pinfo=0x10e05c18, tree=0x10425b48) at packet.c:1596 handle = 0x0 tvb = (tvbuff_t *) 0x10defe60 pinfo = (packet_info *) 0x10e05c18 tree = (proto_tree *) 0x10425b48 ret = 0 #2 0x0061e536 in parse_gsm_sms_ud_message (sm_tree=0x10ce51f0, tvb=0x10defe2c, pinfo=0x10e05c18, top_tree=0x10425b48) at packet-gsm_sms_ud.c:385 sm_tvb = (tvbuff_t *) 0x10defe60 subtree = (proto_item *) 0x10427750 tree = (proto_item *) 0x104279a8 udh_len = 11 '\v' udh = 96 '`' len = 3 '\003' sm_len = 63 sm_data_len = 283049568 i = 283139096 is_fragmented = 1 fd_sm = (fragment_data *) 0x0 sm_id = 0 frags = 2 frag = 2 save_fragmented = 0 try_gsm_sms_ud_reassemble = 1 reassembled = 1 reassembled_in = 12789 p_src = 49154 p_dst = 49999 ports_available = 1 #3 0x0061ebc8 in dissect_gsm_sms_ud (tvb=0x10defe2c, pinfo=0x10e05c18, tree=0x10425b48) at packet-gsm_sms_ud.c:423 tvb = (tvbuff_t *) 0x10425b48 pinfo = (packet_info *) 0x0 tree = (proto_tree *) 0x10defe60 ti = (proto_item *) 0x0 subtree = (proto_tree *) 0x0 #4 0x00a8e571 in call_dissector_through_handle (handle=0x10088638, tvb=0x10defe2c, pinfo=0x10e05c18, tree=0x10425b48) at packet.c:363 handle = 0x10defe60 tvb = (tvbuff_t *) 0x10defe2c pinfo = (packet_info *) 0x10425b48 saved_proto = 0x61f292 "GSM SMS UD" ret = 0 #5 0x00a8e8f0 in call_dissector_work (handle=0x10088638, tvb=0x10defe2c, pinfo=0x10e05c18, tree=0x10425b48) at packet.c:513 saved_proto = 0x90c9a4 "SMPP" saved_can_desegment = 1 ret = 283049540 save_writable = 0 save_dl_src = {type = 283049464, len = 283049516, data = 0x22ca98 "ÈÊ\""} save_dl_dst = {type = AT_NONE, len = 283049516, data = 0x10defe2c "\001"} save_net_src = {type = 2280008, len = 22623468, data = 0x22ca68 "\230Ê\""} save_net_dst = {type = 283049464, len = 74, data = 0x22ca68 "\230Ê\""} save_src = {type = 283049544, len = 2280036, data = 0x1 <Address 0x1 out of bounds>} save_dst = {type = 283049464, len = 39, data = 0x4a <Address 0x4a out of bounds>} saved_proto = 0x90c9a4 "SMPP" saved_can_desegment = 1 ret = 283049540 save_writable = 0 save_dl_src = {type = 283049464, len = 283049516, data = 0x22ca98 "ÈÊ\""} save_dl_dst = {type = AT_NONE, len = 283049516, data = 0x10defe2c "\001"} save_net_src = {type = 2280008, len = 22623468, data = 0x22ca68 "\230Ê\""} save_net_dst = {type = 283049464, len = 74, data = 0x22ca68 "\230Ê\""} save_src = {type = 283049544, len = 2280036, data = 0x1 <Address 0x1 out of bounds>} save_dst = {type = 283049464, len = 39, data = 0x4a <Address 0x4a out of bounds>} #6 0x00a903bf in call_dissector (handle=0x10088638, tvb=0x10defe2c, pinfo=0x10e05c18, tree=0x10425b48) at packet.c:1596 handle = 0x0 tvb = (tvbuff_t *) 0x10defe2c pinfo = (packet_info *) 0x10e05c18 tree = (proto_tree *) 0x10425b48 ret = 0 #7 0x0090b987 in submit_sm (tree=0x10ce50a0, tvb=0x10defdf8, pinfo=0x10e05c18, top_tree=0x10425b48) at packet-smpp.c:1404 tvb = (tvbuff_t *) 0x10e05c18 top_tree = (proto_tree *) 0x0 tvb_msg = (tvbuff_t *) 0x0 offset = 39 flag = 0 '\0' udhi = 64 '@' length = 74 'J' src_str = 0x10e1f610 "32477200179" dst_str = 0x10e1f630 "32476471861" save_src = {type = AT_IPv4, len = 4, data = 0x10e1f650 "¬\020\v}"} save_dst = {type = AT_IPv4, len = 4, data = 0x10e1f660 "¬\021\003\006"} #8 0x0090cccc in dissect_smpp_pdu (tvb=0x10defd90, pinfo=0x10e05c18, tree=0x10425b48) at packet-smpp.c:1918 tmp_tvb = (tvbuff_t *) 0x0 pdu_tvb = (tvbuff_t *) 0x10defe2c tvb = (tvbuff_t *) 0x10defe2c command_length = 129 command_id = 4 command_status = 0 sequence_number = 2 command_str = (gchar *) 0x9071b2 "Submit_sm" command_status_str = (gchar *) 0x0 ti = (proto_item *) 0x10ce50a0 smpp_tree = (proto_tree *) 0x10ce50a0 #9 0x0094810a in tcp_dissect_pdus (tvb=0x10defcf4, pinfo=0x10e05c18, tree=0x10425b48, proto_desegment=0, fixed_len=16, get_pdu_len=0x90c830 <get_smpp_pdu_len>, dissect_pdu=0x90c9d0 <dissect_smpp_pdu>) at packet-tcp.c:1989 except_sn = {except_down = 0x22ceb0, except_type = XCEPT_CATCHER, except_info = {except_catcher = 0x22cbb0, except_cleanup = 0x22cbb0}} except_ch = {except_id = 0x947f48, except_size = 1, except_obj = { except_id = {except_group = 4, except_code = 283049204}, except_message = 0x10defcf4 "\001", except_dyndata = 0x0}, except_jmp = { 2280392, 129, 2280608, 2280608, 0, 0, 2280664, 2280336, 9732201, 3670051, 2293760, 129, 2280504, 11119404, 272135670, 129, 32, 2280484, 2280488, 0, -1, 2280492, 539151408, 0, 0, 269553448, 269543640, 2280685, 2280552, 9103820, 283049204, 0, -1, 283049204, 2280672, 2280620, 2280584, 11112344, 283049204, 8, 4, 2280620, 2280624, 2280672, 2280664, 283049204, 269543736, 2, 2280632, 11116599, 283049204, 8}} exc = (except_t *) 0x1 catch_spec = {{except_group = 1, except_code = 0}} offset = 0 offset_before = 0 length_remaining = 129 plen = 129 length = 0 next_tvb = (tvbuff_t *) 0x10defd90 #10 0x0090c91f in dissect_smpp (tvb=0x10defcf4, pinfo=0x10e05c18, tree=0x10425b48) at packet-smpp.c:1681 tvb = (tvbuff_t *) 0x10defcf4 offset = 269543736 #11 0x0090c81f in dissect_smpp_heur (tvb=0x10defcf4, pinfo=0x10e05c18, tree=0x10425b48) at packet-smpp.c:1656 tvb = (tvbuff_t *) 0x10defcf4 pinfo = (packet_info *) 0x0 tree = (proto_tree *) 0x0 command_id = 0 command_status = 0 command_length = 0 #12 0x00a8fd96 in dissector_try_heuristic (sub_dissectors=0x100f1250, tvb=0x10defcf4, pinfo=0x10e05c18, tree=0x10425b48) at packet.c:1449 status = 0 saved_proto = 0x947827 "TCP" entry = (GSList *) 0x1010e938 dtbl_entry = (heur_dtbl_entry_t *) 0x10defcf4 saved_can_desegment = 2 status = 0 saved_proto = 0x947827 "TCP" #13 0x00948b50 in decode_tcp_ports (tvb=0x10defcc0, offset=20, pinfo=0x10e05c18, tree=0x10425b48, src_port=55405, dst_port=8100) at packet-tcp.c:2308 tvb = (tvbuff_t *) 0x0 offset = 0 pinfo = (packet_info *) 0x10e05c18 dst_port = 55405 next_tvb = (tvbuff_t *) 0x10defcf4 low_port = 0 high_port = 55405 #14 0x00948cde in process_tcp_payload (tvb=0x10defcc0, offset=20, pinfo=0x10e05c18, tree=0x10425b48, tcp_tree=0x104259f8, src_port=55405, dst_port=8100, nxtseq=0, is_tcp_segment=0) at packet-tcp.c:2333 except_sn = {except_down = 0x22d630, except_type = XCEPT_CATCHER, except_info = {except_catcher = 0x22cdc0, except_cleanup = 0x22cdc0}} except_ch = {except_id = 0x948c28, except_size = 1, except_obj = { except_id = {except_group = 1907106356, except_code = 0}, except_message = 0x103f8400 "t1³", except_dyndata = 0x0}, except_jmp = { 2280920, 2281424, 2281136, 2281136, 0, 283139096, 2281176, 2280864, 9735279, 3670051, 2293760, 12537496, 2281112, 1628311491, 2290256, 2280992, 9732433, 2281188, 269763222, 14451, 4017, 283049152, 272169624, 283049152, 2281080, 11089326, 272169656, 0, 1, 1627983033, 2281104, 0, 2281096, 11158956, 272168256, 9, 2281112, 11158956, 281926832, 283140328, 2281144, 1627738564, 272168224, 283049152, 2281160, 11089326, 272168256, 269763144, 1628240464, 4033, 4096, 12537496}} exc = (except_t *) 0x0 catch_spec = {{except_group = 1, except_code = 0}} #15 0x00947f12 in desegment_tcp (tvb=0x10e05c18, pinfo=0x10425b48, offset=272783864, seq=55405, nxtseq=8100, sport=0, dport=0, tree=0x15a6, tcp_tree=0x10defcc0) at packet-tcp.c:1559 pinfo = (packet_info *) 0x10e05c18 tcpinfo = (struct tcpinfo *) 0x0 ipfd_head = (fragment_data *) 0xbf4e98 old_tsk = {src = 0x22cf38, dst = 0x0, seq = 2283056, sport = 1, dport = 0, start_seq = 2280896, tot_len = 2281176, first_frame = 22525788} tsk = (tcp_segment_key *) 0x0 must_desegment = 4096 called_dissector = 4033 deseg_offset = 1628240464 deseg_seq = 269763144 nbytes = 0 #16 0x00000014 in ?? () No symbol table info available. #17 0x10e05c18 in ?? () No symbol table info available. #18 0x10425b48 in ?? () No symbol table info available. #19 0x104259f8 in ?? () No symbol table info available. #20 0x0000d86d in ?? () No symbol table info available. #21 0x00001fa4 in ?? () No symbol table info available. (gdb) print *(pinfo->fd) $1 = {next = 0x0, prev = 0x10ddd938, pfd = 0x0, num = 12789, pkt_len = 183, cap_len = 183, cul_bytes = 5659137, rel_secs = 12263991, rel_usecs = 304677, abs_secs = 1050582763, abs_usecs = 887462, del_secs = 0, del_usecs = 906, file_off = 5982796, lnk_t = 1, flags = {passed_dfilter = 0, encoding = 0, visited = 0, marked = 0, ref_time = 0}, color_filter = 0x0} (gdb) q
- Follow-Ups:
- Re: [Ethereal-dev] Core dump in current gsm-sms-ud dissector
- From: Chris Wilson
- Re: [Ethereal-dev] Core dump in current gsm-sms-ud dissector
- Prev by Date: [Ethereal-dev] Patch for WTAP_ENCAP_USER* values
- Next by Date: [Ethereal-dev] SIP captures
- Previous by thread: [Ethereal-dev] Patch for WTAP_ENCAP_USER* values
- Next by thread: Re: [Ethereal-dev] Core dump in current gsm-sms-ud dissector
- Index(es):