diff options
author | Ulrich Müller <ulm@gentoo.org> | 2015-12-12 10:15:14 +0100 |
---|---|---|
committer | Ulrich Müller <ulm@gentoo.org> | 2015-12-12 10:15:14 +0100 |
commit | 290b26df9f776c186fea43c21a7213256d48f722 (patch) | |
tree | 7cde33f0d31cf41fb8b9055bc731a1b58601f8aa /sys-auth | |
parent | readme.gentoo.eclass: Enable EAPI 6. (diff) | |
download | gentoo-290b26df9f776c186fea43c21a7213256d48f722.tar.gz gentoo-290b26df9f776c186fea43c21a7213256d48f722.tar.bz2 gentoo-290b26df9f776c186fea43c21a7213256d48f722.zip |
sys-auth/skey: Avoid out of bounds stack read.
Fix the extract() function not to access unnecessary array elements;
this avoids an out-of-bounds read when called from btoe() or etob().
Change the insert() function to use similar logic as extract().
Bug: 567608
Package-Manager: portage-2.2.26
Diffstat (limited to 'sys-auth')
-rw-r--r-- | sys-auth/skey/Manifest | 1 | ||||
-rw-r--r-- | sys-auth/skey/skey-1.1.5-r10.ebuild | 83 |
2 files changed, 84 insertions, 0 deletions
diff --git a/sys-auth/skey/Manifest b/sys-auth/skey/Manifest index dbd6b3c9ee35..4cbfec5a4a3c 100644 --- a/sys-auth/skey/Manifest +++ b/sys-auth/skey/Manifest @@ -1,2 +1,3 @@ DIST skey-1.1.5-patches-3.tar.xz 33604 SHA256 adabe7b286f586d2cbe1a4b15f71310b7d8e25fc3187f8a89071359d7975badf SHA512 dcef6837e563ce3f68fe4eed35f16db1636e1798219dba95c86db505b5f67034b44bc6d02e0125faa95db8a5c39e9615bfed2dc3105905e576d96cf32016bc2f WHIRLPOOL bff241ecf0f59dae810db300bd858f76e18153f1958f2154c538f42040cc1040f049442d697767cfa7346996931d81370c2551d752c52810c9b18fe9e351c212 +DIST skey-1.1.5-patches-4.tar.xz 33952 SHA256 7a8e8c4a85c8982dbd0bcb8a45e7c4f2b45da94af7d92d515eeb6e7cb29a6999 SHA512 5789893cfeec0d31b0294f287aad688358dcf73a21663626ebc39209e1af43795669b6141cc80e226257f1dd574143f17f54a5b081bf6f9790ca287809fcd00d WHIRLPOOL 51d5002f58df0428535f2819636a896c1645098a9a71ce403a37623313b5385ee2698aed642cba5e5f30c9b211040a86dd71cf44b6798c76947a96634982c69f DIST skey-1.1.5.tar.bz2 61911 SHA256 e21bcb7c618c0bc87a72d8f0f097d7517fffa4e881a0f295ee1ce2a7dccf4aef SHA512 4cbddc7e31134d5e23801a9b07de0d05c8357aaa8dddfb8426fceead3f54e539f77204f78a08b2a93890ef2f4f807a2208080f58f80818afa1b8cd4884b1fb37 WHIRLPOOL abf141fd679deeaee3f3883cd3076620c84e8775ecacc8f87d561c1812beae55299989f37ec331633bac29e25b4b8d145dc590ef119c73a137d8790815bb13f2 diff --git a/sys-auth/skey/skey-1.1.5-r10.ebuild b/sys-auth/skey/skey-1.1.5-r10.ebuild new file mode 100644 index 000000000000..a5c82b777f7c --- /dev/null +++ b/sys-auth/skey/skey-1.1.5-r10.ebuild @@ -0,0 +1,83 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +inherit toolchain-funcs readme.gentoo + +DESCRIPTION="Linux Port of OpenBSD Single-key Password System" +HOMEPAGE="http://www.openbsd.org/faq/faq8.html#SKey" +SRC_URI="mirror://gentoo/${P}.tar.bz2 + https://dev.gentoo.org/~ulm/distfiles/${P}-patches-4.tar.xz" + +LICENSE="BSD MIT RSA BEER-WARE" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" +IUSE="static-libs" + +DEPEND="dev-lang/perl + app-arch/xz-utils" +RDEPEND="dev-lang/perl + virtual/perl-Time-Local + sys-libs/cracklib" + +PATCHES="patch" + +src_configure() { + tc-export CC + econf --sysconfdir=/etc/skey +} + +src_install() { + into / + dolib.so libskey.so{.${PV},.${PV%.*},.${PV%%.*},} + + into /usr + dobin skey skeyinit skeyinfo + newbin skeyaudit.sh skeyaudit + newsbin skeyprune.pl skeyprune + + dosym skey /usr/bin/otp-md4 + dosym skey /usr/bin/otp-md5 + dosym skey /usr/bin/otp-sha1 + + if use static-libs; then + dolib.a libskey.a + gen_usr_ldscript libskey.so + fi + + doman skey.1 skeyaudit.1 skeyinfo.1 skeyinit.1 skey.3 skeyprune.8 + + insinto /usr/include + doins skey.h + + keepdir /etc/skey + + # only root needs to have access to these files. + fperms go-rx /etc/skey + + # skeyinit and skeyinfo must be suid root so users + # can generate their passwords. + fperms u+s,go-r /usr/bin/skeyinit /usr/bin/skeyinfo + + dodoc README CHANGES + + DOC_CONTENTS="For an introduction into using s/key authentication, + take a look at the EXAMPLES section from the skey(1) manpage." + readme.gentoo_create_doc +} + +pkg_postinst() { + # do not include /etc/skey/skeykeys in the package, as quickpkg + # may package sensitive information. + # This also fixes the etc-update issue with #64974. + + # skeyinit will not function if this file is not present. + touch /etc/skey/skeykeys + + # these permissions are applied by the skey system if missing. + chmod 0600 /etc/skey/skeykeys + + readme.gentoo_print_elog +} |