ANNOUNCEMENT: Live Wireshark University & Allegro Packets online APAC Wireshark Training Session
July 17th, 2024 | 10:00am-11:55am SGT (UTC+8) | Online

Ethereal-dev: Re: ASN1.DLL linked against GTK2 forces crash. was: Re: [Ethereal-dev] New pre-

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

From: Matthijs Melchior <mmelchior@xxxxxxxxx>
Date: Thu, 26 Aug 2004 22:39:50 +0200
Hi,
I need to explain some history here, which may result in hints needed
to resolve this problem.

Lars Roland wrote:

frogzoo@xxxxxxxxxxxxxx schrieb:
By all means Lars, yes please to the new pre-release

Yes problems with GTK+ 1.3, GLib 2.4.5 on XP Pro 2002 (rel 2600)
(libz 1.2.1, lipcre 4.4, WinPcap 3.0alpha)
GTK-Wimp enabled causes ethereal to crash on startup

Also, could the "help" -> "about" box please display the GTK-Wimp version no. - then we'll be able to tell you which version we're running :-)

I was wondering how it could be that GTK 1.3 crashes with GTK-Wimp. GTK-Wimp is an extension for GTK2. GTK1 doesn't even load it!! So I installed GTK1 version with GTK-Wimp and at least this time, I can reproduce the crash.
The debugger shows that it crashes when loading asn1.dll.
I am not surprised that we finally have a conflict with it as it is linked against GTK2!
Once upon a time, GTK2 was used in the plugin. It has been removed
[placed within "#ifdef DISSECTOR_WITH_GUI" conditionals, which are
normally false] as one of the first things done after being accepted
in the ethereal tree. If that was incomplete, I need to correct that.

The crash already happens in libglib-2.0-0.dll. I believe that most people reporting crashes with ethereal crashing in module libglib-2.0-0.dll have this conflict.

Yes, glib is used extensively, for managing lists, trees, arrays and
printing error messages. This can only be removed by having private
implementations of these routines...

Or, if I know the real problem, I can change the code to avoid it...

There are a lot of workarounds, but there is only one solution:
Remove GTK depedency from the asn1 plugin.
I think there is no GTK dependency any more,
only a glib [maybe version 2] dependency.

Short term workaround:
Remove asn1.dll in the plugins directory.
When you start Ethereal after that, you will probably get a DOS box with some warnings about preferences of the asn1 dissector. Just go to Edit->Prefences and click on the save button and the DOS-box won't appear the next time.

Workaround for next release:
Installer shouldn't install asn1.dll with GTK1 version of ethereal.
Would it be possible to require libglib2.0 together with GTK1 in a
following release...?

However, it shouldn't be possible to select GTK-Wimp together with GTK1. GTK1 doesn't use it.

I will prepare patches for the nsis installer.

Regards,
Lars


--
Regards, ---------------------------------------------------------------- -o)
Matthijs Melchior                                       Maarssen  /\\
mmelchior@xxxxxxxxx                                  Netherlands _\_v
---------------------------------------------------------------- ----