00001 00009 #ifndef _PKIFNSSTRUSTSTORE_H_ 00010 #define _PKIFNSSTRUSTSTORE_H_ 00011 00012 #include "PKIFdll.h" 00013 00014 #include "IPKIFTrustCache.h" 00015 #include "IPKIFColleague.h" 00016 #include "components.h" 00017 00018 struct PKIFNSSTrustStoreImpl; 00028 class CAC_API CPKIFNSSTrustStore : public IPKIFTrustCache, public IPKIFColleague 00029 { 00030 public: 00031 CPKIFNSSTrustStore(const std::string & dbdir = ""); 00032 ~CPKIFNSSTrustStore(); 00033 00034 //returns all trust anchors with subject name equal to value passed in subDN parameter 00035 bool GetTrustRoots(const CPKIFNamePtr& subDN, IPKIFTrustAnchorList& root); 00036 void Initialize(void); 00037 private: 00038 //added 8/21/2004 00040 CPKIFNSSTrustStore(const CPKIFNSSTrustStore& copy); 00042 CPKIFNSSTrustStore& operator=(const CPKIFNSSTrustStore& rhs); 00043 00044 PKIFNSSTrustStoreImpl * m_impl; 00045 enum {thisComponent = TOOLKIT_SR_NSSTRUSTSTORE}; 00046 }; 00047 DECLARE_SMART_POINTERS(CPKIFNSSTrustStore); 00048 00049 #endif 00050