PathResults.h
Go to the documentation of this file.00001
00011 #ifndef __PATHRESULTS_H__
00012 #define __PATHRESULTS_H__
00013
00014 #include "PKIFdll.h"
00015 #include "PathConstants.h"
00016
00017
00018 FD_SMART_PTR(CPKIFAlgorithmIdentifier);
00019 struct CPKIFPathValidationResultsImpl;
00020
00021 FD_LIST_PTR(CPKIFPolicyInformation);
00022 FD_SMART_PTR(CPKIFAlgorithmIdentifier);
00023 FD_SMART_PTR(IPKIFExtHandlerData);
00024 FD_SMART_PTR(CPKIFCertStatus);
00025 FD_SMART_PTR(IPKIFTrustAnchor);
00026 FD_SMART_PTR(CPKIFCertificateNodeEntry);
00027 FD_LIST_PTR(CPKIFGeneralSubtree);
00028 #include <vector>
00029
00039 class CAC_API CPKIFPathValidationResults
00040 {
00041 public:
00042 CPKIFPathValidationResults();
00043 virtual ~CPKIFPathValidationResults();
00044
00045
00046
00047 bool PathSuccessfullyValidated() const;
00048
00049 bool GetBasicChecksSuccessfullyPerformed() const;
00050 void SetBasicChecksSuccessfullyPerformed(bool b);
00051
00052 bool GetCertSignaturesVerified() const;
00053 void SetCertSignaturesVerified(bool b);
00054
00055
00056 bool GetTargetIsTrustAnchor() const;
00057 void SetTargetIsTrustAnchor(bool b);
00058
00059 RevocationStatus GetRevocationStatusMostSevere() const;
00060 void SetRevocationStatusMostSevere(RevocationStatus r);
00061
00062
00063
00064 CPKIFCertStatusPtr GetCertStatus() const;
00065 void SetCertStatus(CPKIFCertStatusPtr& certStatus);
00066
00067
00068 int DiagnosticCode() const;
00069
00070
00071
00072 void SetAuthorityConstrainedSet(std::vector<CPKIFPolicyInformationListPtr>* authSet);
00073 const std::vector<CPKIFPolicyInformationListPtr>* GetAuthorityConstrainedSetTable();
00074 void GetAuthorityConstrainedSet(CPKIFPolicyInformationListPtr& authSet);
00075
00076
00077 void GetUserConstrainedSet(CPKIFPolicyInformationListPtr& userSet);
00078 void SetUserConstrainedSet(CPKIFPolicyInformationListPtr& userSet);
00079
00080
00081 bool GetExplicitPolicyIndicator() const;
00082 void SetExplicitPolicyIndicator(bool e);
00083
00084
00085 void SetCertificate(CPKIFCertificateNodeEntryPtr& cert);
00086 CPKIFCertificateNodeEntryPtr GetCertificate() const;
00087
00088
00089 void SetWorkingParams(CPKIFAlgorithmIdentifierPtr& wp);
00090 CPKIFAlgorithmIdentifierPtr GetWorkingParams() const;
00091
00092
00093 void SetExtHandlerData(const std::string& id, IPKIFExtHandlerDataPtr& data);
00094 IPKIFExtHandlerDataPtr GetExtHandlerData(const std::string& id) const;
00095
00096
00097 bool GetExtensionHandlerChecksSuccessfullyPerformed() const;
00098 void SetExtensionHandlerChecksSuccessfullyPerformed(bool b);
00099
00100
00101 IPKIFTrustAnchorPtr GetTrustAnchor() const;
00102 void SetTrustAnchor(IPKIFTrustAnchorPtr& ta);
00103
00104
00105 bool IsPermittedSubtreesSet();
00106 CPKIFGeneralSubtreeListPtr GetPermittedSubtrees() const;
00107 void SetPermittedSubtrees(CPKIFGeneralSubtreeListPtr& subtree);
00108
00109 bool IsExcludedSubtreesSet();
00110 CPKIFGeneralSubtreeListPtr GetExcludedSubtrees() const;
00111 void SetExcludedSubtrees(CPKIFGeneralSubtreeListPtr& subtree);
00112
00113 bool IsPendingExplicitPolicySet();
00114 int GetPendingExplicitPolicy() const;
00115 void SetPendingExplicitPolicy(int skipCerts);
00116
00117 bool IsPendingPolicyMappingSet();
00118 int GetPendingPolicyMapping() const;
00119 void SetPendingPolicyMapping(int skipCerts);
00120
00121 bool IsPendingAnyPolicySet();
00122 int GetPendingAnyPolicy() const;
00123 void SetPendingAnyPolicy(int skipCerts);
00124
00125 bool IsPendingPathLengthSet();
00126 int GetPendingPathLength() const;
00127 void SetPendingPathLength(int certs);
00128
00129 private:
00131 CPKIFPathValidationResults(const CPKIFPathValidationResults& copy);
00133 CPKIFPathValidationResults& operator=(const CPKIFPathValidationResults& rhs);
00134
00135 CPKIFPathValidationResultsImpl *m_impl;
00136 };
00137 DECLARE_SMART_POINTERS(CPKIFPathValidationResults);
00138
00139 typedef const std::vector<CPKIFPolicyInformationListPtr>* CPKIFAuthorityConstrainedSetTable;
00140 #endif