Ethereal-dev: [ethereal-dev] LDAP bug in ethereal ?

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

From: Michal Stekrt <mstekrt@xxxxxx>
Date: Wed, 19 Jan 2000 00:10:33 +0100 (CET)
Hi ethereal developers,
Recently I started to use Ethereal for diagnose problems on network I
administer, but I found some bug in this software. In fact I'm not
sure wheather this bug is in Ethereal itself or somewhere else (gtk?)

Now, what happened:
I started to look into one of LDAP packet.
I have it in file "_bug" (see attachment).
The tree looks like this:

Tree looks like this:
------------------- cut ------------------------
...
[-] Lightweight Directory Access Protocol
   Request Line: 09c4CLID_IP
   Request Line:
   Request Line:
------------------- cut ------------------------
2nd and 3rd request lines are realy empty. 

And this is contents of LDAP packet I can see in bottom frame:
------------------- cut -------------------------------------------------
0000  08 00 20 b9 5d c9 08 00  20 b6 62 6e 08 00 45 00   ....]... ..bn..E. 
0010  00 63 b4 af 40 00 ff 06  1e b7 ac 14 68 02 ac 14   .c..@... ....h... 
0020  e8 02 86 2c 01 85 11 74  28 f0 13 d3 46 93 50 18   ...,...t (...F.P. 
0030  22 38 6f ff 00 00 30 39  02 01 03 63 34 04 07 43   "8o...09 ...c4..C 
0040  4c 49 44 5f 49 50 0a 01  00 0a 01 00 02 01 00 02   LID_IP.. ........ 
0050  01 0f 01 01 00 a3 18 04  08 6c 6f 67 69 6e 5f 69   ........ .login_i 
0060  70 04 0c 31 37 32 2e 32  30 2e 32 34 2e 36 33 30   p..172.2 0.24.630 
0070  00                                                 .                 
------------------- cut -------------------------------------------------

I'm not very familiar with LDAP packets, but it seems to not be OK.
I think decoding from packet itself to tree is incorrect.

Then:
First expand the LDAP subtree. 
Second select lets say one of the request line.
In this time Ethereal crashes.

(sometime crashes sometime not. On my second computer crashes
almost everytime)
In addition, 

If I try to run it within gdb it looks like this:

(gdb) run
Starting program: /home/mstekrt/ethereal/./ethereal

Program received signal SIGSEGV, Segmentation fault.
0x40142f7c in gtk_text_forward_delete () from /usr/lib/libgtk-1.2.so.0

Imediately after, it blocks my mouse. I cannot select
anything and cursor has arrow shape. Cannot select window frames nor
taskbar.  In this time Ethereal window is stil existing on desktop, 
but doesn't redraw itself.

(gdb) backtrace
#0  0x40142f7c in gtk_text_forward_delete () from /usr/lib/libgtk-1.2.so.0
#1  0x40192ed8 in GTK_TYPE_GDK_COLOR () from /usr/lib/libgtk-1.2.so.0
#2  0x10fc8 in ?? ()
#3  0x0 in ?? ()
(gdb) quit
The program is running.  Exit anyway? (y or n) y
[mstekrt@e210 ethereal]$ 

Then mouse works again.   

These are my version:
uname -sr
Linux 2.2.12-20

gtk-config --version
1.2.6

./ethereal -v
ethereal 0.8.1, with GTK+ 1.2.6, with libpcap 0.4, with libz 1.1.3,
with UCD SNMP 4.0.1          

KDE 1.1.2

Thanks for Ethereal
Best Regards
Michal.Stekrt@xxxxxxxxxxxxxx

Attachment: _bug
Description: Binary data