00001 00009 #ifndef __RECIPIENTINFO_H__ 00010 #define __RECIPIENTINFO_H__ 00011 00012 #include "PKIFCMSDLL.h" 00013 #include <vector> 00014 00015 FD_SMART_PTR(CPKIFKeyTransRecipientInfo); 00016 FD_SMART_PTR(CPKIFKEKRecipInfoDetails); 00017 FD_SMART_PTR(CPKIFBuffer); 00018 00024 class PKIFCMS_API CPKIFRecipientInfo 00025 { 00026 public: 00027 CPKIFRecipientInfo(); 00028 CPKIFRecipientInfo (const CPKIFBufferPtr& riBuf); 00029 virtual ~CPKIFRecipientInfo(); 00030 00031 //currently support only ktri and kekri 00032 CPKIFKeyTransRecipientInfoPtr GetKeyTransRecipInfo() const; 00033 CPKIFKEKRecipInfoDetailsPtr GetKEKRecipInfo() const; 00034 00035 private: 00037 CPKIFRecipientInfo(const CPKIFRecipientInfo& copy); 00039 CPKIFRecipientInfo& operator=(const CPKIFRecipientInfo& rhs); //added 4/6/2004 00040 00041 struct CPKIFRecipientInfoImpl *m_impl; 00042 }; 00043 DECLARE_SMART_POINTERS(CPKIFRecipientInfo); 00044 typedef std::vector<CPKIFRecipientInfoPtr, PKIFAlloc<CPKIFRecipientInfoPtr> > CPKIFRecipientInfoList; 00045 DECLARE_SMART_POINTERS(CPKIFRecipientInfoList); 00046 // typedef for app compatibility 00047 typedef CPKIFRecipientInfoList CPKIFRecipientInfos; 00048 DECLARE_SMART_POINTERS(CPKIFRecipientInfos); 00049 00050 #endif //__RECIPIENTINFO_H__