summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuli Suominen <ssuominen@gentoo.org>2010-07-11 10:05:42 +0000
committerSamuli Suominen <ssuominen@gentoo.org>2010-07-11 10:05:42 +0000
commit889f2d5decb4ff6d4e6c8496bfae58bfbab93451 (patch)
tree7e17830248937290847a75523dff17adc4721c0f /app-crypt/heimdal
parentDrop hppa keyword per bug #324511. (diff)
downloadgentoo-2-889f2d5decb4ff6d4e6c8496bfae58bfbab93451.tar.gz
gentoo-2-889f2d5decb4ff6d4e6c8496bfae58bfbab93451.tar.bz2
gentoo-2-889f2d5decb4ff6d4e6c8496bfae58bfbab93451.zip
Fix building with OpenSSL >= 1.0.0 wrt #327765 by Diego E. Pettenò.
(Portage version: 2.2_rc67/cvs/Linux x86_64)
Diffstat (limited to 'app-crypt/heimdal')
-rw-r--r--app-crypt/heimdal/ChangeLog8
-rw-r--r--app-crypt/heimdal/files/heimdal_openssl-1.patch174
-rw-r--r--app-crypt/heimdal/heimdal-1.3.3-r1.ebuild122
3 files changed, 303 insertions, 1 deletions
diff --git a/app-crypt/heimdal/ChangeLog b/app-crypt/heimdal/ChangeLog
index 890e2b928189..266cc4746583 100644
--- a/app-crypt/heimdal/ChangeLog
+++ b/app-crypt/heimdal/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for app-crypt/heimdal
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-crypt/heimdal/ChangeLog,v 1.156 2010/06/23 21:46:33 angelos Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-crypt/heimdal/ChangeLog,v 1.157 2010/07/11 10:05:41 ssuominen Exp $
+
+*heimdal-1.3.3-r1 (11 Jul 2010)
+
+ 11 Jul 2010; Samuli Suominen <ssuominen@gentoo.org>
+ +heimdal-1.3.3-r1.ebuild, +files/heimdal_openssl-1.patch:
+ Fix building with OpenSSL >= 1.0.0 wrt #327765 by Diego E. Pettenò.
23 Jun 2010; Christoph Mende <angelos@gentoo.org> heimdal-1.3.3.ebuild:
Stable on amd64 wrt bug #322709
diff --git a/app-crypt/heimdal/files/heimdal_openssl-1.patch b/app-crypt/heimdal/files/heimdal_openssl-1.patch
new file mode 100644
index 000000000000..548056c8588c
--- /dev/null
+++ b/app-crypt/heimdal/files/heimdal_openssl-1.patch
@@ -0,0 +1,174 @@
+http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=blob_plain;f=source/lib/heimdal/drop_md2_support.diff;hb=HEAD
+
+--- include/crypto-headers.h
++++ include/crypto-headers.h
+@@ -13,7 +13,6 @@
+ #include <openssl/des.h>
+ #include <openssl/rc4.h>
+ #include <openssl/rc2.h>
+-#include <openssl/md2.h>
+ #include <openssl/md4.h>
+ #include <openssl/md5.h>
+ #include <openssl/sha.h>
+@@ -39,7 +38,6 @@
+
+ #include <hcrypto/evp.h>
+ #include <hcrypto/des.h>
+-#include <hcrypto/md2.h>
+ #include <hcrypto/md4.h>
+ #include <hcrypto/md5.h>
+ #include <hcrypto/sha.h>
+--- lib/hx509/crypto.c
++++ lib/hx509/crypto.c
+@@ -148,11 +148,6 @@
+ { 6, rk_UNCONST(md5_oid_tree) }, rk_UNCONST(&null_entry_oid)
+ };
+
+-static const unsigned md2_oid_tree[] = { 1, 2, 840, 113549, 2, 2 };
+-const AlgorithmIdentifier _hx509_signature_md2_data = {
+- { 6, rk_UNCONST(md2_oid_tree) }, rk_UNCONST(&null_entry_oid)
+-};
+-
+ static const unsigned ecPublicKey[] ={ 1, 2, 840, 10045, 2, 1 };
+ const AlgorithmIdentifier _hx509_signature_ecPublicKey = {
+ { 6, rk_UNCONST(ecPublicKey) }, NULL
+@@ -193,11 +188,6 @@
+ { 7, rk_UNCONST(rsa_with_md5_oid) }, NULL
+ };
+
+-static const unsigned rsa_with_md2_oid[] ={ 1, 2, 840, 113549, 1, 1, 2 };
+-const AlgorithmIdentifier _hx509_signature_rsa_with_md2_data = {
+- { 7, rk_UNCONST(rsa_with_md2_oid) }, NULL
+-};
+-
+ static const unsigned rsa_oid[] ={ 1, 2, 840, 113549, 1, 1, 1 };
+ const AlgorithmIdentifier _hx509_signature_rsa_data = {
+ { 7, rk_UNCONST(rsa_oid) }, NULL
+@@ -1289,19 +1279,6 @@
+ rsa_create_signature
+ };
+
+-static const struct signature_alg rsa_with_md2_alg = {
+- "rsa-with-md2",
+- &asn1_oid_id_pkcs1_md2WithRSAEncryption,
+- &_hx509_signature_rsa_with_md2_data,
+- &asn1_oid_id_pkcs1_rsaEncryption,
+- &_hx509_signature_md2_data,
+- PROVIDE_CONF|REQUIRE_SIGNER|RA_RSA_USES_DIGEST_INFO|SIG_PUBLIC_SIG,
+- 1230739889,
+- NULL,
+- rsa_verify_signature,
+- rsa_create_signature
+-};
+-
+ static const struct signature_alg dsa_sha1_alg = {
+ "dsa-with-sha1",
+ &asn1_oid_id_dsa_with_sha1,
+@@ -1354,19 +1331,6 @@
+ NULL
+ };
+
+-static const struct signature_alg md2_alg = {
+- "rsa-md2",
+- &asn1_oid_id_rsa_digest_md2,
+- &_hx509_signature_md2_data,
+- NULL,
+- NULL,
+- SIG_DIGEST,
+- 0,
+- EVP_md2,
+- evp_md_verify_signature,
+- NULL
+-};
+-
+ /*
+ * Order matter in this structure, "best" first for each "key
+ * compatible" type (type is ECDSA, RSA, DSA, none, etc)
+@@ -1381,13 +1345,11 @@
+ &rsa_with_sha1_alg,
+ &pkcs1_rsa_sha1_alg,
+ &rsa_with_md5_alg,
+- &rsa_with_md2_alg,
+ &heim_rsa_pkcs1_x509,
+ &dsa_sha1_alg,
+ &sha256_alg,
+ &sha1_alg,
+ &md5_alg,
+- &md2_alg,
+ NULL
+ };
+
+@@ -1823,10 +1785,6 @@
+ { return &_hx509_signature_md5_data; }
+
+ const AlgorithmIdentifier *
+-hx509_signature_md2(void)
+-{ return &_hx509_signature_md2_data; }
+-
+-const AlgorithmIdentifier *
+ hx509_signature_ecPublicKey(void)
+ { return &_hx509_signature_ecPublicKey; }
+
+@@ -1859,10 +1817,6 @@
+ { return &_hx509_signature_rsa_with_md5_data; }
+
+ const AlgorithmIdentifier *
+-hx509_signature_rsa_with_md2(void)
+-{ return &_hx509_signature_rsa_with_md2_data; }
+-
+-const AlgorithmIdentifier *
+ hx509_signature_rsa(void)
+ { return &_hx509_signature_rsa_data; }
+
+--- lib/hx509/hx509-protos.h
++++ lib/hx509/hx509-protos.h
+@@ -976,9 +976,6 @@
+ hx509_signature_ecdsa_with_sha256 (void);
+
+ const AlgorithmIdentifier *
+-hx509_signature_md2 (void);
+-
+-const AlgorithmIdentifier *
+ hx509_signature_md5 (void);
+
+ const AlgorithmIdentifier *
+@@ -988,9 +985,6 @@
+ hx509_signature_rsa_pkcs1_x509 (void);
+
+ const AlgorithmIdentifier *
+-hx509_signature_rsa_with_md2 (void);
+-
+-const AlgorithmIdentifier *
+ hx509_signature_rsa_with_md5 (void);
+
+ const AlgorithmIdentifier *
+--- lib/hx509/ks_p11.c
++++ lib/hx509/ks_p11.c
+@@ -1139,7 +1139,6 @@
+ MECHNAME(CKM_SHA256, "sha256");
+ MECHNAME(CKM_SHA_1, "sha1");
+ MECHNAME(CKM_MD5, "md5");
+- MECHNAME(CKM_MD2, "md2");
+ MECHNAME(CKM_RIPEMD160, "ripemd-160");
+ MECHNAME(CKM_DES_ECB, "des-ecb");
+ MECHNAME(CKM_DES_CBC, "des-cbc");
+--- lib/hx509/tst-crypto-available2
++++ lib/hx509/tst-crypto-available2
+@@ -1,4 +1,3 @@
+ 2.16.840.1.101.3.4.2.1
+ 1.3.14.3.2.26
+ 1.2.840.113549.2.5
+-1.2.840.113549.2.2
+--- lib/hx509/version-script.map
++++ lib/hx509/version-script.map
+@@ -200,10 +200,8 @@
+ hx509_revoke_verify;
+ hx509_set_error_string;
+ hx509_set_error_stringv;
+- hx509_signature_md2;
+ hx509_signature_md5;
+ hx509_signature_rsa;
+- hx509_signature_rsa_with_md2;
+ hx509_signature_rsa_with_md5;
+ hx509_signature_rsa_with_sha1;
+ hx509_signature_rsa_with_sha256;
diff --git a/app-crypt/heimdal/heimdal-1.3.3-r1.ebuild b/app-crypt/heimdal/heimdal-1.3.3-r1.ebuild
new file mode 100644
index 000000000000..7bff48b3e4b2
--- /dev/null
+++ b/app-crypt/heimdal/heimdal-1.3.3-r1.ebuild
@@ -0,0 +1,122 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-crypt/heimdal/heimdal-1.3.3-r1.ebuild,v 1.1 2010/07/11 10:05:41 ssuominen Exp $
+
+EAPI=2
+VIRTUALX_REQUIRED="manual"
+
+inherit libtool virtualx eutils toolchain-funcs
+
+#RESTRICT="test"
+
+DESCRIPTION="Kerberos 5 implementation from KTH"
+HOMEPAGE="http://www.h5l.org/"
+SRC_URI="http://www.h5l.org/dist/src/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE="afs +berkdb hdb-ldap ipv6 otp pkinit ssl threads test X"
+
+RDEPEND="ssl? ( dev-libs/openssl )
+ berkdb? ( sys-libs/db )
+ !berkdb? ( sys-libs/gdbm )
+ >=dev-db/sqlite-3.5.7
+ >=sys-libs/e2fsprogs-libs-1.41.11
+ afs? ( net-fs/openafs )
+ hdb-ldap? ( >=net-nds/openldap-2.3.0 )
+ !virtual/krb5"
+
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig
+ >=sys-devel/autoconf-2.62
+ test? ( X? ( ${VIRTUALX_DEPEND} ) )"
+
+PROVIDE="virtual/krb5"
+
+src_prepare() {
+ epatch "${FILESDIR}/heimdal_db5.patch"
+ epatch "${FILESDIR}/heimdal_testsuite.patch"
+ epatch "${FILESDIR}/heimdal_testsuite_extra.patch"
+ epatch "${FILESDIR}/heimdal_disable-check-iprop.patch"
+ epatch "${FILESDIR}/heimdal_openssl-1.patch"
+}
+
+src_configure() {
+ econf \
+ --enable-kcm \
+ --disable-osfc2 \
+ --enable-shared \
+ --with-libintl=/usr \
+ --with-readline=/usr \
+ --with-sqlite3=/usr \
+ --libexecdir=/usr/sbin \
+ $(use_enable afs afs-support) \
+ $(use_enable berkdb berkeley-db) \
+ $(use_enable otp) \
+ $(use_enable pkinit kx509) \
+ $(use_enable pkinit pk-init) \
+ $(use_enable threads pthread-support) \
+ $(use_with hdb-ldap openldap /usr) \
+ $(use_with ipv6) \
+ $(use_with ssl openssl /usr) \
+ $(use_with X x)
+}
+
+src_compile() {
+ emake -j1 || die "emake failed"
+}
+
+src_test() {
+ einfo "Disabled check-iprop which is known to fail. Other tests should work."
+ default_src_test
+}
+
+src_install() {
+ INSTALL_CATPAGES="no" emake DESTDIR="${D}" install || die "emake install failed"
+
+ dodoc ChangeLog README NEWS TODO
+
+ # Begin client rename and install
+ for i in {telnetd,ftpd,rshd,popper}
+ do
+ mv "${D}"/usr/share/man/man8/{,k}${i}.8
+ mv "${D}"/usr/sbin/{,k}${i}
+ done
+
+ for i in {rcp,rsh,telnet,ftp,su,login,pagsh,kf}
+ do
+ mv "${D}"/usr/share/man/man1/{,k}${i}.1
+ mv "${D}"/usr/bin/{,k}${i}
+ done
+
+ mv "${D}"/usr/share/man/man5/{,k}ftpusers.5
+ mv "${D}"/usr/share/man/man5/{,k}login.access.5
+
+ newinitd "${FILESDIR}"/heimdal-kdc.initd heimdal-kdc
+ newinitd "${FILESDIR}"/heimdal-kadmind.initd heimdal-kadmind
+ newinitd "${FILESDIR}"/heimdal-kpasswdd.initd heimdal-kpasswdd
+ newinitd "${FILESDIR}"/heimdal-kcm.initd heimdal-kcm
+
+ insinto /etc
+ newins "${FILESDIR}"/krb5.conf krb5.conf.example
+
+ if use hdb-ldap; then
+ insinto /etc/openldap/schema
+ doins "${S}/lib/hdb/hdb.schema"
+ fi
+
+ # default database dir
+ keepdir /var/heimdal
+}
+
+pkg_preinst() {
+
+ if has_version "=${CATEGORY}/${PN}-1.3.2*" ; then
+ if use hdb-ldap ; then
+ ewarn "Schema name changed to hdb.schema to follow upstream."
+ ewarn "Please check you slapd conf file to make sure"
+ ewarn "that the correct schema file is included."
+ fi
+ fi
+}