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 <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/bn.h>
|
||||
#include <cryptaux.hxx>
|
||||
@@ -724,7 +735,7 @@ namespace openssl {
|
||||
//! Initialize from DER encoded cerificate.
|
||||
X509(const std::string& der): _x509(0) {
|
||||
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())) ||
|
||||
(const char*)c!=der.begin().operator->()+der.size())
|
||||
throw x509_decoding_failed(der);
|
||||
@@ -734,7 +745,7 @@ namespace openssl {
|
||||
unsigned char* d(0);
|
||||
int len(i2d_X509(o._x509, &d));
|
||||
if (!len) throw x509_copy_failed();
|
||||
unsigned char* d2(d);
|
||||
V0_CONST unsigned char* d2(d);
|
||||
_x509 = d2i_X509(0, &d2, len);
|
||||
OPENSSL_free(d);
|
||||
if (!_x509) throw x509_copy_failed();
|
||||
@@ -755,7 +766,7 @@ namespace openssl {
|
||||
unsigned char* d(0);
|
||||
int len(i2d_X509(o._x509, &d));
|
||||
if (!len) throw x509_copy_failed();
|
||||
unsigned char* d2(d);
|
||||
V0_CONST unsigned char* d2(d);
|
||||
_x509 = d2i_X509(0, &d2, len);
|
||||
OPENSSL_free(d);
|
||||
if (!_x509) throw x509_copy_failed();
|
||||
|
Reference in New Issue
Block a user