|
|
|
@ -159,7 +159,7 @@ bool PaymentRequestPlus::getMerchant(X509_STORE* certStore, QString& merchant) c
@@ -159,7 +159,7 @@ bool PaymentRequestPlus::getMerchant(X509_STORE* certStore, QString& merchant) c
|
|
|
|
|
std::string data_to_verify; // Everything but the signature
|
|
|
|
|
rcopy.SerializeToString(&data_to_verify); |
|
|
|
|
|
|
|
|
|
#if OPENSSL_VERSION_NUMBER >= 0x10100000L |
|
|
|
|
#if HAVE_DECL_EVP_MD_CTX_NEW |
|
|
|
|
EVP_MD_CTX *ctx = EVP_MD_CTX_new(); |
|
|
|
|
if (!ctx) throw SSLVerifyError("Error allocating OpenSSL context."); |
|
|
|
|
#else |
|
|
|
@ -174,7 +174,7 @@ bool PaymentRequestPlus::getMerchant(X509_STORE* certStore, QString& merchant) c
@@ -174,7 +174,7 @@ bool PaymentRequestPlus::getMerchant(X509_STORE* certStore, QString& merchant) c
|
|
|
|
|
!EVP_VerifyFinal(ctx, (const unsigned char*)paymentRequest.signature().data(), (unsigned int)paymentRequest.signature().size(), pubkey)) { |
|
|
|
|
throw SSLVerifyError("Bad signature, invalid payment request."); |
|
|
|
|
} |
|
|
|
|
#if OPENSSL_VERSION_NUMBER >= 0x10100000L |
|
|
|
|
#if HAVE_DECL_EVP_MD_CTX_NEW |
|
|
|
|
EVP_MD_CTX_free(ctx); |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|