view ui/certificatelist.h @ 856:797aa8d9c785

(issue48) Fallback to HKEY_USERS on hive load failure If the hive can not be loaded it might mean that the user is currently logged on. In that case we can access his registry via HKEY_USERS.
author Andre Heinecke <andre.heinecke@intevation.de>
date Thu, 31 Jul 2014 12:56:26 +0200
parents 4204ae2753d9
children f89b41fa7048
line wrap: on
line source
/* Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik
 * Software engineering by Intevation GmbH
 *
 * This file is Free Software under the GNU GPL (v>=2)
 * and comes with ABSOLUTELY NO WARRANTY!
 * See LICENSE.txt for details.
 */
#ifndef CERTIFICATELIST_H
#define CERTIFICATELIST_H
/**
 * This class handles a certificate list file.
 * It checks for the validity of that certificate
 * list file and provides an API for working with that
 * file.
 *
 * The List is parsed on Initialization. You should
 * check the Status afterwards to see if the file
 * could be parsed.
 *
 */

class QByteArray;

#include <QString>
#include <QDateTime>
#include <QObject>

#include "listutil.h"
#include "certificate.h"

class CertificateList
{
public:
    CertificateList();
    CertificateList(const char *fileName);

    list_status_t getStatus() {return mStatus;}

    /** @brief Read a list
     *
     * @param[in] fileName the filename of the list to read
     *
     * @return status of the read. Vaild on success.
     */
    list_status_t readList(const char *fileName);

    /** @brief Returns true if the list is Valid 
     *
     *  A list is valid only if the signature matched and the
     *  list could be parsed.
     */
    bool isValid() const {return mStatus == Valid;}

    /* @brief get a list of certificate objects in this list */
    const QList<Certificate>& getCertificates() const;

    /* @brief get the raw certificate list */
    const QString& rawData() const {return mData;}

    /* @brief get the absolute filename of the certificate */
    const QString& fileName() const {return mFileName;}

    /* @brief get the list date. */
    const QDateTime& date() const {return mDate;}

private:
    QList<Certificate> mCertificates;
    QString mData;
    QString mFileName;
    list_status_t mStatus;
    QDateTime mDate;
};
#endif

http://wald.intevation.org/projects/trustbridge/