Honeypots mailing list archives
Re: Honeyd 0.6: Happy Summer/Pre-Birthday Release -- Plugins
From: Christian Kreibich <christian () whoop org>
Date: 24 Jun 2003 15:33:23 +0100
On Tue, 2003-06-24 at 14:47, Niels Provos wrote:
On Tue, Jun 24, 2003 at 03:29:52PM -0700, ravenlord wrote:This is kinda cool, is there any documentation on this (other than hooks.c and plugin.c).. I mean the only plugins that honeyd currently have is Honeycomb, and it doesn't work out of the box with honeyd0.6No, currently, there is not much documentation for the plugin framework. Christian has a new plugin that works with 0.6, but I am not sure if he has posted it anywhere. For now, you have to consult the source ;)
Yeah. However the new manpage does have some information. If you guys have trouble getting the plugin to work, please get in touch as it should not be hard. Make sure you look at the README. Here's a quick overview of how the mechanism works: for portability reasons, we decided to keep plugins static. That means that honeyd does not dynamically pick them up via dlopen() at runtime, but rather needs to be reconfigured (./configure --with-plugins=...) and recompiled when you want to add new plugins. Plugins are just normal shared libraries that honeyd links in upon that rebuild. Plugins need honeyd's header files to properly register themselves, so you need to have one initial installation of honeyd without any plugins, just to get everything in the right location. Each plugin library must provide a struct honeyd_plugin structure with a name of plugin_<plugin name> (see honeycomb.c for an example) in which the plugin defines an initialization hook and some plugin information (author, version etc). Honeyd has a list of these structures that gets defined at configuration time (when you call ./configure --with-plugins=...). When it starts, it then walks through that list to initialize the plugins. There's a configuration system for the plugins that is integrated in honeyd's normal configuration files, see the manpage for some explanation, honeyd.cnf for an example, and look at plugins_config.[ch] for the code. Hope this clears it up a little. Now go write plugins! :) Cheers, Christian. -- ________________________________________________________________________ http://www.whoop.org
Current thread:
- Honeyd 0.6: Happy Summer/Pre-Birthday Release Niels Provos (Jun 23)
- Re: Honeyd 0.6: Happy Summer/Pre-Birthday Release -- Plugins ravenlord (Jun 24)
- Re: Honeyd 0.6: Happy Summer/Pre-Birthday Release -- Plugins Niels Provos (Jun 24)
- Re: Honeyd 0.6: Happy Summer/Pre-Birthday Release -- Plugins Christian Kreibich (Jun 24)
- RE: Honeyd 0.6: Happy Summer/Pre-Birthday Release -- Plugins Curt Purdy (Jun 27)
- Re: Honeyd 0.6: Happy Summer/Pre-Birthday Release -- Plugins Niels Provos (Jun 24)
- Re: Honeyd 0.6: Happy Summer/Pre-Birthday Release -- Plugins ravenlord (Jun 24)