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