Created
September 20, 2018 21:04
-
-
Save coldfire84/ad5447f28f54360889431605d9cf5bf4 to your computer and use it in GitHub Desktop.
Libressl Patch for Mosquitto Compile
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/lib/mosquitto_internal.h b/lib/mosquitto_internal.h | |
index 4b4cf85..700bbb0 100644 | |
--- a/lib/mosquitto_internal.h | |
+++ b/lib/mosquitto_internal.h | |
@@ -25,6 +25,9 @@ Contributors: | |
#ifdef WITH_TLS | |
# include <openssl/ssl.h> | |
+# if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) | |
+# define HAVE_OPENSSL_OPAQUE_STRUCTS | |
+# endif | |
#else | |
# include <time.h> | |
#endif | |
diff --git a/src/mosquitto_passwd.c b/src/mosquitto_passwd.c | |
index de9a719..5b854d9 100644 | |
--- a/src/mosquitto_passwd.c | |
+++ b/src/mosquitto_passwd.c | |
@@ -90,7 +90,7 @@ int output_new_password(FILE *fptr, const char *username, const char *password) | |
unsigned char hash[EVP_MAX_MD_SIZE]; | |
unsigned int hash_len; | |
const EVP_MD *digest; | |
-#if OPENSSL_VERSION_NUMBER < 0x10100000L | |
+#ifndef HAVE_OPENSSL_OPAQUE_STRUCTS | |
EVP_MD_CTX context; | |
#else | |
EVP_MD_CTX *context; | |
@@ -117,7 +117,7 @@ int output_new_password(FILE *fptr, const char *username, const char *password) | |
return 1; | |
} | |
-#if OPENSSL_VERSION_NUMBER < 0x10100000L | |
+#ifndef HAVE_OPENSSL_OPAQUE_STRUCTS | |
EVP_MD_CTX_init(&context); | |
EVP_DigestInit_ex(&context, digest, NULL); | |
EVP_DigestUpdate(&context, password, strlen(password)); | |
diff --git a/src/security_default.c b/src/security_default.c | |
index 64ca846..9ad8708 100644 | |
--- a/src/security_default.c | |
+++ b/src/security_default.c | |
@@ -770,7 +770,7 @@ int mosquitto_psk_key_get_default(struct mosquitto_db *db, const char *hint, con | |
int _pw_digest(const char *password, const unsigned char *salt, unsigned int salt_len, unsigned char *hash, unsigned int *hash_len) | |
{ | |
const EVP_MD *digest; | |
-#if OPENSSL_VERSION_NUMBER < 0x10100000L | |
+#ifndef HAVE_OPENSSL_OPAQUE_STRUCTS | |
EVP_MD_CTX context; | |
digest = EVP_get_digestbyname("sha512"); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment