Wireshark-dev: Re: [Wireshark-dev] wiretap plugin
From: Jaap Keuter <jaap.keuter@xxxxxxxxx>
Date: Fri, 12 May 2017 23:18:26 +0200
Hi List, Thanks to Anders for the additional information provided (off list). There are clearly problems in make-dissector-reg.py with respect to handling wiretap plugins. I've nailed one, but found some others which I will have to address later on. In short make-dissector-reg.py has to handle epan/dissectors/*.c registrations and various plugin type combinations. Plugin types currently used are dissector, (lib)wiretap and tap. Note that these types can be combined in a single plugin. I'm not sure the current architecture of make-dissector-reg.py supports this easily. I would consider breaking out make-plugin-reg.py, which deals explicitly with plugins, unless there's strong opposition against it. Oh, and this only works with CMake so far. Autotool build is broken as well. Thanks, Jaap On 12-05-17 08:00, Jaap Keuter wrote: > Hi Anders, > > What symbol do you add your wiretap plugin path to? > I added mine to CMakeLists.txt, like so: > > if(ENABLE_PLUGINS) > ... > set(PLUGIN_SRC_DIRS > ... > plugins/unistim > plugins/usbdump > ... > > > But that results in this build failure: > > Scanning dependencies of target unistim > [ 97%] Building C object plugins/unistim/CMakeFiles/unistim.dir/plugin.c.o > [ 97%] Building C object plugins/unistim/CMakeFiles/unistim.dir/packet-unistim.c.o > [ 97%] Linking C shared module ../../run/plugins/unistim.so > [ 97%] Built target unistim > [ 97%] Generating plugin.c > No protocol registrations found > plugins/usbdump/CMakeFiles/usbdump.dir/build.make:62: recipe for target > 'plugins/usbdump/plugin.c' failed > make[2]: *** [plugins/usbdump/plugin.c] Error 1 > CMakeFiles/Makefile2:12269: recipe for target > 'plugins/usbdump/CMakeFiles/usbdump.dir/all' failed > make[1]: *** [plugins/usbdump/CMakeFiles/usbdump.dir/all] Error 2 > Makefile:149: recipe for target 'all' failed > make: *** [all] Error 2 > > > While my plugin code has this registration function: > > void wtap_register_usbdump(void) > { > ... > } > > > Thanks, > Jaap > > > On 10-05-17 12:03, Jaap Keuter wrote: >> Hi Anders, >> >> That is good to know. I’ll setup a cmake build as well (on Debian GNU/Linux). >> >> Thanks, >> Jaap >> >> >>> On 10 May 2017, at 10:53, Anders Broman <anders.broman@xxxxxxxxxxxx> wrote: >>> >>> Hi, >>> Plugin.c is generated but with make it does not generate >>> >>> WS_DLL_PUBLIC_DEF void >>> register_wtap_module(void) >>> { >>> >>> It looks like, it works with cmake...(at least on Wimdows) >>> Regards >>> Anders >>> >>> >>> -----Original Message----- >>> From: Wireshark-dev [mailto:wireshark-dev-bounces@xxxxxxxxxxxxx] On Behalf Of Jaap Keuter >>> Sent: den 9 maj 2017 17:14 >>> To: Developer support list for Wireshark <wireshark-dev@xxxxxxxxxxxxx> >>> Subject: Re: [Wireshark-dev] wiretap plugin >>> >>> Hi Anders, >>> >>> Thanks for having a look. This all seems quite in order. >>> Was this carried over from an older build, ie. is that plugin.c file recent? Does it get regenerated when moved out of the way? >>> I’ll try testing this further tonight. >>> >>> Thanks, >>> Jaap >>> >>> >>>> On 9 May 2017, at 16:46, Anders Broman <anders.broman@xxxxxxxxxxxx> wrote: >>>> >>>> Hi, >>>> In the folder where I have the plugin, plugin.c has the line >>>> * Generated automatically from C:\Development\ewireshark\trunk\tools\make-dissector-reg.py. >>>> It also has >>>> WS_DLL_PUBLIC_DEF void >>>> register_wtap_module(void) >>>> { >>>> : >>>> >>>> I think I have modified the following files: >>>> CMakeListsCustom.txt >>>> plugins/CMakeListsCustom.txt >>>> plugins/Custom.m4 >>>> plugins/Custom.make ( 3 places) >>>> packaging/nsis/custom_plugins.txt >>>> >>>> >>>> The Cmake file in the plugin folder has: >>>> register_dissector_files(plugin.c >>>> plugin_wtap >>>> ${DISSECTOR_SRC} >>>> ) >>>> >>>> >>>> Regards >>>> Anders >>>> >>>> >>>> >>>> -----Original Message----- >>>> From: Wireshark-dev [mailto:wireshark-dev-bounces@xxxxxxxxxxxxx] On >>>> Behalf Of Jaap Keuter >>>> Sent: den 9 maj 2017 13:48 >>>> To: Developer support list for Wireshark <wireshark-dev@xxxxxxxxxxxxx> >>>> Subject: Re: [Wireshark-dev] wiretap plugin >>>> >>>> Hi Anders, >>>> >>>> Are you sure? I’m concerned about the generation of plugin.c. From >>>> reading plugins/Makefile.am.inc it seems that it only generates for >>>> dissector plugins (keyword: plugin), not for wiretap plugins (keyword: >>>> plugins_wtap) >>>> >>>> # >>>> plugin.c: $(REGISTER_SRC_FILES) $(top_srcdir)/tools/make-dissector-reg.py >>>> @echo Making plugin.c >>>> @$(PYTHON) $(top_srcdir)/tools/make-dissector-reg.py $(srcdir) \ >>>> plugin $(REGISTER_SRC_FILES) >>>> >>>> >>>> Thanks, >>>> Jaap >>>> >>>> >>>> >>>> >>>>> On 9 May 2017, at 12:08, Anders Broman <anders.broman@xxxxxxxxxxxx> wrote: >>>>> >>>>> Hi, >>>>> It's in the same files as other custom plugins. Top level >>>>> CMakeListCustom.txt etc Regards Anders >>>>> >>>>> -----Original Message----- >>>>> From: Wireshark-dev [mailto:wireshark-dev-bounces@xxxxxxxxxxxxx] On >>>>> Behalf Of Jaap Keuter >>>>> Sent: den 9 maj 2017 11:12 >>>>> To: Developer support list for Wireshark >>>>> <wireshark-dev@xxxxxxxxxxxxx> >>>>> Subject: [Wireshark-dev] wiretap plugin >>>>> >>>>> Hi list, >>>>> >>>>> Does anyone currently have a wiretap plugin setup for building in current master? >>>>> It seems that the plugin Makefile abstractions (plugins/Makefile.am.inc) are geared to dissector plugins, while tools/make-dissector-reg is still capable of making a plugin_wtap as well. And I haven’t even looked at CMake yet. >>>>> Can anyone share an example collection of current build files for a wiretap plugin? >>>>> >>>>> Thanks, >>>>> Jaap
- References:
- [Wireshark-dev] wiretap plugin
- From: Jaap Keuter
- Re: [Wireshark-dev] wiretap plugin
- From: Anders Broman
- Re: [Wireshark-dev] wiretap plugin
- From: Jaap Keuter
- Re: [Wireshark-dev] wiretap plugin
- From: Anders Broman
- Re: [Wireshark-dev] wiretap plugin
- From: Jaap Keuter
- Re: [Wireshark-dev] wiretap plugin
- From: Anders Broman
- Re: [Wireshark-dev] wiretap plugin
- From: Jaap Keuter
- Re: [Wireshark-dev] wiretap plugin
- From: Jaap Keuter
- [Wireshark-dev] wiretap plugin
- Prev by Date: Re: [Wireshark-dev] cmake build on windows without libpcap
- Next by Date: Re: [Wireshark-dev] Wireshark-dev Digest, Vol 132, Issue 16
- Previous by thread: Re: [Wireshark-dev] wiretap plugin
- Next by thread: [Wireshark-dev] Decommissioning ftp.wireshark.org
- Index(es):