]> git.sur5r.net Git - bacula/bacula/commitdiff
Fix OpenSSL 1.x problem in crypto.c on Fedora 12
authorKern Sibbald <kern@sibbald.com>
Wed, 3 Mar 2010 13:34:56 +0000 (14:34 +0100)
committerEric Bollengier <eric@eb.homelinux.org>
Mon, 2 Aug 2010 14:49:36 +0000 (16:49 +0200)
bacula/autoconf/configure.in
bacula/src/lib/crypto.c

index 6c478d1faaabded5e516aefa1b8f111032b46ca8..fbe2d5fe3ad5380385de7e8c477e6f9443538b82 100644 (file)
@@ -1208,6 +1208,8 @@ fi
 if test "$support_crypto" = "no"; then
    OPENSSL_LIBS=""
    OPENSSL_INC=""
+else
+   AC_CHECK_LIB(ssl, EVP_PKEY_encrypt_old, AC_DEFINE(HAVE_OPENSSLv1, 1, [Set if have OpenSSL version 1.x]))
 fi  
 
 AC_MSG_RESULT([$support_tls])
@@ -3289,4 +3291,3 @@ then
        echo " upgrade it in order to avoid problems with Batch insert mode"
        echo
 fi
-
index 25b1d44a5c3a623c3acbeec5206e40147ce6eb01..fb52c254b908e976505f62597810c440776d33bf 100644 (file)
@@ -1,7 +1,7 @@
 /*
    Bacula® - The Network Backup Solution
 
-   Copyright (C) 2005-2007 Free Software Foundation Europe e.V.
+   Copyright (C) 2005-2010 Free Software Foundation Europe e.V.
 
    The main author of Bacula is Kern Sibbald, with contributions from
    many others, a complete list can be found in the file AUTHORS.
@@ -30,8 +30,6 @@
  *
  * Author: Landon Fuller <landonf@opendarwin.org>
  *
- * Version $Id$
- *
  * This file was contributed to the Bacula project by Landon Fuller.
  *
  * Landon Fuller has been granted a perpetual, worldwide, non-exclusive,
 #include "jcr.h"
 #include <assert.h>
 
+/**
+ * For OpenSSL version 1.x, EVP_PKEY_encrypt no longer
+ *  exists.  It was not an official API.
+ */
+#ifdef HAVE_OPENSSLv1
+#define EVP_PKEY_encrypt EVP_PKEY_encrypt_old
+#define EVP_PKEY_decrypt EVP_PKEY_decrypt_old
+#endif
+
 /*
  * Bacula ASN.1 Syntax
  *
@@ -309,7 +316,7 @@ typedef struct PEM_CB_Context {
  */
 static ASN1_OCTET_STRING *openssl_cert_keyid(X509 *cert) {
    X509_EXTENSION *ext;
-   X509V3_EXT_METHOD *method;
+   const X509V3_EXT_METHOD *method;
    ASN1_OCTET_STRING *keyid;
    int i;
 #if (OPENSSL_VERSION_NUMBER >= 0x0090800FL)