summaryrefslogtreecommitdiffstats
path: root/source/l/qca-ossl
diff options
context:
space:
mode:
Diffstat (limited to 'source/l/qca-ossl')
-rw-r--r--source/l/qca-ossl/qca-ossl-openssl-1.0.0.patch155
-rwxr-xr-xsource/l/qca-ossl/qca-ossl.SlackBuild6
-rw-r--r--source/l/qca-ossl/qca-ossl.nowhirlpool.diff30
3 files changed, 158 insertions, 33 deletions
diff --git a/source/l/qca-ossl/qca-ossl-openssl-1.0.0.patch b/source/l/qca-ossl/qca-ossl-openssl-1.0.0.patch
new file mode 100644
index 000000000..7c6fa5bd4
--- /dev/null
+++ b/source/l/qca-ossl/qca-ossl-openssl-1.0.0.patch
@@ -0,0 +1,155 @@
+diff -ru ../qca-ossl-2.0.0-beta3/CMakeLists.txt ./CMakeLists.txt
+--- ../qca-ossl-2.0.0-beta3/CMakeLists.txt 2007-06-29 23:10:53.000000000 +0200
++++ ./CMakeLists.txt 2010-04-18 04:05:09.000000000 +0200
+@@ -1,5 +1,12 @@
+ # QCA OSSL
+
++INCLUDE(CheckFunctionExists)
++SET(CMAKE_REQUIRED_LIBRARIES ${OPENSSL_LIBRARIES})
++CHECK_FUNCTION_EXISTS(EVP_md2 HAVE_OPENSSL_MD2)
++IF (HAVE_OPENSSL_MD2)
++ ADD_DEFINITIONS(-DHAVE_OPENSSL_MD2)
++ENDIF (HAVE_OPENSSL_MD2)
++
+ SET(QCA_OSSL_SOURCES qca-ossl.cpp)
+
+ MY_AUTOMOC( QCA_OSSL_SOURCES )
+diff -ru ../qca-ossl-2.0.0-beta3/qca-ossl.cpp ./qca-ossl.cpp
+--- ../qca-ossl-2.0.0-beta3/qca-ossl.cpp 2007-12-11 07:34:57.000000000 +0100
++++ ./qca-ossl.cpp 2010-04-18 04:08:46.000000000 +0200
+@@ -42,6 +42,15 @@
+ #define OSSL_097
+ #endif
+
++#if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10000000L
++// OpenSSL 1.0.0 makes a few changes that aren't very C++ friendly...
++// Among other things, CHECKED_PTR_OF returns a void*, but is used in
++// contexts requiring STACK pointers.
++#undef CHECKED_PTR_OF
++#define CHECKED_PTR_OF(type, p) \
++ ((_STACK*) (1 ? p : (type*)0))
++#endif
++
+ using namespace QCA;
+
+ namespace opensslQCAPlugin {
+@@ -1771,8 +1780,10 @@
+ md = EVP_sha1();
+ else if(alg == EMSA3_MD5)
+ md = EVP_md5();
++#ifdef HAVE_OPENSSL_MD2
+ else if(alg == EMSA3_MD2)
+ md = EVP_md2();
++#endif
+ else if(alg == EMSA3_RIPEMD160)
+ md = EVP_ripemd160();
+ else if(alg == EMSA3_Raw)
+@@ -1789,8 +1800,10 @@
+ md = EVP_sha1();
+ else if(alg == EMSA3_MD5)
+ md = EVP_md5();
++#ifdef HAVE_OPENSSL_MD2
+ else if(alg == EMSA3_MD2)
+ md = EVP_md2();
++#endif
+ else if(alg == EMSA3_RIPEMD160)
+ md = EVP_ripemd160();
+ else if(alg == EMSA3_Raw)
+@@ -3385,9 +3398,11 @@
+ case NID_md5WithRSAEncryption:
+ p.sigalgo = QCA::EMSA3_MD5;
+ break;
++#ifdef HAVE_OPENSSL_MD2
+ case NID_md2WithRSAEncryption:
+ p.sigalgo = QCA::EMSA3_MD2;
+ break;
++#endif
+ case NID_ripemd160WithRSA:
+ p.sigalgo = QCA::EMSA3_RIPEMD160;
+ break;
+@@ -3871,9 +3886,11 @@
+ case NID_md5WithRSAEncryption:
+ p.sigalgo = QCA::EMSA3_MD5;
+ break;
++#ifdef HAVE_OPENSSL_MD2
+ case NID_md2WithRSAEncryption:
+ p.sigalgo = QCA::EMSA3_MD2;
+ break;
++#endif
+ case NID_ripemd160WithRSA:
+ p.sigalgo = QCA::EMSA3_RIPEMD160;
+ break;
+@@ -4061,9 +4078,11 @@
+ case NID_md5WithRSAEncryption:
+ p.sigalgo = QCA::EMSA3_MD5;
+ break;
++#ifdef HAVE_OPENSSL_MD2
+ case NID_md2WithRSAEncryption:
+ p.sigalgo = QCA::EMSA3_MD2;
+ break;
++#endif
+ case NID_ripemd160WithRSA:
+ p.sigalgo = QCA::EMSA3_RIPEMD160;
+ break;
+@@ -6582,7 +6601,9 @@
+ list += "sha1";
+ list += "sha0";
+ list += "ripemd160";
++#ifdef HAVE_OPENSSL_MD2
+ list += "md2";
++#endif
+ list += "md4";
+ list += "md5";
+ #ifdef SHA224_DIGEST_LENGTH
+@@ -6597,9 +6618,11 @@
+ #ifdef SHA512_DIGEST_LENGTH
+ list += "sha512";
+ #endif
++/*
+ #ifdef OBJ_whirlpool
+ list += "whirlpool";
+ #endif
++*/
+ return list;
+ }
+
+@@ -6757,7 +6780,9 @@
+ list += all_hash_types();
+ list += all_mac_types();
+ list += all_cipher_types();
++#ifdef HAVE_OPENSSL_MD2
+ list += "pbkdf1(md2)";
++#endif
+ list += "pbkdf1(sha1)";
+ list += "pbkdf2(sha1)";
+ list += "pkey";
+@@ -6788,8 +6813,10 @@
+ return new opensslHashContext( EVP_sha(), this, type);
+ else if ( type == "ripemd160" )
+ return new opensslHashContext( EVP_ripemd160(), this, type);
++#ifdef HAVE_OPENSSL_MD2
+ else if ( type == "md2" )
+ return new opensslHashContext( EVP_md2(), this, type);
++#endif
+ else if ( type == "md4" )
+ return new opensslHashContext( EVP_md4(), this, type);
+ else if ( type == "md5" )
+@@ -6810,14 +6837,18 @@
+ else if ( type == "sha512" )
+ return new opensslHashContext( EVP_sha512(), this, type);
+ #endif
++/*
+ #ifdef OBJ_whirlpool
+ else if ( type == "whirlpool" )
+ return new opensslHashContext( EVP_whirlpool(), this, type);
+ #endif
++*/
+ else if ( type == "pbkdf1(sha1)" )
+ return new opensslPbkdf1Context( EVP_sha1(), this, type );
++#ifdef HAVE_OPENSSL_MD2
+ else if ( type == "pbkdf1(md2)" )
+ return new opensslPbkdf1Context( EVP_md2(), this, type );
++#endif
+ else if ( type == "pbkdf2(sha1)" )
+ return new opensslPbkdf2Context( this, type );
+ else if ( type == "hmac(md5)" )
diff --git a/source/l/qca-ossl/qca-ossl.SlackBuild b/source/l/qca-ossl/qca-ossl.SlackBuild
index 33bba9696..c1fbcc95f 100755
--- a/source/l/qca-ossl/qca-ossl.SlackBuild
+++ b/source/l/qca-ossl/qca-ossl.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2006, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2008, 2009, 2010, 2012 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@
PKGNAM=qca-ossl
VERSION=2.0.0_beta3
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -64,7 +64,7 @@ tar xvf $CWD/$PKGNAM-$(echo $VERSION | tr _ -).tar.bz2 || exit 1
cd $PKGNAM-$(echo $VERSION | tr _ -) || exit 1
chown -R root:root .
# Fix a compilation error with our new openssh:
-zcat $CWD/qca-ossl.nowhirlpool.diff.gz | patch -p0 --verbose || exit 1
+zcat $CWD/qca-ossl-openssl-1.0.0.patch.gz | patch -p1 --verbose || exit 1
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
-exec chmod 755 {} \; -o \
diff --git a/source/l/qca-ossl/qca-ossl.nowhirlpool.diff b/source/l/qca-ossl/qca-ossl.nowhirlpool.diff
deleted file mode 100644
index 96451e1a6..000000000
--- a/source/l/qca-ossl/qca-ossl.nowhirlpool.diff
+++ /dev/null
@@ -1,30 +0,0 @@
-# remove whirlpool usage. the algorithm is missing on at least 0.9.8g and
-# 0.9.8i, even though there's an OBJ_whirlpool definition in 0.9.8i.
---- qca-ossl.cpp 2008/08/18 09:08:51 848615
-+++ qca-ossl.cpp 2008/09/24 19:22:26 864423
-@@ -6616,9 +6616,11 @@
- #ifdef SHA512_DIGEST_LENGTH
- list += "sha512";
- #endif
-+/*
- #ifdef OBJ_whirlpool
- list += "whirlpool";
- #endif
-+*/
- return list;
- }
-
-@@ -6863,10 +6865,12 @@
- else if ( type == "sha512" )
- return new opensslHashContext( EVP_sha512(), this, type);
- #endif
-+/*
- #ifdef OBJ_whirlpool
- else if ( type == "whirlpool" )
- return new opensslHashContext( EVP_whirlpool(), this, type);
- #endif
-+*/
- else if ( type == "pbkdf1(sha1)" )
- return new opensslPbkdf1Context( EVP_sha1(), this, type );
- else if ( type == "pbkdf1(md2)" )
-