mpse_manager.h (snort3-3.1.29.0) | : | mpse_manager.h (snort3-3.1.30.0) | ||
---|---|---|---|---|
skipping to change at line 29 | skipping to change at line 29 | |||
#ifndef MPSE_MANAGER_H | #ifndef MPSE_MANAGER_H | |||
#define MPSE_MANAGER_H | #define MPSE_MANAGER_H | |||
// Factory for Mpse. The same Mpse type is used for rule matching as well | // Factory for Mpse. The same Mpse type is used for rule matching as well | |||
// as searching by inspectors with a SearchTool. Runtime use of the Mpse | // as searching by inspectors with a SearchTool. Runtime use of the Mpse | |||
// is by the fast pattern detection module. | // is by the fast pattern detection module. | |||
#include "framework/module.h" | #include "framework/module.h" | |||
#ifdef PIGLET | ||||
#include "framework/mpse.h" | ||||
#endif | ||||
namespace snort | namespace snort | |||
{ | { | |||
struct MpseApi; | struct MpseApi; | |||
class Mpse; | class Mpse; | |||
struct SnortConfig; | struct SnortConfig; | |||
} | } | |||
//------------------------------------------------------------------------- | //------------------------------------------------------------------------- | |||
#ifdef PIGLET | ||||
struct MpseWrapper | ||||
{ | ||||
MpseWrapper(const snort::MpseApi* a, snort::Mpse* p) : | ||||
api { a }, instance { p } { } | ||||
~MpseWrapper() | ||||
{ | ||||
if ( api && instance && api->dtor ) | ||||
api->dtor(instance); | ||||
} | ||||
const snort::MpseApi* api; | ||||
snort::Mpse* instance; | ||||
}; | ||||
#endif | ||||
class MpseManager | class MpseManager | |||
{ | { | |||
public: | public: | |||
static void add_plugin(const snort::MpseApi*); | static void add_plugin(const snort::MpseApi*); | |||
static void release_plugins(); | static void release_plugins(); | |||
static void dump_plugins(); | static void dump_plugins(); | |||
static void instantiate(const snort::MpseApi*, snort::Module*, snort::SnortC onfig*); | static void instantiate(const snort::MpseApi*, snort::Module*, snort::SnortC onfig*); | |||
static const snort::MpseApi* get_search_api(const char* type); | static const snort::MpseApi* get_search_api(const char* type); | |||
static void delete_search_engine(snort::Mpse*); | static void delete_search_engine(snort::Mpse*); | |||
skipping to change at line 83 | skipping to change at line 62 | |||
static void activate_search_engine(const snort::MpseApi*, snort::SnortConfig *); | static void activate_search_engine(const snort::MpseApi*, snort::SnortConfig *); | |||
static void setup_search_engine(const snort::MpseApi*, snort::SnortConfig*); | static void setup_search_engine(const snort::MpseApi*, snort::SnortConfig*); | |||
static void start_search_engine(const snort::MpseApi*); | static void start_search_engine(const snort::MpseApi*); | |||
static void stop_search_engine(const snort::MpseApi*); | static void stop_search_engine(const snort::MpseApi*); | |||
static bool is_async_capable(const snort::MpseApi*); | static bool is_async_capable(const snort::MpseApi*); | |||
static bool is_regex_capable(const snort::MpseApi*); | static bool is_regex_capable(const snort::MpseApi*); | |||
static bool parallel_compiles(const snort::MpseApi*); | static bool parallel_compiles(const snort::MpseApi*); | |||
static bool is_poll_capable(const snort::MpseApi* api); | static bool is_poll_capable(const snort::MpseApi* api); | |||
static void print_mpse_summary(const snort::MpseApi*); | static void print_mpse_summary(const snort::MpseApi*); | |||
static void print_search_engine_stats(); | static void print_search_engine_stats(); | |||
#ifdef PIGLET | ||||
static MpseWrapper* instantiate(const char*, snort::Module*, snort::SnortCon | ||||
fig*); | ||||
#endif | ||||
}; | }; | |||
#endif | #endif | |||
End of changes. 3 change blocks. | ||||
26 lines changed or deleted | 0 lines changed or added |