mirror of
https://github.com/zeek/zeek.git
synced 2025-10-16 21:48:21 +00:00
Restructuring the plugin API to accomodate hooks.
I got rid of the earlier separate InterpreterPlugin class. Instead Plugin now has a set of virtual methods HookSomething()... that plugins can override. For efficiency purposes, they however need to register first that they are interested in a hook, otherwise the virtual method will never be called. The idea is to extend the set of hooks over time as we figure out what's useful. This is a checkpoint commit that's essentially untested and probably broken. It compiles, though.
This commit is contained in:
parent
555df1e7ea
commit
bda0c29f66
11 changed files with 529 additions and 445 deletions
|
@ -283,7 +283,7 @@ Val* BroFunc::Call(val_list* args, Frame* parent) const
|
|||
DEBUG_MSG("Function: %s\n", id->Name());
|
||||
#endif
|
||||
|
||||
Val* plugin_result = plugin_mgr->CallFunction(this, args);
|
||||
Val* plugin_result = PLUGIN_HOOK_WITH_RESULT(HOOK_CALL_FUNCTION, HookCallFunction(this, args), 0);
|
||||
|
||||
if ( plugin_result )
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue