00001 00010 #ifndef __PKIFCERTSTATUS_H__ 00011 #define __PKIFCERTSTATUS_H__ 00012 00013 #include "PKIFdll.h" 00014 #include "PathConstants.h" 00015 00016 #include <vector> 00017 00018 FD_SMART_PTR(IPKIFRevSourceInfo); 00019 FD_LIST_PTR(RevocationSource); 00020 struct CPKIFCertStatusImpl; 00040 class CAC_API CPKIFCertStatus 00041 { 00042 public: 00043 CPKIFCertStatus(); 00044 virtual ~CPKIFCertStatus(); 00045 00046 int GetDiagnosticCode() const; 00047 void SetDiagnosticCode(int errorCode); //changed 3/9/2004 (int to void) 00048 00049 bool GetSignatureVerified() const; 00050 void SetSignatureVerified(bool sigVerified); 00051 00052 RevocationStatus GetRevocationStatus() const; 00053 void SetRevocationStatus(RevocationStatus revStatus); 00054 00055 bool GetPassedValidationChecks() const; 00056 void SetPassedValidationChecks(bool valChecks); 00057 00058 //nixed previous source functions and added these 03/31/2003 00059 void AddRevocationSource(int revSourceType, IPKIFRevSourceInfoPtr& revSource, RevocationStatus status, int errorCode = 0); 00060 void GetRevocationSources(RevocationSourceList& rsl); 00061 00062 //added 04/04/2003 00063 bool GetIsTrustAnchor()const; //trust anchor certs are no subject to basic checks, sig checks, etc. 00064 //(hence above bools will be false when a "path" to a trust root is validated) 00065 void SetIsTrustAnchor(bool isTrustAnchor); 00066 00067 private: 00069 CPKIFCertStatus(const CPKIFCertStatus& copy); 00071 CPKIFCertStatus& operator=(const CPKIFCertStatus& rhs); //added 4/6/2004 00072 00073 struct CPKIFCertStatusImpl * m_impl; 00074 }; 00075 DECLARE_SMART_POINTERS(CPKIFCertStatus); 00076 #endif 00077