Adds macro expansion for all operators

This commit is contained in:
Felipe Zimmerle
2015-09-16 11:25:07 -03:00
parent 320bcde89e
commit 9d60dc6df8
15 changed files with 49 additions and 19 deletions

View File

@@ -18,6 +18,7 @@
#include <string>
#include "operators/operator.h"
#include "src/macro_expansion.h"
namespace ModSecurity {
namespace operators {
@@ -26,9 +27,11 @@ namespace operators {
bool BeginsWith::evaluate(Assay *assay, const std::string &str) {
bool ret = false;
if (str.size() < param.size()) {
std::string p = MacroExpansion::expand(param, assay);
if (str.size() < p.size()) {
ret = false;
} else if (!str.compare(0, param.size(), param)) {
} else if (!str.compare(0, p.size(), p)) {
ret = true;
}