first part: const or not const that is the question; refs #6
This commit is contained in:
@@ -17,6 +17,17 @@
|
|||||||
#include <openssl/err.h>
|
#include <openssl/err.h>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
|
#include <openssl/opensslv.h>
|
||||||
|
#ifndef OPENSSL_VERSION_NUMBER
|
||||||
|
# error OpenSSL Version Number not Found
|
||||||
|
#elif OPENSSL_VERSION_NUMBER < 0x01000000L
|
||||||
|
# define OPENSSL_0
|
||||||
|
# define V0_CONST const
|
||||||
|
#else
|
||||||
|
# define OPENSSL_1
|
||||||
|
# define V0_CONST /* no const in openssl 1.0.0 */
|
||||||
|
#endif
|
||||||
|
|
||||||
#include <openssl/x509v3.h> // BASIC_CONSTRAINTS
|
#include <openssl/x509v3.h> // BASIC_CONSTRAINTS
|
||||||
#include <openssl/bn.h>
|
#include <openssl/bn.h>
|
||||||
#include <cryptaux.hxx>
|
#include <cryptaux.hxx>
|
||||||
@@ -724,7 +735,7 @@ namespace openssl {
|
|||||||
//! Initialize from DER encoded cerificate.
|
//! Initialize from DER encoded cerificate.
|
||||||
X509(const std::string& der): _x509(0) {
|
X509(const std::string& der): _x509(0) {
|
||||||
OPENSSL_LOG("log");
|
OPENSSL_LOG("log");
|
||||||
unsigned char* c((unsigned char*)der.begin().operator->());
|
V0_CONST unsigned char* c((unsigned char*)der.begin().operator->());
|
||||||
if (!(_x509=d2i_X509(0, &c, der.size())) ||
|
if (!(_x509=d2i_X509(0, &c, der.size())) ||
|
||||||
(const char*)c!=der.begin().operator->()+der.size())
|
(const char*)c!=der.begin().operator->()+der.size())
|
||||||
throw x509_decoding_failed(der);
|
throw x509_decoding_failed(der);
|
||||||
@@ -734,7 +745,7 @@ namespace openssl {
|
|||||||
unsigned char* d(0);
|
unsigned char* d(0);
|
||||||
int len(i2d_X509(o._x509, &d));
|
int len(i2d_X509(o._x509, &d));
|
||||||
if (!len) throw x509_copy_failed();
|
if (!len) throw x509_copy_failed();
|
||||||
unsigned char* d2(d);
|
V0_CONST unsigned char* d2(d);
|
||||||
_x509 = d2i_X509(0, &d2, len);
|
_x509 = d2i_X509(0, &d2, len);
|
||||||
OPENSSL_free(d);
|
OPENSSL_free(d);
|
||||||
if (!_x509) throw x509_copy_failed();
|
if (!_x509) throw x509_copy_failed();
|
||||||
@@ -755,7 +766,7 @@ namespace openssl {
|
|||||||
unsigned char* d(0);
|
unsigned char* d(0);
|
||||||
int len(i2d_X509(o._x509, &d));
|
int len(i2d_X509(o._x509, &d));
|
||||||
if (!len) throw x509_copy_failed();
|
if (!len) throw x509_copy_failed();
|
||||||
unsigned char* d2(d);
|
V0_CONST unsigned char* d2(d);
|
||||||
_x509 = d2i_X509(0, &d2, len);
|
_x509 = d2i_X509(0, &d2, len);
|
||||||
OPENSSL_free(d);
|
OPENSSL_free(d);
|
||||||
if (!_x509) throw x509_copy_failed();
|
if (!_x509) throw x509_copy_failed();
|
||||||
|
Reference in New Issue
Block a user