mirror of
https://github.com/owasp-modsecurity/ModSecurity.git
synced 2025-08-13 21:36:00 +03:00
Refactoring: Renames RuleBase to Rule
This commit is contained in:
parent
59d4268882
commit
bdedfd2463
@ -66,9 +66,9 @@ using Tags = std::vector<actions::Tag *>;
|
|||||||
using SetVars = std::vector<actions::SetVar *>;
|
using SetVars = std::vector<actions::SetVar *>;
|
||||||
using MatchActions = std::vector<actions::Action *>;
|
using MatchActions = std::vector<actions::Action *>;
|
||||||
|
|
||||||
class RuleBase {
|
class Rule {
|
||||||
public:
|
public:
|
||||||
RuleBase(std::unique_ptr<std::string> fileName, int lineNumber)
|
Rule(std::unique_ptr<std::string> fileName, int lineNumber)
|
||||||
: m_fileName(std::move(fileName)),
|
: m_fileName(std::move(fileName)),
|
||||||
m_lineNumber(lineNumber),
|
m_lineNumber(lineNumber),
|
||||||
m_phase(modsecurity::Phases::RequestHeadersPhase) {
|
m_phase(modsecurity::Phases::RequestHeadersPhase) {
|
||||||
@ -103,13 +103,13 @@ class RuleBase {
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class RuleMarker : public RuleBase {
|
class RuleMarker : public Rule {
|
||||||
public:
|
public:
|
||||||
RuleMarker(
|
RuleMarker(
|
||||||
const std::string &name,
|
const std::string &name,
|
||||||
std::unique_ptr<std::string> fileName,
|
std::unique_ptr<std::string> fileName,
|
||||||
int lineNumber)
|
int lineNumber)
|
||||||
: RuleBase(std::move(fileName), lineNumber),
|
: Rule(std::move(fileName), lineNumber),
|
||||||
m_name(std::make_shared<std::string>(name)) { }
|
m_name(std::make_shared<std::string>(name)) { }
|
||||||
|
|
||||||
|
|
||||||
@ -139,7 +139,7 @@ class RuleMarker : public RuleBase {
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class RuleWithActions : public RuleBase {
|
class RuleWithActions : public Rule {
|
||||||
public:
|
public:
|
||||||
RuleWithActions(
|
RuleWithActions(
|
||||||
Actions *a,
|
Actions *a,
|
||||||
|
@ -61,11 +61,11 @@ class Rules {
|
|||||||
return j;
|
return j;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool insert(std::shared_ptr<RuleBase> rule) {
|
bool insert(std::shared_ptr<Rule> rule) {
|
||||||
return insert(rule, nullptr, nullptr);
|
return insert(rule, nullptr, nullptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool insert(std::shared_ptr<RuleBase> rule, const std::vector<int64_t> *ids, std::ostringstream *err) {
|
bool insert(std::shared_ptr<Rule> rule, const std::vector<int64_t> *ids, std::ostringstream *err) {
|
||||||
RuleWithOperator *r = dynamic_cast<RuleWithOperator *>(rule.get());
|
RuleWithOperator *r = dynamic_cast<RuleWithOperator *>(rule.get());
|
||||||
if (r && ids != nullptr && std::binary_search(ids->begin(), ids->end(), r->m_ruleId)) {
|
if (r && ids != nullptr && std::binary_search(ids->begin(), ids->end(), r->m_ruleId)) {
|
||||||
if (err != nullptr) {
|
if (err != nullptr) {
|
||||||
@ -79,10 +79,10 @@ class Rules {
|
|||||||
}
|
}
|
||||||
|
|
||||||
size_t size() const { return m_rules.size(); }
|
size_t size() const { return m_rules.size(); }
|
||||||
std::shared_ptr<RuleBase> operator[](int index) const { return m_rules[index]; }
|
std::shared_ptr<Rule> operator[](int index) const { return m_rules[index]; }
|
||||||
std::shared_ptr<RuleBase> at(int index) const { return m_rules[index]; }
|
std::shared_ptr<Rule> at(int index) const { return m_rules[index]; }
|
||||||
|
|
||||||
std::vector<std::shared_ptr<RuleBase> > m_rules;
|
std::vector<std::shared_ptr<Rule> > m_rules;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@ class Driver;
|
|||||||
class RulesSetPhases {
|
class RulesSetPhases {
|
||||||
public:
|
public:
|
||||||
|
|
||||||
bool insert(std::shared_ptr<RuleBase> rule);
|
bool insert(std::shared_ptr<Rule> rule);
|
||||||
|
|
||||||
int append(RulesSetPhases *from, std::ostringstream *err);
|
int append(RulesSetPhases *from, std::ostringstream *err);
|
||||||
void dump() const;
|
void dump() const;
|
||||||
|
@ -57,7 +57,7 @@ RuleWithActions::RuleWithActions(
|
|||||||
Transformations *transformations,
|
Transformations *transformations,
|
||||||
std::unique_ptr<std::string> fileName,
|
std::unique_ptr<std::string> fileName,
|
||||||
int lineNumber)
|
int lineNumber)
|
||||||
: RuleBase(std::move(fileName), lineNumber),
|
: Rule(std::move(fileName), lineNumber),
|
||||||
m_rev(""),
|
m_rev(""),
|
||||||
m_ver(""),
|
m_ver(""),
|
||||||
m_accuracy(0),
|
m_accuracy(0),
|
||||||
|
@ -135,7 +135,7 @@ int RulesSet::evaluate(int phase, Transaction *t) {
|
|||||||
for (int i = 0; i < rules->size(); i++) {
|
for (int i = 0; i < rules->size(); i++) {
|
||||||
// FIXME: This is not meant to be here. At the end of this refactoring,
|
// FIXME: This is not meant to be here. At the end of this refactoring,
|
||||||
// the shared pointer won't be used.
|
// the shared pointer won't be used.
|
||||||
std::shared_ptr<RuleBase> rule = rules->at(i);
|
std::shared_ptr<Rule> rule = rules->at(i);
|
||||||
if (t->isInsideAMarker() && !rule->isMarker()) {
|
if (t->isInsideAMarker() && !rule->isMarker()) {
|
||||||
ms_dbg_a(t, 9, "Skipped rule id '" + rule->getReference() \
|
ms_dbg_a(t, 9, "Skipped rule id '" + rule->getReference() \
|
||||||
+ "' due to a SecMarker: " + *t->getCurrentMarker());
|
+ "' due to a SecMarker: " + *t->getCurrentMarker());
|
||||||
@ -152,7 +152,7 @@ int RulesSet::evaluate(int phase, Transaction *t) {
|
|||||||
ms_dbg_a(t, 9, "Skipped rule id '" + rule->getReference() \
|
ms_dbg_a(t, 9, "Skipped rule id '" + rule->getReference() \
|
||||||
+ "' as request trough the utilization of an `allow' action.");
|
+ "' as request trough the utilization of an `allow' action.");
|
||||||
} else {
|
} else {
|
||||||
RuleBase *base = rule.get();
|
Rule *base = rule.get();
|
||||||
RuleWithOperator *ruleWithOperator = dynamic_cast<RuleWithOperator *>(base);
|
RuleWithOperator *ruleWithOperator = dynamic_cast<RuleWithOperator *>(base);
|
||||||
if (m_exceptions.contains(ruleWithOperator->m_ruleId)) {
|
if (m_exceptions.contains(ruleWithOperator->m_ruleId)) {
|
||||||
ms_dbg_a(t, 9, "Skipped rule id '" + rule->getReference() \
|
ms_dbg_a(t, 9, "Skipped rule id '" + rule->getReference() \
|
||||||
|
@ -29,7 +29,7 @@
|
|||||||
namespace modsecurity {
|
namespace modsecurity {
|
||||||
|
|
||||||
|
|
||||||
bool RulesSetPhases::insert(std::shared_ptr<RuleBase> rule) {
|
bool RulesSetPhases::insert(std::shared_ptr<Rule> rule) {
|
||||||
if (rule->getPhase() >= modsecurity::Phases::NUMBER_OF_PHASES) {
|
if (rule->getPhase() >= modsecurity::Phases::NUMBER_OF_PHASES) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -51,7 +51,7 @@ std::string RunTimeString::evaluate(Transaction *t) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
std::string RunTimeString::evaluate(Transaction *t, RuleBase *r) {
|
std::string RunTimeString::evaluate(Transaction *t, Rule *r) {
|
||||||
std::string s;
|
std::string s;
|
||||||
for (auto &z : m_elements) {
|
for (auto &z : m_elements) {
|
||||||
if (z->m_string.size() > 0) {
|
if (z->m_string.size() > 0) {
|
||||||
|
@ -49,7 +49,7 @@ class RunTimeString {
|
|||||||
void appendText(const std::string &text);
|
void appendText(const std::string &text);
|
||||||
void appendVar(std::unique_ptr<modsecurity::variables::Variable> var);
|
void appendVar(std::unique_ptr<modsecurity::variables::Variable> var);
|
||||||
std::string evaluate(Transaction *t);
|
std::string evaluate(Transaction *t);
|
||||||
std::string evaluate(Transaction *t, RuleBase *r);
|
std::string evaluate(Transaction *t, Rule *r);
|
||||||
std::string evaluate() {
|
std::string evaluate() {
|
||||||
return evaluate(NULL);
|
return evaluate(NULL);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user