action_manager.cc (snort3-3.1.29.0) | : | action_manager.cc (snort3-3.1.30.0) | ||
---|---|---|---|---|
skipping to change at line 308 | skipping to change at line 308 | |||
// Call tterm for every IPS action plugin ever configured during the lif etime of this thread | // Call tterm for every IPS action plugin ever configured during the lif etime of this thread | |||
for ( auto& p : *s_tl_actors ) | for ( auto& p : *s_tl_actors ) | |||
{ | { | |||
if ( p.api->tterm ) | if ( p.api->tterm ) | |||
p.api->tterm(); | p.api->tterm(); | |||
} | } | |||
delete s_tl_actors; | delete s_tl_actors; | |||
s_tl_actors = nullptr; | s_tl_actors = nullptr; | |||
} | } | |||
} | } | |||
#ifdef PIGLET | ||||
//------------------------------------------------------------------------- | ||||
// piglet breach | ||||
//------------------------------------------------------------------------- | ||||
static const ActionApi* find_api(const char* name) | ||||
{ | ||||
for ( auto actor : s_actors ) | ||||
if ( !strcmp(actor.api->base.name, name) ) | ||||
return actor.api; | ||||
return nullptr; | ||||
} | ||||
IpsActionWrapper* ActionManager::instantiate(const char* name, Module* m) | ||||
{ | ||||
auto api = find_api(name); | ||||
if ( !api || !api->ctor ) | ||||
return nullptr; | ||||
auto p = api->ctor(m); | ||||
if ( !p ) | ||||
return nullptr; | ||||
return new IpsActionWrapper(api, p); | ||||
} | ||||
#endif | ||||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 0 lines changed or added |