diff options
author | Mike Frysinger <vapier@gentoo.org> | 2010-09-30 02:48:44 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2010-09-30 02:48:44 +0000 |
commit | 539579cde22ad8bb3d55758f4d36835181f398f7 (patch) | |
tree | 03481590eaceb91fd9e401e9f0fe605ef3d39679 /net-misc | |
parent | Ease libdrm dependency. (diff) | |
download | historical-539579cde22ad8bb3d55758f4d36835181f398f7.tar.gz historical-539579cde22ad8bb3d55758f4d36835181f398f7.tar.bz2 historical-539579cde22ad8bb3d55758f4d36835181f398f7.zip |
Switch to latest upstream hpn patch, and fix a pointer error in it.
Package-Manager: portage-2.2_rc86/cvs/Linux x86_64
Diffstat (limited to 'net-misc')
-rw-r--r-- | net-misc/openssh/ChangeLog | 8 | ||||
-rw-r--r-- | net-misc/openssh/Manifest | 15 | ||||
-rw-r--r-- | net-misc/openssh/files/openssh-5.6_p1-hpn-progressmeter.patch | 15 | ||||
-rw-r--r-- | net-misc/openssh/openssh-5.6_p1-r2.ebuild | 261 |
4 files changed, 297 insertions, 2 deletions
diff --git a/net-misc/openssh/ChangeLog b/net-misc/openssh/ChangeLog index ff3cb9b0ce2a..c5befd16d099 100644 --- a/net-misc/openssh/ChangeLog +++ b/net-misc/openssh/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for net-misc/openssh # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-misc/openssh/ChangeLog,v 1.391 2010/09/24 11:11:23 armin76 Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-misc/openssh/ChangeLog,v 1.392 2010/09/30 02:48:44 vapier Exp $ + +*openssh-5.6_p1-r2 (30 Sep 2010) + + 30 Sep 2010; Mike Frysinger <vapier@gentoo.org> +openssh-5.6_p1-r2.ebuild, + +files/openssh-5.6_p1-hpn-progressmeter.patch: + Switch to latest upstream hpn patch, and fix a pointer error in it. 24 Sep 2010; Raúl Porcel <armin76@gentoo.org> openssh-5.5_p1-r2.ebuild: alpha/ia64/m68k/s390/sh/sparc stable wrt #334165 diff --git a/net-misc/openssh/Manifest b/net-misc/openssh/Manifest index 04dd84be449b..4ee4fd37e370 100644 --- a/net-misc/openssh/Manifest +++ b/net-misc/openssh/Manifest @@ -1,3 +1,6 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + AUX openssh-3.9_p1-opensc.patch 3242 RMD160 9c382109f0a64c30d6404f6c6ecdd274b8114fd3 SHA1 1020a213c5acb479003bebe6e4bed0f5b1e56a9f SHA256 36f27a6cd277cf08fadbc23cd4d019def69f40a601d75e63ead7bdc7cdf0539b AUX openssh-4.7_p1-GSSAPI-dns.patch 4494 RMD160 4e02e0a85c0e33c917ec8c22b4e1c173a9d7d79e SHA1 d8a81eb92a49763106cfa5b319c22c6f188508ef SHA256 88a08f349258d4be5b2faa838a89fe1aa0196502990b745ac0e3a70dda30a0d7 AUX openssh-4.7p1-selinux.diff 541 RMD160 bcb8f1fef2ae8378e7000732223c6116e06e0d6f SHA1 395b4dcff3eb7b92582a4364e612fff87278e7bc SHA256 ef8d71c46059bdcc8487cad06914639a8237197561cc030d8eed3baf418cc810 @@ -9,6 +12,7 @@ AUX openssh-5.3_p1-pkcs11-hpn-glue.patch 765 RMD160 9c865591eed26cadb34b0a4f35b5 AUX openssh-5.4_p1-openssl.patch 255 RMD160 6d495664c5d94058cb4aa8a0011a070cb27a8fb9 SHA1 9e78702afc936a478f64c73bada9e85f7dbd8081 SHA256 f83627039491e9969f1ed5d77fe816465ce75809e8c2f2bfb07012bc21384347 AUX openssh-5.4_p1-pkcs11.patch 1099 RMD160 d94041f2448ecc6e9d6add0301979abeaf47fd4c SHA1 371b2cd92ff915a8efc4377de60c7626e0371453 SHA256 5603b9f4cb99990404f7953d2524190ef50e6b0f5434a2465c6dea21720be4b6 AUX openssh-5.4_p1-relative-AuthorizedKeysFile.patch 1501 RMD160 5f73b12112e52278561923e72d706a575d68d9f1 SHA1 9be8ba4a6d0b748d69596e111eddaa70a69fd645 SHA256 9c06be753927eaecec8eaae401f6890c4ab7a8cf91dc7a35bb95228ed1c0d362 +AUX openssh-5.6_p1-hpn-progressmeter.patch 334 RMD160 024480c0f7ccac80905ae4b4ae6adfa21428cf97 SHA1 446cfaa4be26fefbabd8f8933d91b5d5783f196c SHA256 eaa98f954934364a1994111f5a422d0730b6e224822cef03efe6d6fc0c7f056f AUX openssh-5.6_p1-x509-hpn-glue.patch 1974 RMD160 bccefdc9ee8e923968c6dac5d470466b1b7e78b9 SHA1 8f882f22d2c85967d3d54c250a11077b67f9a1a9 SHA256 164db7af08e0565821d6d609b1beadab39777521bfff143a83acc1e097ad60f1 AUX sshd.confd 396 RMD160 029680b2281961130a815ef599750c4fc4e84987 SHA1 23c283d0967944b6125be26ed4628f49abf586b2 SHA256 29c6d57ac3ec6018cadc6ba6cd9b90c9ed46e20049b970fdcc68ee2481a2ee41 AUX sshd.pam 294 RMD160 1d4499a7de54188e51e87a240ec7a1b3b1af583d SHA1 4cd17fb40793fa9ca77ac93698129f2c8cafd7b8 SHA256 f01cc51c624b21a815fb6c0be35edc590e2e6f8a5ffbdcabc220a9630517972f @@ -30,6 +34,7 @@ DIST openssh-5.5p1+x509-6.2.3.diff.gz 156737 RMD160 cf6d9e5f51512b3e22a3561ff7e1 DIST openssh-5.5p1-hpn13v9.diff.gz 22657 RMD160 bb9d44589018030fa3102898f85f4dfd7032d2f0 SHA1 8601fabf0067ff9c59501dc0006ad3853dbb3de0 SHA256 0556ad75cbd29cba71263a5b7ddc44c03d17c09297a6c41a16d39d3549e5079c DIST openssh-5.5p1.tar.gz 1097574 RMD160 7cee614112b691da5daac9f2579becba2409b727 SHA1 361c6335e74809b26ea096b34062ba8ff6c97cd6 SHA256 36eedd6efe6663186ed23573488670f9b02e34744694e94a9f869b6f25e47e8a DIST openssh-5.6p1+x509-6.2.3.diff.gz 168109 RMD160 d2a0bb07ede384a7fd752d0a1a2b7750101c5fe3 SHA1 319992226b8109c3f6ce9bbe5884635edb2349cf SHA256 90977eded2ae5e71bc3b84aad8597442074742d78d471087d020e58dd58342ad +DIST openssh-5.6p1-hpn13v10.diff.gz 22988 RMD160 9c62cd1520a69f10b85496450130a9fd0a5f5954 SHA1 71f5a346b297330c50b324cdc19e361070a31776 SHA256 6a9ee815e8ffcc9068c3dce4ad4f2898fc0db6b768a3152280aceb8c06c8b450 DIST openssh-5.6p1-hpn13v9-gentoo.diff.gz 23106 RMD160 0f8538a81005ab8c45b53267757aabf8eb15de63 SHA1 a9897d1df3d917f612f92b6a67356ab8be56c4da SHA256 820d7b242e0421a168593e14dd3db5425cd81719caed7a9dfac8d32bd13aad2a DIST openssh-5.6p1.tar.gz 1117952 RMD160 e3e1229cc0efa7cb534c83e61fade8371fc24a23 SHA1 347dd39c91c3529f41dae63714d452fb95efea1e SHA256 538af53b2b8162c21a293bb004ae2bdb141abd250f61b4cea55244749f3c6c2b DIST openssh-lpk-5.2p1-0.3.11.patch.gz 18116 RMD160 2ff9bdff19e0854a96063be1e0589fa3f85da0d7 SHA1 33b36cf94f68a80fca497da110529ce69d62fbb0 SHA256 450b56a989767aa65a974213e8f7e9d0ee9d08522247db7b787730e53685bebd @@ -41,5 +46,13 @@ EBUILD openssh-5.3_p1-r1.ebuild 8321 RMD160 c632f38bae4c60e4836c96ca7e35dd103b59 EBUILD openssh-5.4_p1-r3.ebuild 8268 RMD160 0116016c792b5f56411dddf5a5f037dc4126361e SHA1 55e4e4e09ad214d3bb82304d1a1848ae45101099 SHA256 cbe163e47210ca42bf24545375aec9f9757af200eab68b9d539c7b2c39926f03 EBUILD openssh-5.5_p1-r2.ebuild 8180 RMD160 e2bcad59293157b59d2b92fbb841fd8c4e2e6c40 SHA1 962947647c14a4a473921842375b9a7bf4bd308c SHA256 3f26e1d3d6cd6fdfef8107bbcb217899857ed12f9d7b805d93333d08ee58a90f EBUILD openssh-5.6_p1-r1.ebuild 7889 RMD160 5136804037e2b8dc2202014aec6ed877583234e6 SHA1 3abb985a3b875d3f9554e111ed676edc6879297f SHA256 d5549c197592a412130803c7e25bf94b55e607f0a239f6570b269e9713df68a6 -MISC ChangeLog 61226 RMD160 fb3bd71c321398244408a7f03c4955f09fa420cb SHA1 ee49e5edf32b16989eb938b9f218d8606d952a28 SHA256 2e0b1ccf783f074eb4adeaf8cdf60640e5e4a3973f0df6909d2166e23f3b2462 +EBUILD openssh-5.6_p1-r2.ebuild 7935 RMD160 b81b324966a0e384cc095b27c686062852146efc SHA1 64d56dadba8be86557365bbc5f5fd71cd2b85948 SHA256 2c9aa106073b9f90395a6bdb9500ace425e384db0fb8ab16a432b93a72a1ca3d +MISC ChangeLog 61456 RMD160 2118efbfc2a79c6235e78476f20cc5a08d2fe78f SHA1 7b7024e1d14f2abe5705772165727e141857ec62 SHA256 903c0eb19b5a2f65401a9fde51a35951f31e9f7721ff0da7522fd05791e60090 MISC metadata.xml 1641 RMD160 b5ae0d7b86c8dcb36414bc31da6fd22a807ced0b SHA1 31923a9db53fcad2b9cca72c39e733376bf6c501 SHA256 d34bb27c9f775ce973246c2a6b32ccd17d300de562920afbdd47312056cd8946 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2.0.16 (GNU/Linux) + +iF4EAREIAAYFAkyj+nQACgkQTwhj9JtAlp7vXQEAiKqN+Cxviba2CNtzvyE+2T4a +Sv1jX7DE+dr3YBLidHUBAJQUlI+m47CnCYkv61onoNw1QVbbmnFyO+pgoA2lKeuM +=2e4c +-----END PGP SIGNATURE----- diff --git a/net-misc/openssh/files/openssh-5.6_p1-hpn-progressmeter.patch b/net-misc/openssh/files/openssh-5.6_p1-hpn-progressmeter.patch new file mode 100644 index 000000000000..5fe18dfc9ac0 --- /dev/null +++ b/net-misc/openssh/files/openssh-5.6_p1-hpn-progressmeter.patch @@ -0,0 +1,15 @@ +don't go reading random stack values + +already e-mailed to upstream hpn devs + +--- progressmeter.c ++++ progressmeter.c +@@ -183,7 +183,7 @@ + else + percent = 100; + +- snprintf(buf + strlen(buf), win_size - strlen(buf-8), ++ snprintf(buf + strlen(buf), win_size - strlen(buf) - 8, + " %3d%% ", percent); + + /* amount transferred */ diff --git a/net-misc/openssh/openssh-5.6_p1-r2.ebuild b/net-misc/openssh/openssh-5.6_p1-r2.ebuild new file mode 100644 index 000000000000..bc39868f31d8 --- /dev/null +++ b/net-misc/openssh/openssh-5.6_p1-r2.ebuild @@ -0,0 +1,261 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-misc/openssh/openssh-5.6_p1-r2.ebuild,v 1.1 2010/09/30 02:48:44 vapier Exp $ + +EAPI="2" +inherit eutils flag-o-matic multilib autotools pam + +# Make it more portable between straight releases +# and _p? releases. +PARCH=${P/_/} + +HPN_PATCH="${PARCH}-hpn13v10.diff.gz" +LDAP_PATCH="${PARCH/openssh/openssh-lpk}-0.3.13.patch.gz" +X509_VER="6.2.3" X509_PATCH="${PARCH}+x509-${X509_VER}.diff.gz" + +DESCRIPTION="Port of OpenBSD's free SSH release" +HOMEPAGE="http://www.openssh.org/" +SRC_URI="mirror://openbsd/OpenSSH/portable/${PARCH}.tar.gz + ${HPN_PATCH:+hpn? ( http://www.psc.edu/networking/projects/hpn-ssh/${HPN_PATCH} mirror://gentoo/${HPN_PATCH} )} + ${LDAP_PATCH:+ldap? ( mirror://gentoo/${LDAP_PATCH} )} + ${X509_PATCH:+X509? ( http://roumenpetrov.info/openssh/x509-${X509_VER}/${X509_PATCH} )} + " + +LICENSE="as-is" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd" +IUSE="hpn kerberos ldap libedit pam selinux skey static tcpd X X509" + +RDEPEND="pam? ( virtual/pam ) + kerberos? ( virtual/krb5 ) + selinux? ( >=sys-libs/libselinux-1.28 ) + skey? ( >=sys-auth/skey-1.1.5-r1 ) + ldap? ( net-nds/openldap ) + libedit? ( dev-libs/libedit ) + >=dev-libs/openssl-0.9.6d + >=sys-libs/zlib-1.2.3 + tcpd? ( >=sys-apps/tcp-wrappers-7.6 ) + X? ( x11-apps/xauth ) + userland_GNU? ( sys-apps/shadow )" +DEPEND="${RDEPEND} + dev-util/pkgconfig + virtual/os-headers + sys-devel/autoconf" +RDEPEND="${RDEPEND} + pam? ( >=sys-auth/pambase-20081028 )" +PROVIDE="virtual/ssh" + +S=${WORKDIR}/${PARCH} + +pkg_setup() { + # this sucks, but i'd rather have people unable to `emerge -u openssh` + # than not be able to log in to their server any more + maybe_fail() { [[ -z ${!2} ]] && echo ${1} ; } + local fail=" + $(use X509 && maybe_fail X509 X509_PATCH) + $(use ldap && maybe_fail ldap LDAP_PATCH) + $(use hpn && maybe_fail hpn HPN_PATCH) + " + fail=$(echo ${fail}) + if [[ -n ${fail} ]] ; then + eerror "Sorry, but this version does not yet support features" + eerror "that you requested: ${fail}" + eerror "Please mask ${PF} for now and check back later:" + eerror " # echo '=${CATEGORY}/${PF}' >> /etc/portage/package.mask" + die "booooo" + fi +} + +src_prepare() { + sed -i \ + -e '/_PATH_XAUTH/s:/usr/X11R6/bin/xauth:/usr/bin/xauth:' \ + pathnames.h || die + # keep this as we need it to avoid the conflict between LPK and HPN changing + # this file. + cp version.h version.h.pristine + + if use X509 ; then + # Apply X509 patch + epatch "${DISTDIR}"/${X509_PATCH} + # Apply glue so that HPN will still work after X509 + epatch "${FILESDIR}"/${PN}-5.6_p1-x509-hpn-glue.patch + fi + if ! use X509 ; then + if [[ -n ${LDAP_PATCH} ]] && use ldap ; then + epatch "${DISTDIR}"/${LDAP_PATCH} + epatch "${FILESDIR}"/${PN}-5.2p1-ldap-stdargs.diff #266654 + # version.h patch conflict avoidence + mv version.h version.h.lpk + cp -f version.h.pristine version.h + fi + else + use ldap && ewarn "Sorry, X509 and LDAP conflict internally, disabling LDAP" + fi + epatch "${FILESDIR}"/${PN}-5.4_p1-openssl.patch + epatch "${FILESDIR}"/${PN}-4.7_p1-GSSAPI-dns.patch #165444 integrated into gsskex + if [[ -n ${HPN_PATCH} ]] && use hpn; then + epatch "${DISTDIR}"/${HPN_PATCH} + epatch "${FILESDIR}"/${P}-hpn-progressmeter.patch + # version.h patch conflict avoidence + mv version.h version.h.hpn + cp -f version.h.pristine version.h + # The AES-CTR multithreaded variant is temporarily broken, and + # causes random hangs when combined with the -f switch of ssh. + # To avoid this, we change the internal table to use the non-multithread + # version for the meantime. + sed -i \ + -e '/aes...-ctr.*SSH_CIPHER_SSH2/s,evp_aes_ctr_mt,evp_aes_128_ctr,' \ + cipher.c || die + fi + epatch "${FILESDIR}"/${PN}-5.2_p1-autoconf.patch + + sed -i "s:-lcrypto:$(pkg-config --libs openssl):" configure{,.ac} || die + + # Disable PATH reset, trust what portage gives us. bug 254615 + sed -i -e 's:^PATH=/:#PATH=/:' configure || die + + # Now we can build a sane merged version.h + t="${T}"/version.h + m="${t}.merge" f="${t}.final" + cat version.h.{hpn,pristine,lpk} 2>/dev/null \ + | sed '/^#define SSH_RELEASE/d' \ + | sort | uniq >"${m}" + sed -n -r \ + -e '/^\//p' \ + <"${m}" >"${f}" + sed -n -r \ + -e '/SSH_LPK/s,"lpk","-lpk",g' \ + -e '/^#define/p' \ + <"${m}" >>"${f}" + v="SSH_VERSION SSH_PORTABLE" + [[ -f version.h.hpn ]] && v="${v} SSH_HPN" + [[ -f version.h.lpk ]] && v="${v} SSH_LPK" + echo "#define SSH_RELEASE ${v}" >>"${f}" + cp "${f}" version.h + + eautoreconf +} + +static_use_with() { + local flag=$1 + if use static && use ${flag} ; then + ewarn "Disabling '${flag}' support because of USE='static'" + # rebuild args so that we invert the first one (USE flag) + # but otherwise leave everything else working so we can + # just leverage use_with + shift + [[ -z $1 ]] && flag="${flag} ${flag}" + set -- !${flag} "$@" + fi + use_with "$@" +} + +src_configure() { + addwrite /dev/ptmx + addpredict /etc/skey/skeykeys #skey configure code triggers this + + use static && append-ldflags -static + + econf \ + --with-ldflags="${LDFLAGS}" \ + --disable-strip \ + --sysconfdir=/etc/ssh \ + --libexecdir=/usr/$(get_libdir)/misc \ + --datadir=/usr/share/openssh \ + --with-privsep-path=/var/empty \ + --with-privsep-user=sshd \ + --with-md5-passwords \ + --with-ssl-engine \ + $(static_use_with pam) \ + $(static_use_with kerberos kerberos5 /usr) \ + ${LDAP_PATCH:+$(use X509 || ( use ldap && use_with ldap ))} \ + $(use_with libedit) \ + $(use_with selinux) \ + $(use_with skey) \ + $(use_with tcpd tcp-wrappers) +} + +src_compile() { + emake || die +} + +src_install() { + emake install-nokeys DESTDIR="${D}" || die + fperms 600 /etc/ssh/sshd_config + dobin contrib/ssh-copy-id + newinitd "${FILESDIR}"/sshd.rc6 sshd + newconfd "${FILESDIR}"/sshd.confd sshd + keepdir /var/empty + + newpamd "${FILESDIR}"/sshd.pam_include.2 sshd + if use pam ; then + sed -i \ + -e "/^#UsePAM /s:.*:UsePAM yes:" \ + -e "/^#PasswordAuthentication /s:.*:PasswordAuthentication no:" \ + -e "/^#PrintMotd /s:.*:PrintMotd no:" \ + -e "/^#PrintLastLog /s:.*:PrintLastLog no:" \ + "${D}"/etc/ssh/sshd_config || die "sed of configuration file failed" + fi + + # This instruction is from the HPN webpage, + # Used for the server logging functionality + if [[ -n ${HPN_PATCH} ]] && use hpn; then + keepdir /var/empty/dev + fi + + doman contrib/ssh-copy-id.1 + dodoc ChangeLog CREDITS OVERVIEW README* TODO sshd_config + + diropts -m 0700 + dodir /etc/skel/.ssh +} + +src_test() { + local t tests skipped failed passed shell + tests="interop-tests compat-tests" + skipped="" + shell=$(getent passwd ${UID} | cut -d: -f7) + if [[ ${shell} == */nologin ]] || [[ ${shell} == */false ]] ; then + elog "Running the full OpenSSH testsuite" + elog "requires a usable shell for the 'portage'" + elog "user, so we will run a subset only." + skipped="${skipped} tests" + else + tests="${tests} tests" + fi + for t in ${tests} ; do + # Some tests read from stdin ... + emake -k -j1 ${t} </dev/null \ + && passed="${passed}${t} " \ + || failed="${failed}${t} " + done + einfo "Passed tests: ${passed}" + ewarn "Skipped tests: ${skipped}" + if [[ -n ${failed} ]] ; then + ewarn "Failed tests: ${failed}" + die "Some tests failed: ${failed}" + else + einfo "Failed tests: ${failed}" + return 0 + fi +} + +pkg_postinst() { + enewgroup sshd 22 + enewuser sshd 22 -1 /var/empty sshd + + ewarn "Remember to merge your config files in /etc/ssh/ and then" + ewarn "reload sshd: '/etc/init.d/sshd reload'." + if use pam ; then + echo + ewarn "Please be aware users need a valid shell in /etc/passwd" + ewarn "in order to be allowed to login." + fi + # This instruction is from the HPN webpage, + # Used for the server logging functionality + if [[ -n ${HPN_PATCH} ]] && use hpn; then + echo + einfo "For the HPN server logging patch, you must ensure that" + einfo "your syslog application also listens at /var/empty/dev/log." + fi +} |