diff --git a/pkgs/desktops/kde-4.5/support/qca2/default.nix b/pkgs/desktops/kde-4.5/support/qca2/default.nix index 4636113e3d8a..a55f7c8cb431 100644 --- a/pkgs/desktops/kde-4.5/support/qca2/default.nix +++ b/pkgs/desktops/kde-4.5/support/qca2/default.nix @@ -7,6 +7,13 @@ stdenv.mkDerivation { sha256 = "49b5474450104a2298747c243de1451ab7a6aeed4bf7df43ffa4b7128a2837b8"; }; buildInputs = [ which qt4 ]; + preBuild = '' + sed -i include/QtCrypto/qca_publickey.h -e '/EMSA3_Raw/a,\ + EMSA3_SHA224, ///< SHA224, with EMSA3 (ie PKCS#1 Version 1.5) encoding\ + EMSA3_SHA256, ///< SHA256, with EMSA3 (ie PKCS#1 Version 1.5) encoding\ + EMSA3_SHA384, ///< SHA384, with EMSA3 (ie PKCS#1 Version 1.5) encoding\ + EMSA3_SHA512 ///< SHA512, with EMSA3 (ie PKCS#1 Version 1.5) encoding' + ''; meta = with stdenv.lib; { description = "Qt Cryptographic Architecture"; license = "LGPL"; diff --git a/pkgs/desktops/kde-4.5/support/qca2/ossl-remove-whirlpool.patch b/pkgs/desktops/kde-4.5/support/qca2/ossl-remove-whirlpool.patch deleted file mode 100644 index fa4eb4016227..000000000000 --- a/pkgs/desktops/kde-4.5/support/qca2/ossl-remove-whirlpool.patch +++ /dev/null @@ -1,74 +0,0 @@ -Source: Upstream, SVN r864423 -Upstream: Yes -Reason: Fix compilation w/ >=dev-libs/openssl-0.9.8g - - -From 883f1057b31387e7cbfe66f6b3cf5781a6ca49fb Mon Sep 17 00:00:00 2001 -From: infiniti -Date: Wed, 24 Sep 2008 19:22:26 +0000 -Subject: [PATCH] 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. - -git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/qca@864423 283d02a7-25f6-0310-bc7c-ecb5cbfe19da ---- - plugins/qca-ossl/qca-ossl.cpp | 4 ++++ - 1 files changed, 4 insertions(+), 0 deletions(-) - -diff --git a/qca-ossl.cpp b/qca-ossl.cpp -index 746a863..f9efd84 100644 ---- a/qca-ossl.cpp -+++ b/qca-ossl.cpp -@@ -6616,9 +6616,11 @@ static QStringList all_hash_types() - #ifdef SHA512_DIGEST_LENGTH - list += "sha512"; - #endif -+/* - #ifdef OBJ_whirlpool - list += "whirlpool"; - #endif -+*/ - return list; - } - -@@ -6863,10 +6865,12 @@ public: - 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)" ) --- -1.6.0.4 - - -From 70730a58fe6d9ba5b50b8971424663ba52947e4c Mon Sep 17 00:00:00 2001 -From: infiniti -Date: Wed, 24 Sep 2008 19:23:30 +0000 -Subject: [PATCH] fix warning - -git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/qca@864425 283d02a7-25f6-0310-bc7c-ecb5cbfe19da ---- - plugins/qca-ossl/qca-ossl.cpp | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/qca-ossl.cpp b/qca-ossl.cpp -index f9efd84..1790364 100644 ---- a/qca-ossl.cpp -+++ b/qca-ossl.cpp -@@ -327,7 +327,7 @@ static X509_EXTENSION *new_subject_key_id(X509 *cert) - X509V3_CTX ctx; - X509V3_set_ctx_nodb(&ctx); - X509V3_set_ctx(&ctx, NULL, cert, NULL, NULL, 0); -- X509_EXTENSION *ex = X509V3_EXT_conf_nid(NULL, &ctx, NID_subject_key_identifier, "hash"); -+ X509_EXTENSION *ex = X509V3_EXT_conf_nid(NULL, &ctx, NID_subject_key_identifier, (char *)"hash"); - return ex; - } - --- -1.6.0.4 diff --git a/pkgs/desktops/kde-4.5/support/qca2/ossl.nix b/pkgs/desktops/kde-4.5/support/qca2/ossl.nix index bd354c8a0cb9..bfaa320618c7 100644 --- a/pkgs/desktops/kde-4.5/support/qca2/ossl.nix +++ b/pkgs/desktops/kde-4.5/support/qca2/ossl.nix @@ -1,19 +1,28 @@ -{stdenv, fetchurl, qt4, qca2, openssl}: +{stdenv, fetchurl, fetchsvn, qt4, qca2, openssl}: stdenv.mkDerivation rec { - name = "qca-ossl-2.0.0-beta3"; + version = "2.0.0-beta3"; + name = "qca-ossl-${version}"; src = fetchurl { url = "http://delta.affinix.com/download/qca/2.0/plugins/${name}.tar.bz2"; sha256 = "0yy68racvx3clybry2i1bw5bz9yhxr40p3xqagxxb15ihvsrzq08"; }; + # SVN version has stabilized and has a lot of fixes for fresh OpenSSL + # Take the main source from there + svn_src = fetchsvn { + url = svn://anonsvn.kde.org/home/kde/trunk/kdesupport/qca/plugins/qca-ossl ; + rev = 1115936; + sha256 = "ef2c0307e8834e1e7cb23b6fea1cc22486328a37186301a6c11161b1c93d834b"; + }; buildInputs = [ qt4 qca2 openssl ]; dontAddPrefix = true; configureFlags="--no-separate-debug-info --with-qca=${qca2} --with-openssl-inc=${openssl}/include --with-openssl-lib=${openssl}/lib"; preConfigure='' + cp ${svn_src}/qca-ossl.cpp . + configureFlags="$configureFlags --plugins-path=$out/lib/qt4/plugins" ''; - patches = [ ./ossl-remove-whirlpool.patch ]; meta = with stdenv.lib; { description = "Qt Cryptographic Architecture OpenSSL plugin"; license = "LGPL";