Mercurial > trustbridge
view ui/certificate.h @ 222:53ea9b975d1c
Cleanup windowsstore.c
The cause for the test failure was that ADD_ALWAYS did not
add a duplicate in the Root store but did add a duplicate
in the Memory Store. We now check if the certificate is already
in the store before actually installing it.
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Thu, 27 Mar 2014 14:16:22 +0000 |
parents | 2551ad24d3c2 |
children | 9f0865dc8b14 |
line wrap: on
line source
#ifndef CERTIFICATE_H #define CERTIFICATE_H /** * @file certificate.h * @brief Class around native certificates. * */ #include <QByteArray> #include <QMap> #include <QString> #ifdef Q_OS_WIN #include <windows.h> #include <wincrypt.h> #endif class Certificate { public: /** @brief construct a certificate from a line of a certificate list. * * The first two characters of the string are expected to be * the command. I: or R: * * @param[in] b64Line The line from the certificate list. **/ Certificate(const QString& b64Line = QString()); /** @brief check if this certificate could be parsed */ bool isValid() const {return mValid;} /** @brief get a short description of the certificate * * This description should be used as a short overview * for this certificate * **/ QString shortDescription() const; /** @brief get details for the certificate * * Get the X509 information that is returned by x509_crt_info * **/ const QString& details() const {return mDetails;} /** @brief get the line from which this certificate was constructed * * The resulting line includes the instruction e.g. * * I:BASE64ENCODEDATA... * **/ const QString& base64Line() const {return mBaseLine;} /** @brief get a single attribute of the subject * * Returns a single attribute of the subject such as the * common name. * * @param[in] attr the Attribute name. to get e.g. "CN" * * @returns the value of the attribute or a null string **/ QString getSubjectAttr(const QString& attr) const; private: bool mValid; QString mDetails; QString mBaseLine; QMap <QString, QString> mSubjectAttrs; }; #endif