diff options
author | Samuli Suominen <ssuominen@gentoo.org> | 2010-07-11 10:05:42 +0000 |
---|---|---|
committer | Samuli Suominen <ssuominen@gentoo.org> | 2010-07-11 10:05:42 +0000 |
commit | 889f2d5decb4ff6d4e6c8496bfae58bfbab93451 (patch) | |
tree | 7e17830248937290847a75523dff17adc4721c0f /app-crypt/heimdal | |
parent | Drop hppa keyword per bug #324511. (diff) | |
download | gentoo-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/ChangeLog | 8 | ||||
-rw-r--r-- | app-crypt/heimdal/files/heimdal_openssl-1.patch | 174 | ||||
-rw-r--r-- | app-crypt/heimdal/heimdal-1.3.3-r1.ebuild | 122 |
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 +} |