FileAnalysis: refactor add/remove/stop BIFs, add BOF triggers/fields.

The add_action, remove_action, and stop BIFs now go through a queue to
ensure that modifications are made at well-defined times and don't end
up invalidating loop iterators.
This commit is contained in:
Jon Siwek 2013-02-28 17:19:16 -06:00
parent 691622b3aa
commit 720858fb36
13 changed files with 517 additions and 169 deletions

View file

@ -39,7 +39,9 @@ public:
{ return true; }
/**
* Subclasses may override this to specifically handle the end of a file.
* Subclasses may override this to specifically handle an EOF signal,
* which means no more data is going to be incoming and the action/analyzer
* may be deleted/cleaned up soon.
* @return true if the action is still in a valid state to continue
* receiving data/events or false if it's essentially "done".
*/
@ -64,6 +66,11 @@ public:
*/
RecordVal* Args() const { return args; }
/**
* @return the file_analysis::Info object to which the action is attached.
*/
Info* GetInfo() const { return info; }
/**
* @return the action tag equivalent of the 'act' field from the ActionArgs
* value \a args.