Ethereal-dev: [Ethereal-dev] NFS crash, more info

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

Date: Mon, 18 Nov 2002 09:45:50 +0100
Hi,

Some more information (hope Notes doesnt munge it around too much):

Call stack for 0.9.7

MSVCRT! 78011b09()
GLIB-1.3! 00231316()
GLIB-1.3! 00231ef5()
proto_tree_set_bytes(field_info * 0x021a26e8, const unsigned char * 
0x021a7c78, int 1328) line 907 + 17 bytes
proto_tree_add_bytes(_GNode * 0x0218a0cc, int 6612, tvbuff * 0x010e20d4, 
int 132, int 1328, const unsigned char * 0x021a7c78) line 860 + 17 bytes
proto_tree_add_bytes_format(_GNode * 0x0218a0cc, int 6612, tvbuff * 
0x010e20d4, int 132, int 1328, const unsigned char * 0x021a7c78, const 
char * 0x008250a8) line 889 + 29 bytes
dissect_rpc_opaque_data(tvbuff * 0x010e20d4, int 132, _GNode * 0x021a1a08, 
int 6612, int 0, char * * 0x00000000) line 596 + 38 bytes
dissect_rpc_data(tvbuff * 0x010e20d4, _GNode * 0x021a1a08, int 6612, int 
128) line 653 + 25 bytes
dissect_nfsdata(tvbuff * 0x010e20d4, int 128, _GNode * 0x021a1a08, int 
6612) line 2116 + 21 bytes
dissect_nfs3_read_reply(tvbuff * 0x010e20d4, int 128, _packet_info * 
0x010e9120, _GNode * 0x021a1a08) line 3688 + 24 bytes
call_dissect_function(tvbuff * 0x010e20d4, _packet_info * 0x010e9120, 
_GNode * 0x021a1a08, int 28, int (tvbuff *, int, _packet_info *, _GNode 
*)* 0x00517404 dissect_nfs3_read_reply(tvbuff *, int, _packet_info *, 
_GNode *), const char * 0x007f565c) line 1082 + 19 bytes
dissect_rpc_message(tvbuff * 0x010e20d4, _packet_info * 0x010e9120, _GNode 
* 0x010e1a00, tvbuff * 0x010e20d4, _fragment_data * 0x00000000, int 1, 
unsigned int 2147500160) line 2116 + 29 bytes
call_message_dissector(tvbuff * 0x010e20a0, tvbuff * 0x010e20d4, 
_packet_info * 0x010e9120, _GNode * 0x010e1a00, tvbuff * 0x010e20d4, int 
(tvbuff *, _packet_info *, _GNode *, tvbuff *, _fragment_data *, int, 
unsigned int)* 0x0054ab00 dissect_rpc_message(tvbuff *, _packet_info *, 
_GNode *, tvbuff *, _fragment_data *, int, unsigned int), _fragment_data * 
0x00000000, ...) line 2362 + 
dissect_rpc_fragment(tvbuff * 0x010e20a0, int 0, _packet_info * 
0x010e9120, _GNode * 0x010e1a00, int (tvbuff *, _packet_info *, _GNode *, 
tvbuff *, _fragment_data *, int, unsigned int)* 0x0054ab00 
dissect_rpc_message(tvbuff *, _packet_info *, _GNode *, tvbuff *, 
_fragment_data *, int, unsigned int), int 0, int 7474, int 1188, int 0) 
line 2487 + 37 bytes
dissect_rpc_tcp_common(tvbuff * 0x010e20a0, _packet_info * 0x010e9120, 
_GNode * 0x010e1a00, int 0) line 2750 + 50 bytes
dissect_rpc_tcp(tvbuff * 0x010e20a0, _packet_info * 0x010e9120, _GNode * 
0x010e1a00) line 2792 + 19 bytes
call_dissector(dissector_handle * 0x0100d7f0, tvbuff * 0x010e20a0, 
_packet_info * 0x010e9120, _GNode * 0x010e1a00) line 1094 + 18 bytes
try_conversation_dissector(_address * 0x010e9164, _address * 0x010e9170, 
int 2, unsigned int 2049, unsigned int 692, tvbuff * 0x010e20a0, 
_packet_info * 0x010e9120, _GNode * 0x010e1a00) line 932 + 24 bytes
decode_tcp_ports(tvbuff * 0x010e206c, int 20, _packet_info * 0x010e9120, 
_GNode * 0x010e1a00, int 2049, int 692) line 1590 + 41 bytes
dissect_tcp(tvbuff * 0x010e206c, _packet_info * 0x010e9120, _GNode * 
0x010e1a00) line 1978 + 46 bytes
dissector_try_port(dissector_table * 0x00b7eb58, unsigned int 6, tvbuff * 
0x010e206c, _packet_info * 0x010e9120, _GNode * 0x010e1a00) line 574 + 18 
bytes
dissect_ip(tvbuff * 0x010e2038, _packet_info * 0x010e9120, _GNode * 
0x010e1a00) line 1055 + 34 bytes
dissector_try_port(dissector_table * 0x00b7b440, unsigned int 2048, tvbuff 
* 0x010e2038, _packet_info * 0x010e9120, _GNode * 0x010e1a00) line 574 + 
18 bytes
ethertype(unsigned short 2048, tvbuff * 0x010e2004, int 14, _packet_info * 
0x010e9120, _GNode * 0x010e1a00, _GNode * 0x021a0bf8, int 2110, int 2112) 
line 156 + 33 bytes
dissect_eth(tvbuff * 0x010e2004, _packet_info * 0x010e9120, _GNode * 
0x010e1a00) line 238 + 41 bytes
dissector_try_port(dissector_table * 0x00ff68e0, unsigned int 1, tvbuff * 
0x010e2004, _packet_info * 0x010e9120, _GNode * 0x010e1a00) line 574 + 18 
bytes
dissect_frame(tvbuff * 0x010e2004, _packet_info * 0x010e9120, _GNode * 
0x010e1a00) line 174 + 34 bytes
call_dissector(dissector_handle * 0x00ff6990, tvbuff * 0x010e2004, 
_packet_info * 0x010e9120, _GNode * 0x010e1a00) line 1094 + 18 bytes
dissect_packet(_epan_dissect_t * 0x010e9118, wtap_pseudo_header * 
0x0212aedc, const unsigned char * 0x02192cb0, _frame_data * 0x021564c0, 
_column_info * 0x00000000) line 299 + 32 bytes


