diff options
author | Danny Rawlins <monster.romster@gmail.com> | 2013-11-02 10:33:12 +1100 |
---|---|---|
committer | Danny Rawlins <monster.romster@gmail.com> | 2013-11-02 10:33:25 +1100 |
commit | 2912cbbdfaecc65e6644e46a1f3b45dd1b95fbfa (patch) | |
tree | 24915c5f34deffcd13192c1e0911f97920be4185 /qca-ossl | |
parent | e2eb04c5439d1838111a9f4940cce4277f82cdf9 (diff) | |
download | contrib-2912cbbdfaecc65e6644e46a1f3b45dd1b95fbfa.tar.gz contrib-2912cbbdfaecc65e6644e46a1f3b45dd1b95fbfa.tar.xz |
qca-ossl: initial import
Diffstat (limited to 'qca-ossl')
-rw-r--r-- | qca-ossl/.footprint | 6 | ||||
-rw-r--r-- | qca-ossl/.md5sum | 2 | ||||
-rw-r--r-- | qca-ossl/Pkgfile | 27 | ||||
-rw-r--r-- | qca-ossl/qca-ossl-openssl-1.0.0.patch | 155 |
4 files changed, 190 insertions, 0 deletions
diff --git a/qca-ossl/.footprint b/qca-ossl/.footprint new file mode 100644 index 000000000..b01a0f6e7 --- /dev/null +++ b/qca-ossl/.footprint @@ -0,0 +1,6 @@ +drwxr-xr-x root/root usr/ +drwxr-xr-x root/root usr/share/ +drwxr-xr-x root/root usr/share/qt4/ +drwxr-xr-x root/root usr/share/qt4/plugins/ +drwxr-xr-x root/root usr/share/qt4/plugins/crypto/ +-rwxr-xr-x root/root usr/share/qt4/plugins/crypto/libqca-ossl.so diff --git a/qca-ossl/.md5sum b/qca-ossl/.md5sum new file mode 100644 index 000000000..ebc8c5e83 --- /dev/null +++ b/qca-ossl/.md5sum @@ -0,0 +1,2 @@ +bdc62c01321385c7da8d27b3902910ce qca-ossl-2.0.0-beta3.tar.bz2 +3b443b8e0347cf3cdf8f6c70e519a18f qca-ossl-openssl-1.0.0.patch diff --git a/qca-ossl/Pkgfile b/qca-ossl/Pkgfile new file mode 100644 index 000000000..cf98aa408 --- /dev/null +++ b/qca-ossl/Pkgfile @@ -0,0 +1,27 @@ +# Description: QCA openssl plugin. +# URL: http://delta.affinix.com/qca/ +# Maintainer: Danny Rawlins, monster dot romster at gmail dot com +# Packager: Jose V Beneyto, sepen at crux dot nu +# Depends on: qca openssl + +name=qca-ossl +version=2.0.0 +release=1 +source=(http://delta.affinix.com/download/qca/2.0/plugins/$name-$version-beta3.tar.bz2 + qca-ossl-openssl-1.0.0.patch) + +build() { + cd $name-$version-beta3 + + patch -p1 -i $SRC/qca-ossl-openssl-1.0.0.patch + + # non-standard configure script + ./configure \ + --qtdir=/usr/share/qt4 \ + --release \ + --no-separate-debug-info + + [ "$CXX" ] || CXX=g++ + make CXX="$CXX" LINK="$CXX" $MAKEFLAGS + make INSTALL_ROOT=${PKG} install +} diff --git a/qca-ossl/qca-ossl-openssl-1.0.0.patch b/qca-ossl/qca-ossl-openssl-1.0.0.patch new file mode 100644 index 000000000..c7d6e47b1 --- /dev/null +++ b/qca-ossl/qca-ossl-openssl-1.0.0.patch @@ -0,0 +1,155 @@ +diff -ru a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt 2007-06-29 23:10:53.000000000 +0200 ++++ b/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 a/qca-ossl.cpp b/qca-ossl.cpp +--- a/qca-ossl.cpp 2007-12-11 07:34:57.000000000 +0100 ++++ b/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)" ) |