File tree Expand file tree Collapse file tree 2 files changed +19
-3
lines changed Expand file tree Collapse file tree 2 files changed +19
-3
lines changed Original file line number Diff line number Diff line change @@ -306,7 +306,7 @@ bool Rule::evaluate(Transaction *trasn) {
306
306
Variable *variable = variables->at (i);
307
307
if (variable->m_isExclusion ) {
308
308
std::vector<const collection::Variable *> z;
309
- variable->evaluateInternal (trasn, &z);
309
+ variable->evaluateInternal (trasn, this , &z);
310
310
for (auto &y : z) {
311
311
exclusions.push_back (y->m_key );
312
312
}
@@ -322,7 +322,7 @@ bool Rule::evaluate(Transaction *trasn) {
322
322
}
323
323
324
324
std::vector<const collection::Variable *> e;
325
- variable->evaluateInternal (trasn, &e);
325
+ variable->evaluateInternal (trasn, this , &e);
326
326
327
327
for (auto &v : e) {
328
328
if (std::find (exclusions.begin (), exclusions.end (),
Original file line number Diff line number Diff line change 18
18
#include < list>
19
19
#include < utility>
20
20
#include " modsecurity/transaction.h"
21
+ #include " modsecurity/rule.h"
21
22
22
23
#ifndef SRC_VARIABLES_VARIABLE_H_
23
24
#define SRC_VARIABLES_VARIABLE_H_
@@ -66,15 +67,30 @@ class Variable {
66
67
67
68
static std::string to_s (std::vector<Variable *> *variables);
68
69
70
+
69
71
virtual std::vector<const collection::Variable *>
70
72
*evaluate (Transaction *transaction);
71
73
72
- virtual void evaluate (Transaction *transaction,
74
+
75
+ virtual void evaluateInternal (Transaction *transaction,
73
76
std::vector<const collection::Variable *> *l);
74
77
75
78
virtual void evaluateInternal (Transaction *transaction,
79
+ Rule *rule,
80
+ std::vector<const collection::Variable *> *l) {
81
+ evaluateInternal (transaction, l);
82
+ }
83
+
84
+
85
+ virtual void evaluate (Transaction *transaction,
76
86
std::vector<const collection::Variable *> *l);
77
87
88
+ virtual void evaluate (Transaction *transaction,
89
+ Rule *rule,
90
+ std::vector<const collection::Variable *> *l) {
91
+ evaluate (transaction, l);
92
+ }
93
+
78
94
79
95
std::string m_name;
80
96
std::string m_collectionName;
You can’t perform that action at this time.
0 commit comments