00001 00009 #ifndef __CRLDistributionPoints_H__ 00010 #define __CRLDistributionPoints_H__ 00011 00012 #if _MSC_VER > 1000 00013 #pragma once 00014 #endif // _MSC_VER > 1000 00015 00016 00017 #include "PKIFdll.h" 00018 #define CAC_API_FACTORY 00019 00020 #include "X509Extension.h" 00021 00022 #include <vector> 00023 00024 #include <iosfwd> 00025 00026 // forward declaration 00027 struct CPKIFCRLDistributionPointsImpl; 00028 00029 FD_LIST_PTR(CPKIFCRLDistributionPoint); 00030 00052 class CAC_API CPKIFCRLDistributionPoints : public CPKIFX509Extension 00053 { 00054 public: 00055 CPKIFCRLDistributionPoints(); 00056 //CPKIFCRLDistributionPoints(const CACX509V3Extension& ext); 00057 CPKIFCRLDistributionPoints(const bool& criticality, const CPKIFBufferPtr& ext); 00058 virtual ~CPKIFCRLDistributionPoints(); 00063 static char extOID[]; 00064 const CPKIFOIDPtr oid() const; 00065 00066 CPKIFCRLDistributionPointListPtr DPs() const; 00067 CPKIFBufferPtr value() const; 00068 00069 private: 00070 CPKIFCRLDistributionPoints(const CPKIFCRLDistributionPoints& ext); 00071 CPKIFCRLDistributionPoints& operator=(const CPKIFCRLDistributionPoints& rhs); //added 4/6/2004 00072 00073 struct CPKIFCRLDistributionPointsImpl *m_impl; 00074 }; 00075 DECLARE_SMART_POINTERS(CPKIFCRLDistributionPoints); 00076 00077 CAC_API std::ostream& operator<<(std::ostream & os, const CPKIFCRLDistributionPointsPtr & extension); 00078 CAC_API std::ostream& operator<<(std::ostream & os, const CPKIFCRLDistributionPoints& extension); 00079 00080 #endif