]> granicus.if.org Git - curl/commitdiff
openssl: provide defines for argument typecasts to build warning-free
authorDaniel Stenberg <daniel@haxx.se>
Wed, 4 Apr 2018 08:55:56 +0000 (10:55 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Wed, 4 Apr 2018 11:24:36 +0000 (13:24 +0200)
... as OpenSSL >= 1.1.0 and libressl >= 2.7.0 use different argument types.

lib/vtls/openssl.c

index bbb8ec766d8cd5596aa47fe50e7d5567cb905e8f..fc9ad47ad1181993363daa0824967cb6cb00d111 100644 (file)
 #define HAVE_OPAQUE_RSA_DSA_DH 1 /* since 1.1.0 -pre5 */
 #define CONST_EXTS const
 #define HAVE_ERR_REMOVE_THREAD_STATE_DEPRECATED 1
+
+/* funny typecast define due to difference in API */
+#ifdef LIBRESSL_VERSION_NUMBER
+#define ARG2_X509_signature_print (X509_ALGOR *)
+#else
+#define ARG2_X509_signature_print
+#endif
+
 #else
 /* For OpenSSL before 1.1.0 */
 #define ASN1_STRING_get0_data(x) ASN1_STRING_data(x)
@@ -2802,7 +2810,7 @@ static CURLcode get_cert_chain(struct connectdata *conn,
       ASN1_STRING *a = ASN1_STRING_new();
       if(a) {
         X509_get0_signature(&psig, &palg, x);
-        X509_signature_print(mem, palg, a);
+        X509_signature_print(mem, ARG2_X509_signature_print palg, a);
         ASN1_STRING_free(a);
 
         if(palg) {