00001 00009 #ifndef __AuthorityInfoAccess_H__ 00010 #define __AuthorityInfoAccess_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 #include <vector> 00020 00021 #include "X509Extension.h" 00022 00023 #include <iosfwd> 00024 00025 // forward declaration 00026 struct CPKIFAuthorityInfoAccessImpl; 00027 FD_LIST_PTR(CPKIFAccessDescription); 00028 00048 class CAC_API CPKIFAuthorityInfoAccess : public CPKIFX509Extension 00049 { 00050 public: 00051 CPKIFAuthorityInfoAccess(); 00052 //CPKIFAuthorityInfoAccess(const CACX509V3Extension& ext); 00053 CPKIFAuthorityInfoAccess(const bool& criticality, const CPKIFBufferPtr& ext); 00054 //CPKIFAuthorityInfoAccess(const CACX509V3AuthorityInfoAccessSyntax& aia); 00055 virtual ~CPKIFAuthorityInfoAccess(); 00060 static char extOID[]; 00061 const CPKIFOIDPtr oid() const; 00062 00063 CPKIFBufferPtr value() const; 00064 00065 CPKIFAccessDescriptionListPtr GetAccessDescriptions() const; 00066 00067 private: 00068 CPKIFAuthorityInfoAccess(const CPKIFAuthorityInfoAccess& ext); 00069 CPKIFAuthorityInfoAccess& operator=(const CPKIFAuthorityInfoAccess& rhs); //added 4/6/2004 00070 00071 CPKIFAuthorityInfoAccessImpl *m_impl; 00072 }; 00073 DECLARE_SMART_POINTERS(CPKIFAuthorityInfoAccess); 00074 00075 CAC_API std::ostream& operator<<(std::ostream & os, const CPKIFAuthorityInfoAccessPtr & aia); 00076 CAC_API std::ostream& operator<<(std::ostream & os, const CPKIFAuthorityInfoAccess & aia); 00077 00078 #endif