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