From 3e20f7bd2959fb1f267ba03b0387443b1c30cba1 Mon Sep 17 00:00:00 2001 From: Attila Molnar Date: Thu, 16 Oct 2014 21:15:31 +0200 Subject: Add interface to SSL modules that allows other modules to obtain the raw SSL session of a socket --- src/modules/extra/m_ssl_gnutls.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/modules/extra/m_ssl_gnutls.cpp') diff --git a/src/modules/extra/m_ssl_gnutls.cpp b/src/modules/extra/m_ssl_gnutls.cpp index 4135194c5..cdfe00b9c 100644 --- a/src/modules/extra/m_ssl_gnutls.cpp +++ b/src/modules/extra/m_ssl_gnutls.cpp @@ -615,6 +615,12 @@ class ModuleSSLGnuTLS : public Module req.cert = session->cert; } + else if (!strcmp("GET_RAW_SSL_SESSION", request.id)) + { + SSLRawSessionRequest& req = static_cast(request); + if ((req.fd >= 0) && (req.fd < ServerInstance->SE->GetMaxFds())) + req.data = reinterpret_cast(sessions[req.fd].sess); + } } void InitSession(StreamSocket* user, bool me_server) -- cgit v1.2.3