Having a better error handler for the highlight feature

This commit is contained in:
Felipe Zimmerle
2017-03-15 21:35:33 -03:00
parent a70c81b283
commit d61da493eb
3 changed files with 63 additions and 14 deletions

View File

@@ -85,8 +85,12 @@ static void *process_request(void *data) {
modsecTransaction->processURI(request_uri, "GET", "1.1");
usleep(10);
modsecTransaction->addRequestHeader("Host",
"net.tutsplus.com");
/*
for (auto &i : m_requestHeaders) {
modsecTransaction->addRequestHeader(i.first,
i.second);
}
*/
modsecTransaction->processRequestHeaders();
modsecTransaction->processRequestBody();
modsecTransaction->addResponseHeader("HTTP/1.1",
@@ -108,14 +112,15 @@ static void *process_request(void *data) {
class ReadingLogsViaRuleMessage {
public:
ReadingLogsViaRuleMessage(char *request_header,
ReadingLogsViaRuleMessage(
std::unordered_multimap<std::string, std::string> requestHeaders,
char *request_uri,
char *request_body,
char *response_headers,
char *response_body,
char *ip,
std::string rules) :
m_request_header(request_header),
m_requestHeaders(requestHeaders),
m_request_uri(request_uri),
m_request_body(request_body),
m_response_headers(response_headers),
@@ -243,7 +248,7 @@ end:
}
protected:
char *m_request_header;
std::unordered_multimap<std::string, std::string> m_requestHeaders;
char *m_request_uri;
char *m_request_body;
char *m_response_headers;

View File

@@ -21,6 +21,9 @@
#include "examples/reading_logs_via_rule_message/reading_logs_via_rule_message.h"
char request_uri2[] = "/index.html?d=1";
std::unordered_multimap<std::string, std::string> requestHeaders;
int main(int argc, char **argv) {
*argv++;
@@ -31,8 +34,13 @@ int main(int argc, char **argv) {
return -1;
}
requestHeaders.emplace("Host", "SITE2");
requestHeaders.emplace("User-Agent", "wFetch");
requestHeaders.emplace("test", "21321");
std::string rules(*argv);
ReadingLogsViaRuleMessage rlvrm(request_header, request_uri, request_body,
ReadingLogsViaRuleMessage rlvrm(requestHeaders, request_uri, request_body,
"", response_body, ip, rules);
rlvrm.process();