47 lines
1.9 KiB
C
47 lines
1.9 KiB
C
--- gsoap/plugin/smdevp.c.orig 2018-07-22 18:18:22 UTC
|
|
+++ gsoap/plugin/smdevp.c
|
|
@@ -480,7 +480,7 @@ soap_smd_init(struct soap *soap, struct soap_smd_data
|
|
/* allocate and init the OpenSSL HMAC or EVP_MD context */
|
|
if ((alg & SOAP_SMD_ALGO) == SOAP_SMD_HMAC)
|
|
{
|
|
-#if (OPENSSL_VERSION_NUMBER < 0x10100000L)
|
|
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER))
|
|
data->ctx = (void*)SOAP_MALLOC(soap, sizeof(HMAC_CTX));
|
|
if (data->ctx)
|
|
HMAC_CTX_init((HMAC_CTX*)data->ctx);
|
|
@@ -490,7 +490,7 @@ soap_smd_init(struct soap *soap, struct soap_smd_data
|
|
}
|
|
else
|
|
{
|
|
-#if (OPENSSL_VERSION_NUMBER < 0x10100000L)
|
|
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER))
|
|
data->ctx = (void*)SOAP_MALLOC(soap, sizeof(EVP_MD_CTX));
|
|
if (data->ctx)
|
|
EVP_MD_CTX_init((EVP_MD_CTX*)data->ctx);
|
|
@@ -510,7 +510,7 @@ soap_smd_init(struct soap *soap, struct soap_smd_data
|
|
case SOAP_SMD_SHA1:
|
|
type = EVP_sha1();
|
|
break;
|
|
-#if (OPENSSL_VERSION_NUMBER >= 0x0090800fL)
|
|
+#if (OPENSSL_VERSION_NUMBER >= 0x0090800fL || defined(LIBRESSL_VERSION_NUMBER))
|
|
case SOAP_SMD_SHA224:
|
|
type = EVP_sha224();
|
|
break;
|
|
@@ -662,7 +662,7 @@ soap_smd_cleanup(struct soap *soap, struct soap_smd_da
|
|
(void)soap;
|
|
if (data->ctx)
|
|
{
|
|
-#if (OPENSSL_VERSION_NUMBER < 0x10100000L)
|
|
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER))
|
|
if ((data->alg & SOAP_SMD_ALGO) == SOAP_SMD_HMAC)
|
|
HMAC_CTX_cleanup((HMAC_CTX*)data->ctx);
|
|
else
|
|
@@ -706,7 +706,7 @@ soap_smd_check(struct soap *soap, struct soap_smd_data
|
|
}
|
|
if (data->ctx)
|
|
{
|
|
-#if (OPENSSL_VERSION_NUMBER < 0x10100000L)
|
|
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER))
|
|
if ((data->alg & SOAP_SMD_ALGO) == SOAP_SMD_HMAC)
|
|
HMAC_CTX_cleanup((HMAC_CTX*)data->ctx);
|
|
else
|