Debug view (--> shows line where it all starts to go wrong according to 
the call stack above)

        if (string_tree) {
                if (string_data) {
                        proto_tree_add_string_format(string_tree,
                            hfindex, tvb, offset, string_length_copy,
                                string_buffer_print,
                                "contents: %s", string_buffer_print);
                } else {
                        proto_tree_add_bytes_format(string_tree,
                            hfindex, tvb, offset, string_length_copy,
                                string_buffer_print,
-->                             "contents: %s", string_buffer_print);
                }


Local variables are:

-       tvb     0x010e20d4
        type    1
        initialized     1
        usage_count     1
+       ds_tvb  0x010e2004
+       used_in 0x00000000
+       tvbuffs {...}
+       real_data       0x02192ce6 "€"
        length  1460
        reported_length 1460
        raw_offset      54
        free_cb 0x00000000
        offset  132
-       tree    0x021a1a08
        data    0x021a1470
+       next    0x00000000
+       prev    0x021a1d8c
+       parent  0x010e1a00
+       children        0x021a1954
        hfindex 6612
        string_data     0
+       string_buffer_ret       0x00000000
        fill_truncated  2
        exception       2
        string_length_captured  1328
        string_length_copy      1328
-       string_item     0x0218a0cc
        data    0x021a15c0
+       next    0x00000000
-       prev    0x02189f50
        data    0x021a15b8
+       next    0x0218a0cc
+       prev    0x021a1fd0
+       parent  0x021a1a08
+       children        0x00000000
+       parent  0x021a1a08
+       children        0x021a1d64
-       string_tree     0x0218a0cc
        data    0x021a15c0
+       next    0x00000000
+       prev    0x02189f50
+       parent  0x021a1a08
+       children        0x021a1d64
+       string_buffer   0x0219f970 
                                "%PDF-1.2
                                %âãÏÓ
                                1 0 obj
                                <<
                                /Producer (Acrobat Distiller Command 3.01 
for Solaris 2.3 and later \(SPARC\))
                                /Creator (FrameMaker 5.5.6.)
                                /ModDate (D:20010406104846)
                                /CreationDate (D:19951113120231)
                                >>
                                endobj
                                3 0 obj
                                <<
                                /D [2 0 R /XYZ null null "
-       string_buffer_print     0x021a7c78 
                                "<DATA><TRUNCATED>"
                                60 '<'
        string_length           16384
        fill_length_packet      1235120
        string_length_packet    1328
        fill_length_captured    1234712
        string_length_full      16384
        fill_length     0
        old_offset      128
        fill_length_copy        0

If anyone needs anymore information, I'll leave it running until I need 
Visual Studio for real ;-)

Oh, just for the sake of it, here's the pinfo pointer from 
dissect_nfs3_read_reply()

-       pinfo                   0x010e9120
+       current_proto           0x007f565c "NFS"
+       cinfo                   0x00000000
-       fd                      0x021564c0
+       next                    0x00000000
+       prev                    0x02156484
+       pfd                     0x00000000
        num                     273
        pkt_len                 1514
        cap_len         1514
        rel_secs                0
        rel_usecs               0
        abs_secs                1037269406
        abs_usecs               384003
        del_secs                0
        del_usecs               0
        file_off                        91953
        lnk_t                   1
+       flags   {...}
+       pseudo_header   0x0212aedc
+       data_src                0x010c0da8
+       dl_src  {...}
+       dl_dst  {...}
+       net_src {...}
+       net_dst {...}
+       src     {...}
+       dst     {...}
        ethertype               2048
        ipproto                 6
        ipxptype                0
        fragmented              1
        in_error_pkt            0
        ptype                   2
        srcport                 2049
        destport                692
        match_port              6
        can_desegment   0
        desegment_offset        1869376613
        desegment_len           1667330093
        iplen                   1500
        iphdrlen                5
        p2p_dir                 -1
        private_data            0x02187e58

-- 
Andreas Sikkema
andreas.sikkema@xxxxxxxxxxx
"While you're waiting, read the free novel we sent you. 
 It's a Spanish story about a guy named `Manual'" - Dilbert