From 9c03afb52aac565d4edec8c595058920d9e84e00 Mon Sep 17 00:00:00 2001 From: neru Date: Wed, 13 May 2026 11:05:15 -0300 Subject: [PATCH] feat: add logger on TINYMITM_LOGS builds --- src/proxy/tinymitm/proxy.cpp | 7 +++++++ src/proxy/tinymitm/proxy.h | 19 ++++++++++++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/src/proxy/tinymitm/proxy.cpp b/src/proxy/tinymitm/proxy.cpp index 99759b3..e9a892d 100644 --- a/src/proxy/tinymitm/proxy.cpp +++ b/src/proxy/tinymitm/proxy.cpp @@ -21,6 +21,12 @@ #include "raai-helper.h" +#ifdef TINYMITM_LOGS + #define TINYMITM_WRITELOG(type, ...) _log->type(...) +#else + #define TINYMITM_WRITELOG() +#endif + /* RAAI helpers */ @@ -113,6 +119,7 @@ void setNonBlocking(SOCKET s) TinyMITMProxy::~TinyMITMProxy() { shutdown(); + delete _log; } bool TinyMITMProxy::init() diff --git a/src/proxy/tinymitm/proxy.h b/src/proxy/tinymitm/proxy.h index 29e6acf..674eefc 100644 --- a/src/proxy/tinymitm/proxy.h +++ b/src/proxy/tinymitm/proxy.h @@ -2,6 +2,10 @@ #include +#if TINYMITM_LOGS + #include +#endif + #include #include #include @@ -51,7 +55,12 @@ struct TinyMITMConfig class TinyMITMProxy { public: - TinyMITMProxy(TinyMITMConfig config) : _config(std::move(config)) {} + TinyMITMProxy(TinyMITMConfig config) : _config(std::move(config)) + { +#ifdef TINYMITM_LOGS + _log = new seallib::Logger("TinyMITMProxy"); +#endif + } ~TinyMITMProxy(); bool init(); @@ -85,6 +94,10 @@ class TinyMITMProxy */ seallib::Event onServerResponse; +#ifdef TINYMITM_LOGS + void addLogSink(std::shared_ptr sink) { _log->addSink(std::move(sink)); } +#endif + protected: // helper functions static long long stollSafe(const std::string& s, int def = 0, int base = 10); @@ -117,4 +130,8 @@ class TinyMITMProxy CertificateManager _certManager; TinyMITMConfig _config; + +#ifdef TINYMITM_LOGS + seallib::Logger* _log; +#endif };