Hi,
I cleaned the patch, it is much smaller now.
Jean-Grégoire
On 7/10/07, Jaap Keuter <jaap.keuter@xxxxxxxxx
> wrote:Hi,
Should we make dissector_add() and friends fail silently when the
referenced dissector is not available? Currently the g_assert() is
killing, while a return would suffice.
This becomes more relevant since we can delete a dissector on the fly,
so we may run into this assert while not expected.
By the way Jean-Grégoire, could you clean up the patch on the Wiki a
bit? There seems to be residual development stuff in there, which may
cause conflicts.
Thanx,
Jaap
Jean-Grégoire Foulon wrote:
> On 7/9/07, *Guy Harris* <guy@xxxxxxxxxxxx <mailto:guy@xxxxxxxxxxxx>> wrote:
>
> Cruz, Petagay wrote:
> > hi, how can I reduce the size of the wireshark library produced
> in 'make
> > install'? I built without plugins. what is using all the space?
>
> Well, for starters, all the dissectors - plugins *aren't* part of the
> library, they're loaded at run time, but almost all the disssectors in
> Wireshark are built in, so they're part of the library.
>
> There's currently no easy way to select a subset of dissectors to
> include.
>
> The rest of it is the Wireshark "core" to support dissection, taps,
> etc.; that can't be removed.
>
>
>
> Hi,
> I just finished to write a patch for Tshark to disable a lot of
> dissectors and make it smaller. It is on the wiki :
>
http://wiki.wireshark.org/BuildingAndInstalling
> The choice of the removed dissectors is arbitrary, it suits my own use
> ans only works for Tshark, but it can be a good start if you want to get
> a smaller version of Wireshark.
>
> Here is an extract of the readme, correct me if I did any mistakes
>
> HOW TO REMOVE DISSECTORS
> ------------------------
>
> First, modify some files so the unwanted dissectors won't be compiled
> anymore:
> Makefile.in <http://Makefile.in>
> epan/Makefile.in
> epan/dissectors/Makefile.in
>
>
> You must choose the unwanted dissectors so that they were no
> dependencies problems. The dissectors you leave must not depend on the
> dissector you remove.
> In some cases, you will have to modify the source files to get rid of
> dependencies. For example, the telnet dissector depends on kerberos, it
> was patched so we could remove the kerberos dissector and keep the
> telnet one.
>
> tshark-tap-register.c and epan/dissectors/register.c are generated by
> Makefiles by parsing source files and adding specific functions they
> find in those files. They must be deleted to be regenerated with the
> correct list of functions. Before calling 'make' to build them, you have
> to remove the unused sourcefiles from their original directory otherwise
> tshark-tap-register.c and epan/dissectors/register.c will still have
> references to functions which won't be compiled.
>
> Once everything compiles, try to run Tshark.
> If you are lucky it will just work out of the box, but it's more likely
> Tshark will print "Aborted" and exit. It is an assert message which is
> printed when a dissector can't be added dynamically with the function
> dissector_add().
> It means you have to patch some dissectors to remove dynamic dependencies.
> All the dissector_add() calls that create problems must be commented. Be
> careful not to remove important ones.
> To know in which file the problem lays, use gdb and its backtrace command:
> gdb tshark
> >run
> >backtrace
> >q
> It Will give you the file and the line that cause the assert to fail.
>
> Once you removed all the calls that make asserts fail, Tshark should run
> properly.
>
> Regards,
> Jean-Gregoire
>
_______________________________________________
Wireshark-dev mailing list
Wireshark-dev@xxxxxxxxxxxxx
http://www.wireshark.org/mailman/listinfo/wireshark-dev