]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/modules/ssl.h
Only check if a SSL cert is usable if we're getting the fp.
[user/henk/code/inspircd.git] / include / modules / ssl.h
index 930cb6dc605a73373bc2ea52561e5a953671c4f3..69bd65009eb52783248d4fbf81b230fd04401903 100644 (file)
@@ -195,9 +195,7 @@ class SSLIOHook : public IOHook
         */
        ssl_cert* GetCertificate() const
        {
-               if (certificate && certificate->IsUsable())
-                       return certificate;
-               return NULL;
+               return certificate;
        }
 
        /**
@@ -208,7 +206,7 @@ class SSLIOHook : public IOHook
        std::string GetFingerprint() const
        {
                ssl_cert* cert = GetCertificate();
-               if (cert)
+               if (cert && certificate->IsUsable())
                        return cert->GetFingerprint();
                return "";
        }
@@ -277,6 +275,12 @@ class UserCertificateAPIBase : public DataProvider
         */
        virtual ssl_cert* GetCertificate(User* user) = 0;
 
+       /** Set the SSL certificate of a user.
+        * @param user The user whose certificate to set.
+        * @param cert The SSL certificate to set for the user.
+        */
+       virtual void SetCertificate(User* user, ssl_cert* cert) = 0;
+
        /** Get the key fingerprint from a user's certificate
         * @param user The user whose key fingerprint to get, user may be remote
         * @return The key fingerprint from the user's SSL certificate or an empty string