mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 06:38:20 +00:00
btest/plugins: Add a plugin testing Init and Done hooks
Follow-up for #4047.
This commit is contained in:
parent
97f05b2f8c
commit
39b43e8dd6
5 changed files with 71 additions and 0 deletions
8
testing/btest/Baseline/plugins.init-hooks/out
Normal file
8
testing/btest/Baseline/plugins.init-hooks/out
Normal file
|
@ -0,0 +1,8 @@
|
|||
### BTest baseline data generated by btest-diff. Do not edit. Use "btest -U/-u" to update. Requires BTest >= 0.63.
|
||||
Configure()
|
||||
InitPreScript()
|
||||
InitPostScript()
|
||||
InitPreExecution()
|
||||
zeek_init
|
||||
zeek_done
|
||||
Done()
|
0
testing/btest/plugins/init-hooks-plugin/.btest-ignore
Normal file
0
testing/btest/plugins/init-hooks-plugin/.btest-ignore
Normal file
28
testing/btest/plugins/init-hooks-plugin/src/Plugin.cc
Normal file
28
testing/btest/plugins/init-hooks-plugin/src/Plugin.cc
Normal file
|
@ -0,0 +1,28 @@
|
|||
#include "Plugin.h"
|
||||
|
||||
#include <cstdio>
|
||||
namespace btest::plugin::Demo_InitHooks {
|
||||
Plugin plugin;
|
||||
}
|
||||
|
||||
using namespace btest::plugin::Demo_InitHooks;
|
||||
|
||||
zeek::plugin::Configuration Plugin::Configure() {
|
||||
setlinebuf(stdout);
|
||||
std::fprintf(stdout, "Configure()\n");
|
||||
zeek::plugin::Configuration config;
|
||||
config.name = "Demo::InitHooks";
|
||||
config.description = "Test Init and Done hooks";
|
||||
config.version.major = 1;
|
||||
config.version.minor = 0;
|
||||
config.version.patch = 0;
|
||||
return config;
|
||||
}
|
||||
|
||||
void Plugin::InitPreScript() { std::fprintf(stdout, "InitPreScript()\n"); }
|
||||
|
||||
void Plugin::InitPostScript() { std::fprintf(stdout, "InitPostScript()\n"); }
|
||||
|
||||
void Plugin::InitPreExecution() { std::fprintf(stdout, "InitPreExecution()\n"); }
|
||||
|
||||
void Plugin::Done() { std::fprintf(stdout, "Done()\n"); }
|
18
testing/btest/plugins/init-hooks-plugin/src/Plugin.h
Normal file
18
testing/btest/plugins/init-hooks-plugin/src/Plugin.h
Normal file
|
@ -0,0 +1,18 @@
|
|||
#pragma once
|
||||
#include <zeek/plugin/Plugin.h>
|
||||
#include <cstdio>
|
||||
|
||||
namespace btest::plugin::Demo_InitHooks {
|
||||
|
||||
|
||||
class Plugin : public zeek::plugin::Plugin {
|
||||
protected:
|
||||
zeek::plugin::Configuration Configure() override;
|
||||
void InitPreScript() override;
|
||||
void InitPostScript() override;
|
||||
void InitPreExecution() override;
|
||||
void Done() override;
|
||||
};
|
||||
|
||||
extern Plugin plugin;
|
||||
} // namespace btest::plugin::Demo_InitHooks
|
17
testing/btest/plugins/init-hooks.zeek
Normal file
17
testing/btest/plugins/init-hooks.zeek
Normal file
|
@ -0,0 +1,17 @@
|
|||
# @TEST-EXEC: ${DIST}/auxil/zeek-aux/plugin-support/init-plugin -u . Demo InitHooks
|
||||
# @TEST-EXEC: cp -r %DIR/init-hooks-plugin/* .
|
||||
|
||||
# @TEST-EXEC: ./configure --zeek-dist=${DIST} && make
|
||||
#
|
||||
# @TEST-EXEC: ZEEK_PLUGIN_PATH=`pwd` zeek -b %INPUT >out
|
||||
# @TEST-EXEC: TEST_DIFF_CANONIFIER= btest-diff out
|
||||
|
||||
@load-plugin Demo::InitHooks
|
||||
|
||||
event zeek_init() {
|
||||
print "zeek_init";
|
||||
}
|
||||
|
||||
event zeek_done() {
|
||||
print "zeek_done";
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue