00001 00009 #ifndef __COUNTERSIGNATUREATTRIBUTE_H__ 00010 #define __COUNTERSIGNATUREATTRIBUTE_H__ 00011 00012 #include "PKIFCMSDLL.h" 00013 #define PKIFCMS_API_FACTORY 00014 00015 #include "Attribute.h" 00016 00023 class PKIFCMS_API CPKIFCountersignatureAttribute : public CPKIFAttribute 00024 { 00025 public: 00026 CPKIFCountersignatureAttribute(); 00027 CPKIFCountersignatureAttribute(const CPKIFBufferPtr& ext); 00028 ~CPKIFCountersignatureAttribute(); 00029 00030 static char extOID[]; 00031 00032 //generic attribute functions 00033 CPKIFOIDPtr GetOID() const; 00034 void GetValues(CPKIFBufferList& values) const; 00035 00036 //this attribute object acts on encoded signer infos only 00037 void AddValue(CPKIFBufferPtr& encodedSignerInfo); 00038 00039 //this function can be used to replace all entries in an attribute 00040 void SetValues(CPKIFBufferList& blList); 00041 00042 private: 00044 CPKIFCountersignatureAttribute(const CPKIFCountersignatureAttribute& copy); 00046 CPKIFCountersignatureAttribute& operator=(const CPKIFCountersignatureAttribute& rhs); //added 4/6/2004 00047 00048 struct CPKIFCountersignatureAttributeImpl *m_impl; 00049 00050 }; 00051 DECLARE_SMART_POINTERS(CPKIFCountersignatureAttribute); 00052 00053 00054 #endif //__COUNTERSIGNATUREATTRIBUTE_H__