mirror of
https://github.com/owasp-modsecurity/ModSecurity.git
synced 2025-08-14 05:45:59 +03:00
Fix unit test utility to get it working with t:removeNulls
This commit is contained in:
parent
17faef565e
commit
3d2ec2a3f5
@ -26,7 +26,7 @@
|
|||||||
|
|
||||||
#include "modsecurity/assay.h"
|
#include "modsecurity/assay.h"
|
||||||
#include "actions/transformations/transformation.h"
|
#include "actions/transformations/transformation.h"
|
||||||
|
#include "src/utils.h"
|
||||||
|
|
||||||
namespace ModSecurity {
|
namespace ModSecurity {
|
||||||
namespace actions {
|
namespace actions {
|
||||||
@ -37,17 +37,16 @@ std::string RemoveNulls::evaluate(std::string value,
|
|||||||
Assay *assay) {
|
Assay *assay) {
|
||||||
int64_t i;
|
int64_t i;
|
||||||
|
|
||||||
std::string ret;
|
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
while (i < value.size()) {
|
while (i < value.size()) {
|
||||||
if (value.at(i) != '\0') {
|
if (value.at(i) == '\0') {
|
||||||
ret += value.at(i);
|
value.erase(i, 1);
|
||||||
|
} else {
|
||||||
|
i++;
|
||||||
}
|
}
|
||||||
i++;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return ret;
|
return value;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -93,7 +93,7 @@ UnitTest *UnitTest::from_yajl_node(yajl_val &node) {
|
|||||||
u->param = YAJL_GET_STRING(val);
|
u->param = YAJL_GET_STRING(val);
|
||||||
} else if (strcmp(key, "input") == 0) {
|
} else if (strcmp(key, "input") == 0) {
|
||||||
u->input = YAJL_GET_STRING(val);
|
u->input = YAJL_GET_STRING(val);
|
||||||
replaceAll(&(u->input), "\\0", '\u0000');
|
replaceAll(&(u->input), "\\0", '\0');
|
||||||
replaceAll(&(u->input), "\\xe4", '\xe4');
|
replaceAll(&(u->input), "\\xe4", '\xe4');
|
||||||
replaceAll(&(u->input), "\\x03", '\x03');
|
replaceAll(&(u->input), "\\x03", '\x03');
|
||||||
replaceAll(&(u->input), "\\xbf", '\xbf');
|
replaceAll(&(u->input), "\\xbf", '\xbf');
|
||||||
@ -110,6 +110,7 @@ UnitTest *UnitTest::from_yajl_node(yajl_val &node) {
|
|||||||
} else if (strcmp(key, "output") == 0) {
|
} else if (strcmp(key, "output") == 0) {
|
||||||
u->output = YAJL_GET_STRING(val);
|
u->output = YAJL_GET_STRING(val);
|
||||||
replaceAll(&(u->output), "\\u0000", '\u0000');
|
replaceAll(&(u->output), "\\u0000", '\u0000');
|
||||||
|
replaceAll(&(u->output), "\\0", '\u0000');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user