cirrus: Add smoke testing for builtin plugins

This adds two example plugins within testing/builtin-plugins/Files:

* protocol-plugin copied over from testing/btest/plugins/protocol-plugin

* py-lib-plugin that embeds Python to have a dependency on an external
  shared library which was already available in CI and fun to use, too.

Closes #2837
This commit is contained in:
Arne Welzel 2023-03-06 14:35:25 +01:00
parent 42c1fc3e7d
commit 1912ba7002
31 changed files with 435 additions and 0 deletions

View file

@ -0,0 +1,34 @@
#include "Plugin.h"
extern "C"
{
#include <Python.h>
}
namespace zeek::plugin::Zeek_PyLib
{
Plugin plugin;
}
using namespace zeek::plugin::Zeek_PyLib;
zeek::plugin::Configuration Plugin::Configure()
{
zeek::plugin::Configuration config;
config.name = "Zeek::PyLib";
config.description = "Plugin embedding Python, whoosh.";
config.version.major = 0;
config.version.minor = 0;
config.version.patch = 1;
return config;
}
void Plugin::InitPostScript()
{
Py_Initialize();
}
void Plugin::Done()
{
Py_FinalizeEx();
}