Skip to content
Snippets Groups Projects
Select Git revision
  • b08c465abba61658e189a13530758422e6b39739
  • master default protected
  • release/202005
  • release/202001
  • release/201912
  • release/201911
  • release/releaseWindowsTestOne
  • release/releaseTest
  • release/releaseWindowsTest
  • release/windowsReleaseTest
  • release/201910
  • release/qt/201910
  • release/windows-test/201910
  • release/201908
  • release/201906
  • release/201905
  • release/201904
  • release/201903
  • release/201902
  • release/201901
  • release/201812
  • 1.0.0
  • 0.3.0
  • 0.2.1
  • 0.2.0
  • 0.1.0
26 results

securityvalidationmodel_p.h

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    securityvalidationmodel_p.h 2.71 KiB
    /****************************************************************************
     *   Copyright (C) 2015 by Savoir-Faire Linux                               *
     *   Author : Emmanuel Lepage Vallee <emmanuel.lepage@savoirfairelinux.com> *
     *                                                                          *
     *   This library is free software; you can redistribute it and/or          *
     *   modify it under the terms of the GNU Lesser General Public             *
     *   License as published by the Free Software Foundation; either           *
     *   version 2.1 of the License, or (at your option) any later version.     *
     *                                                                          *
     *   This library is distributed in the hope that it will be useful,        *
     *   but WITHOUT ANY WARRANTY; without even the implied warranty of         *
     *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU      *
     *   Lesser General Public License for more details.                        *
     *                                                                          *
     *   You should have received a copy of the GNU General Public License      *
     *   along with this program.  If not, see <http://www.gnu.org/licenses/>.  *
     ***************************************************************************/
    #ifndef SECURITYVALIDATIONMODELPRIVATE_H
    #define SECURITYVALIDATIONMODELPRIVATE_H
    
    class SecurityFlaw;
    class Account;
    class Certificate;
    
    #include <certificate.h>
    #include "private/matrixutils.h"
    
    class SecurityValidationModelPrivate : public QObject
    {
    public:
       SecurityValidationModelPrivate(Account* account, SecurityValidationModel* parent);
    
       //Attributes
       QList<SecurityFlaw*>  m_lCurrentFlaws       ;
       SecurityValidationModel::SecurityLevel m_CurrentSecurityLevel;
       Account*      m_pAccount            ;
       QHash< int, QHash< int, SecurityFlaw* > > m_hFlaws;
       Certificate* m_pCa;
       Certificate* m_pCert;
       Certificate* m_pPrivateKey;
    
    
       ///Messages to show to the end user
       static const QString messages[enum_class_size<SecurityValidationModel::AccountSecurityFlaw>()];
    
       //Static mapping
       static const TypedStateMachine< SecurityValidationModel::SecurityLevel , SecurityValidationModel::AccountSecurityFlaw > maximumSecurityLevel;
       static const TypedStateMachine< SecurityValidationModel::Severity      , SecurityValidationModel::AccountSecurityFlaw > flawSeverity        ;
    
       static const TypedStateMachine< SecurityValidationModel::SecurityLevel , Certificate::Checks > maximumCertificateSecurityLevel;
       static const TypedStateMachine< SecurityValidationModel::Severity      , Certificate::Checks > certificateFlawSeverity        ;
    
       SecurityValidationModel* q_ptr;
    
    public Q_SLOTS:
       void update();
    
    };
    
    #endif