Using run time string on the operators

This commit is contained in:
Felipe Zimmerle
2018-01-22 18:05:02 -03:00
parent 6a97dbee7a
commit a299997e02
74 changed files with 6884 additions and 6111 deletions

View File

@@ -19,6 +19,7 @@
#include <string>
#include <list>
#include <memory>
#include <utility>
#include "modsecurity/transaction.h"
#include "modsecurity/rule_message.h"
@@ -31,10 +32,8 @@ namespace operators {
class Contains : public Operator {
public:
/** @ingroup ModSecurity_Operator */
Contains(std::string op, std::string param, bool negation)
: Operator(op, param, negation) { }
explicit Contains(std::string param)
: Operator("Contains", param) { }
explicit Contains(std::unique_ptr<RunTimeString> param)
: Operator("Contains", std::move(param)) { }
bool evaluate(Transaction *transaction, Rule *rule,
const std::string &str,
std::shared_ptr<RuleMessage> ruleMessage) override;