From ebd03383f856bfaa72b1700a96561396e6f8f6cc Mon Sep 17 00:00:00 2001 From: Sadie Powell Date: Mon, 19 Feb 2024 18:46:05 +0000 Subject: Allow using multiple SSL fingerprint algorithms. Closes #1804. --- src/modules/m_sslmodes.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'src/modules/m_sslmodes.cpp') diff --git a/src/modules/m_sslmodes.cpp b/src/modules/m_sslmodes.cpp index d5037b195..ff84b5845 100644 --- a/src/modules/m_sslmodes.cpp +++ b/src/modules/m_sslmodes.cpp @@ -56,8 +56,15 @@ public: bool IsMatch(User* user, Channel* channel, const std::string& text) override { - const std::string fp = sslapi ? sslapi->GetFingerprint(user) : ""; - return !fp.empty() && InspIRCd::Match(fp, text); + if (!sslapi) + return false; + + for (const auto& fingerprint : sslapi->GetFingerprints(user)) + { + if (InspIRCd::Match(fingerprint, text)) + return true; + } + return false; } }; -- cgit v1.3.1-10-gc9f91