From 3e0acbb5795037baf4b61aa9becc722c2cf071f0 Mon Sep 17 00:00:00 2001 From: Steven Date: Fri, 28 Sep 2018 17:01:48 -0400 Subject: [PATCH] Allow the callback to recieve a http return code --- headers/modsecurity/modsecurity.h | 2 +- src/modsecurity.cc | 4 ++-- src/transaction.cc | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/headers/modsecurity/modsecurity.h b/headers/modsecurity/modsecurity.h index 8fa9e59314..6157daef92 100644 --- a/headers/modsecurity/modsecurity.h +++ b/headers/modsecurity/modsecurity.h @@ -289,7 +289,7 @@ class ModSecurity { */ void setServerLogCb(ModSecLogCb cb, int properties); - void serverLog(void *data, std::shared_ptr rm); + void serverLog(void *data, std::shared_ptr rm, int httpCodeReturned); const std::string& getConnectorInformation(); diff --git a/src/modsecurity.cc b/src/modsecurity.cc index 7ccfdcb141..a8ee681dff 100644 --- a/src/modsecurity.cc +++ b/src/modsecurity.cc @@ -186,7 +186,7 @@ const std::string& ModSecurity::getConnectorInformation() { return m_connector; } -void ModSecurity::serverLog(void *data, std::shared_ptr rm) { +void ModSecurity::serverLog(void *data, std::shared_ptr rm, int httpCodeReturned) { if (m_logCb == NULL) { std::cerr << "Server log callback is not set -- " << rm->errorLog(); std::cerr << std::endl; @@ -198,7 +198,7 @@ void ModSecurity::serverLog(void *data, std::shared_ptr rm) { } if (m_logProperties & TextLogProperty) { - std::string &&d = rm->log(); + std::string &&d = rm->log(0, httpCodeReturned); const void *a = static_cast(d.c_str()); m_logCb(data, a); return; diff --git a/src/transaction.cc b/src/transaction.cc index 09777ce2f4..3e37beddcc 100644 --- a/src/transaction.cc +++ b/src/transaction.cc @@ -1781,7 +1781,7 @@ std::string Transaction::toJSON(int parts) { void Transaction::serverLog(std::shared_ptr rm) { - m_ms->serverLog(m_logCbData, rm); + m_ms->serverLog(m_logCbData, rm, this->m_httpCodeReturned); }