Adds support to the @pm operator

This commit is contained in:
Felipe Zimmerle
2015-08-04 01:08:39 -03:00
parent 774d897351
commit 95efb99a8c
5 changed files with 716 additions and 12 deletions

View File

@@ -19,18 +19,32 @@
#include <string>
#include "operators/operator.h"
#include "utils/acmp.h"
#ifdef __cplusplus
namespace ModSecurity {
namespace operators {
class Pm : public Operator {
public:
/** @ingroup ModSecurity_Operator */
Pm(std::string o, std::string p, bool i);
bool evaluate(Assay *assay);
Pm(std::string op, std::string param, bool negation)
: Operator(op, param, negation) {
m_p = acmp_create(0);
}
~Pm();
bool evaluate(Assay *assay, const std::string &input);
virtual bool init(const char **error);
void postOrderTraversal(acmp_btree_node_t *node);
protected:
ACMP *m_p;
};
} // namespace operators
} // namespace ModSecurity
#endif