diff options
| author | 2015-04-28 15:16:22 +0200 | |
|---|---|---|
| committer | 2015-04-28 15:16:22 +0200 | |
| commit | 8f34594cb7d600ccff100dff1817b69b03756ea2 (patch) | |
| tree | fecbd61c35bd75add033a71b42043a0c99624c99 /src/modules/m_sslinfo.cpp | |
| parent | Prepend target user nick to whois numerics in InspIRCd::SendWhoisLine() (diff) | |
Move OnWhois* events to core_whois, add Whois::Context
Remove InspIRCd::SendWhoisLine()
Diffstat (limited to 'src/modules/m_sslinfo.cpp')
| -rw-r--r-- | src/modules/m_sslinfo.cpp | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/modules/m_sslinfo.cpp b/src/modules/m_sslinfo.cpp index 03e9bed96..523d52abb 100644 --- a/src/modules/m_sslinfo.cpp +++ b/src/modules/m_sslinfo.cpp @@ -139,14 +139,16 @@ class UserCertificateAPIImpl : public UserCertificateAPIBase } }; -class ModuleSSLInfo : public Module +class ModuleSSLInfo : public Module, public Whois::EventListener { CommandSSLInfo cmd; UserCertificateAPIImpl APIImpl; public: ModuleSSLInfo() - : cmd(this), APIImpl(this, cmd.CertExt) + : Whois::EventListener(this) + , cmd(this) + , APIImpl(this, cmd.CertExt) { } @@ -155,15 +157,15 @@ class ModuleSSLInfo : public Module return Version("SSL Certificate Utilities", VF_VENDOR); } - void OnWhois(User* source, User* dest) CXX11_OVERRIDE + void OnWhois(Whois::Context& whois) CXX11_OVERRIDE { - ssl_cert* cert = cmd.CertExt.get(dest); + ssl_cert* cert = cmd.CertExt.get(whois.GetTarget()); if (cert) { - ServerInstance->SendWhoisLine(source, dest, 671, ":is using a secure connection"); + whois.SendLine(671, ":is using a secure connection"); bool operonlyfp = ServerInstance->Config->ConfValue("sslinfo")->getBool("operonly"); - if ((!operonlyfp || source == dest || source->IsOper()) && !cert->fingerprint.empty()) - ServerInstance->SendWhoisLine(source, dest, 276, ":has client certificate fingerprint %s", cert->fingerprint.c_str()); + if ((!operonlyfp || whois.IsSelfWhois() || whois.GetSource()->IsOper()) && !cert->fingerprint.empty()) + whois.SendLine(276, ":has client certificate fingerprint %s", cert->fingerprint.c_str()); } } |
