[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-i18n-doc
Subject:    [ktp-auth-handler/kde-telepathy-0.7] /: Check for QCA certificate availability at run time.
From:       David Edmundson <kde () davidedmundson ! co ! uk>
Date:       2013-09-24 14:59:24
Message-ID: E1VOU5E-0006LK-SS () scm ! kde ! org
[Download RAW message or body]

Git commit c5222770fff5044dff2bc1e9d9ed1c52b3dd68ac by David Edmundson, on =
behalf of Diane Trout.
Committed on 24/09/2013 at 14:54.
Pushed by davidedmundson into branch 'kde-telepathy-0.7'.

Check for QCA certificate availability at run time.

This fixes a crash if packagers don't include qca-ossl a runtime
plugin for QCA needed to load SSL Certs.

Note this introduces a new string inside the feature freeze

Reviewed-by: David Edmundson
CC:  kde-i18n-doc@kde.org
BUG: 324750

M  +9    -1    tls-cert-verifier-op.cpp

http://commits.kde.org/telepathy-auth-handler/c5222770fff5044dff2bc1e9d9ed1=
c52b3dd68ac

diff --git a/tls-cert-verifier-op.cpp b/tls-cert-verifier-op.cpp
index b5bb19b..9ce9f51 100644
--- a/tls-cert-verifier-op.cpp
+++ b/tls-cert-verifier-op.cpp
@@ -93,9 +93,17 @@ void TlsCertVerifierOp::gotProperties(Tp::PendingOperati=
on *op)
     // Initialize QCA module
     QCA::Initializer initializer;
 =

+    if(!QCA::isSupported("cert")) {
+      setFinishedWithError(
+          QLatin1String("Cert.NoPlugin"),
+          i18n("The SSL/TLS support plugin is not available. "
+               "Certificate validation cannot be done."));
+      return;
+    }
+
     QCA::CertificateChain chain;
     Q_FOREACH (const QByteArray &data, m_certData) {
-       chain << QCA::Certificate::fromDER(data);
+        chain << QCA::Certificate::fromDER(data);
     }
 =

     if (verifyCertChain(chain)) {
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic