00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef __CODEX_ASN1_OCTETSTRING_H__
00019 #define __CODEX_ASN1_OCTETSTRING_H__
00020
00021 #include "Base.h"
00022
00023 namespace CODEX_ASN1
00024 {
00030 class OctetString : public Base
00031 {
00032 public :
00034 OctetString();
00036 OctetString( const ustring& value );
00038 OctetString( const ASN1_OCTET_STRING* asn1 );
00040 OctetString( const OctetString& aOS );
00042 virtual ~OctetString();
00043
00045 void operator=( const OctetString& aOS );
00046
00048 ustring value() const { return m_value; }
00050 const ASN1_OCTET_STRING* asn1() const { return m_asn1; }
00051
00052 int marshal( unsigned char ** pp ) const;
00053 void* unmarshal( void* bogus, unsigned char** pp, long length );
00054
00055 protected :
00056
00057 private :
00058 ustring m_value;
00059 ASN1_OCTET_STRING* m_asn1;
00060 };
00061
00062 }
00063
00064 #endif