1
0
Fork 0
cuberite-2a/src/PolarSSL++/X509Cert.h

42 lines
629 B
C
Raw Normal View History

2014-04-24 19:34:45 +00:00
// X509Cert.h
// Declares the cX509Cert class representing a wrapper over X509 certs in PolarSSL
#pragma once
#include "polarssl/x509_crt.h"
class cX509Cert
{
2014-04-27 20:27:53 +00:00
friend class cSslContext;
2016-02-05 21:45:45 +00:00
2014-04-24 19:34:45 +00:00
public:
cX509Cert(void);
~cX509Cert(void);
2016-02-05 21:45:45 +00:00
2014-04-24 19:34:45 +00:00
/** Parses the certificate chain data into the context.
Returns 0 on succes, or PolarSSL error code on failure. */
int Parse(const void * a_CertContents, size_t a_Size);
2016-02-05 21:45:45 +00:00
2014-04-24 19:34:45 +00:00
protected:
x509_crt m_Cert;
2014-04-27 20:27:53 +00:00
/** Returns the internal cert ptr. Only use in PolarSSL API calls. */
x509_crt * GetInternal(void) { return &m_Cert; }
2014-04-24 19:34:45 +00:00
} ;
2017-07-20 11:19:18 +00:00
typedef std::shared_ptr<cX509Cert> cX509CertPtr;
2014-04-27 20:27:53 +00:00
2014-04-24 19:34:45 +00:00