wireshark/plugins
Gerald Combs 0ab3f0586c Sync to recent changes in packet-rtp.h.
svn path=/trunk/; revision=13703
2005-03-10 21:41:24 +00:00
..
acn Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
agentx Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
artnet Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
asn1 Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
ciscosm Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
docsis Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
enttec Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
giop Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
gryphon Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
irda Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
lwres Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
mate remove remnants of the old plugin api from dissectors and plugins 2005-03-07 21:40:29 +00:00
megaco Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
mgcp Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
opsi Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
pcli Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
rdm Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
rlm Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
rtnet Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
rudp Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
stats_tree remove remnants of the old plugin api from dissectors and plugins 2005-03-07 21:40:29 +00:00
v5ua Call the "new-style init" routine for plugins a "register" routine, as 2005-03-07 02:44:41 +00:00
xml An optimization. 2005-03-10 17:13:47 +00:00
Makefile.am Add stats_tree and xml plugins to the build process 2005-03-06 16:49:16 +00:00
Makefile.nmake Add stats_tree and xml plugins to the build process 2005-03-06 16:49:16 +00:00
README.interface clarify text and describe libethereal.def 2005-01-12 21:16:53 +00:00
Xass-list add agentx plugin to the clean target and update the old plugin api 2005-02-25 23:08:53 +00:00
Xplugin_api.c add agentx plugin to the clean target and update the old plugin api 2005-02-25 23:08:53 +00:00
Xplugin_api.h add agentx plugin to the clean target and update the old plugin api 2005-02-25 23:08:53 +00:00
Xplugin_api_decls.h add agentx plugin to the clean target and update the old plugin api 2005-02-25 23:08:53 +00:00
Xplugin_table.h add agentx plugin to the clean target and update the old plugin api 2005-02-25 23:08:53 +00:00
plugin_api.c Set the svn:eol-style property on all text files to "native", so that 2004-07-18 00:24:25 +00:00
plugin_api.h Move the following files from /trunk to /trunk/epan: 2005-02-09 23:38:00 +00:00
plugin_api_decls.h Set the svn:eol-style property on all text files to "native", so that 2004-07-18 00:24:25 +00:00
plugin_api_defs.h Set the svn:eol-style property on all text files to "native", so that 2004-07-18 00:24:25 +00:00
plugin_api_list.c Sync to recent changes in packet-rtp.h. 2005-03-10 21:41:24 +00:00
plugin_gen.py Set the svn:eol-style property on all text files to "native", so that 2004-07-18 00:24:25 +00:00
plugin_table.h Set the svn:eol-style property on all text files to "native", so that 2004-07-18 00:24:25 +00:00

README.interface

README.interface

The following will export addresses from ethereal to the plugins. You
will have to do this, e.g. if you want to use a function of ethereal inside 
your plugin.
If you need it the other way round (e.g. use symbols of your plugin inside of 
ethereal's gtk part), you only have to edit libethereal.def and nothing more.
(XXX - is this libethereal.def description correct?)


When developing a plugin in the Win32 world, it is nessecary
to explicitly export addresses from the main process to the
plugin.  ethereal does have a mechanism for this, and it uses
the file 'plugin_api_list.c' to list declarations for everything
that needs to be exported.

The build process of ethereal needs this list in 5 different forms.

These are generated by a Python script and saved in the X* files
in this directory.

I do not have a real C parser in Python to read the input file...,
so I have used 'gcc -aux-info xyzzy ...' to clean up any formatting
preferences in the input file and create the file named 'xyzzy'
that contains a neatly formatted list of declarations.  This list
can be parsed with a regular expression to extract the required
info.

Use the following procedure to update the symbols:

edit the plugin_api_list.c file
nmake -f Makefile.nmake xyzzy
nmake -f Makefile.nmake

The 'xyzzy' makefile target is the only target that depends on gcc.
This can be done on a Unix machine or you can use cygwin gcc.