Adds support to the Rx operator

This commit is contained in:
Felipe Zimmerle
2015-08-03 14:24:17 -03:00
parent 3a4cef6fb1
commit 6cd4c0492a
2 changed files with 24 additions and 14 deletions

View File

@@ -22,20 +22,17 @@
namespace ModSecurity {
namespace operators {
bool Rx::evaluate(Assay *assay) {
/**
* @todo Implement the operator Rx.
* Reference: https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual#rx
*/
return true;
bool Rx::evaluate(Assay *assay, const std::string& input) {
SMatch match;
if (regex_search(input, &match, m_re) && match.size() >= 1) {
return true;
}
return false;
}
Rx::Rx(std::string op, std::string param, bool negation)
: Operator() {
this->op = op;
this->param = param;
}
} // namespace operators
} // namespace ModSecurity