Ethereal-dev: Re: [Ethereal-dev] plugin packaging & distribution questions

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

From: Guy Harris <gharris@xxxxxxxxx>
Date: Wed, 05 Jan 2005 01:27:31 -0800
Daniel Biagini wrote:

1. Will the plugin self register with ethereal by just placing the .la and .so files in the proper pluggin directory,

You only need the .so file. (.la files are for shared libraries loaded at startup time, not for plugins loaded at run time - and I'm not sure they're needed for modern run-time linkers, such as those in ELF-based systems such as SunOS 5.x, many BSDs, and Linux, and in at least some other modern UN*Xes and in Windows; they might only be needed for SunOS 4.x's run-time linker.)

or do all the binaries need to be recompiled to include the plugin?

If that were the case, I wouldn't consider them to be plugins in any reasonable sense....

You don't need to recompile Ethereal to add a plugin. The plugin code scans the plugin directory for loadable modules (based on the file name - on most UN*Xes, it looks for ".so", although on some UN*Xes the suffix is different, and on Windows it's ".dll") and loads all the ones that can be opened as loadable modules and have the appropriate symbols ("version", "plugin_reg_handoff", and "plugin_init").

2. Will different versions of ethereal support the plugin, or will it have to be compiled for each version that I would like it to run on? (I am currently working w/ an old version, 0.8.20)

There's no guarantee that a plugin built with one version of Ethereal will work with another version; plugins built with 0.8.20 almost certainly won't work with modern versions.