Correction remove_by_tag and remove_by_msg

This commit is contained in:
Minasu 2017-12-20 15:02:35 +01:00 committed by Felipe Zimmerle
parent 5e8062cf72
commit a0bea7356d
No known key found for this signature in database
GPG Key ID: E6DFB08CE8B11277

View File

@ -152,6 +152,8 @@ std::string Rules::getParserError() {
int Rules::evaluate(int phase, Transaction *transaction) {
bool remove_rule;
if (phase > modsecurity::Phases::NUMBER_OF_PHASES) {
return 0;
}
@ -178,6 +180,7 @@ int Rules::evaluate(int phase, Transaction *transaction) {
}
for (int i = 0; i < rules.size(); i++) {
remove_rule = false;
Rule *rule = rules[i];
if (transaction->m_marker.empty() == false) {
debug(9, "Skipped rule id '" + std::to_string(rule->m_ruleId) \
@ -209,9 +212,13 @@ int Rules::evaluate(int phase, Transaction *transaction) {
debug(9, "Skipped rule id '" \
+ std::to_string(rule->m_ruleId) \
+ "'. Removed by a SecRuleRemoveByMsg directive.");
return 1;
remove_rule = true;
break;
}
}
if(remove_rule) {
continue;
}
}
if (m_exceptions.m_remove_rule_by_tag.empty() == false) {
@ -220,9 +227,13 @@ int Rules::evaluate(int phase, Transaction *transaction) {
debug(9, "Skipped rule id '" \
+ std::to_string(rule->m_ruleId) \
+ "'. Removed by a SecRuleRemoveByTag directive.");
return 1;
remove_rule = true;
break;
}
}
if(remove_rule) {
continue;
}
}
rule->evaluate(transaction, NULL);