00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef __CODEX_ASN1_CERTIFICATE_H__
00019 #define __CODEX_ASN1_CERTIFICATE_H__
00020
00021 #include <openssl/x509.h>
00022 #include "Base.h"
00023
00024 namespace CODEX_ASN1
00025 {
00029 class Certificate : public Base
00030 {
00031 public :
00033 Certificate();
00035 Certificate( X509* value );
00037 Certificate( const Certificate& aCert );
00039 virtual ~Certificate();
00040
00042 void operator=( const Certificate& aCert );
00043
00045 const X509* value() const { return m_value; }
00046
00047 int marshal( unsigned char ** pp ) const;
00048 void* unmarshal( void* bogus, unsigned char** pp, long length );
00049
00055 void* fromPEMFile(const char* fname);
00056
00057 protected :
00058
00059 private :
00060 X509* m_value;
00061 };
00062
00063 }
00064
00065 #endif