File libksi-build-with-openssl-1.1.0.patch of Package libksi
Index: libksi-3.4.0.5/src/ksi/hash_openssl.c
===================================================================
--- libksi-3.4.0.5.orig/src/ksi/hash_openssl.c
+++ libksi-3.4.0.5/src/ksi/hash_openssl.c
@@ -102,7 +102,9 @@ int KSI_isHashAlgorithmSupported(KSI_Has
void KSI_DataHasher_free(KSI_DataHasher *hasher) {
if (hasher != NULL) {
- KSI_free(hasher->hashContext);
+ if (hasher->hashContext != NULL) {
+ EVP_MD_CTX_destroy(hasher->hashContext);
+ }
KSI_free(hasher);
}
}
@@ -171,7 +173,7 @@ int KSI_DataHasher_reset(KSI_DataHasher
context = hasher->hashContext;
if (context == NULL) {
- context = KSI_new(EVP_MD_CTX);
+ context = EVP_MD_CTX_create();
if (context == NULL) {
KSI_pushError(hasher->ctx, res = KSI_OUT_OF_MEMORY, NULL);
goto cleanup;
@@ -179,7 +181,7 @@ int KSI_DataHasher_reset(KSI_DataHasher
hasher->hashContext = context;
} else {
- EVP_MD_CTX_cleanup(context);
+ EVP_MD_CTX_destroy(context);
}
if (!EVP_DigestInit(context, evp_md)) {
Index: libksi-3.4.0.5/src/ksi/pkitruststore_openssl.c
===================================================================
--- libksi-3.4.0.5.orig/src/ksi/pkitruststore_openssl.c
+++ libksi-3.4.0.5/src/ksi/pkitruststore_openssl.c
@@ -907,13 +907,13 @@ cleanup:
int KSI_PKITruststore_verifyRawSignature(KSI_CTX *ctx, const unsigned char *data, size_t data_len, const char *algoOid, const unsigned char *signature, size_t signature_len, const KSI_PKICertificate *certificate) {
int res;
ASN1_OBJECT* algorithm = NULL;
- EVP_MD_CTX md_ctx;
+ EVP_MD_CTX *md_ctx;
X509 *x509 = NULL;
const EVP_MD *evp_md;
EVP_PKEY *pubKey = NULL;
/* Needs to be initialized before jumping to cleanup. */
- EVP_MD_CTX_init(&md_ctx);
+ md_ctx = EVP_MD_CTX_create();
KSI_ERR_clearErrors(ctx);
@@ -956,17 +956,17 @@ int KSI_PKITruststore_verifyRawSignature
goto cleanup;
}
- if (!EVP_VerifyInit(&md_ctx, evp_md)) {
+ if (!EVP_VerifyInit(md_ctx, evp_md)) {
KSI_pushError(ctx, res = KSI_CRYPTO_FAILURE, NULL);
goto cleanup;
}
- if (!EVP_VerifyUpdate(&md_ctx, (unsigned char *)data, data_len)) {
+ if (!EVP_VerifyUpdate(md_ctx, (unsigned char *)data, data_len)) {
KSI_pushError(ctx, res = KSI_CRYPTO_FAILURE, NULL);
goto cleanup;
}
- res = EVP_VerifyFinal(&md_ctx, (unsigned char *)signature, (unsigned)signature_len, pubKey);
+ res = EVP_VerifyFinal(md_ctx, (unsigned char *)signature, (unsigned)signature_len, pubKey);
if (res < 0) {
KSI_pushError(ctx, res = KSI_CRYPTO_FAILURE, NULL);
goto cleanup;
@@ -982,7 +982,7 @@ int KSI_PKITruststore_verifyRawSignature
cleanup:
- EVP_MD_CTX_cleanup(&md_ctx);
+ EVP_MD_CTX_destroy(md_ctx);
if (algorithm != NULL) ASN1_OBJECT_free(algorithm);
if (pubKey != NULL) EVP_PKEY_free(pubKey);