summaryrefslogtreecommitdiff
path: root/dev-libs/libtasn1
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-libs/libtasn1
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-libs/libtasn1')
-rw-r--r--dev-libs/libtasn1/Manifest6
-rw-r--r--dev-libs/libtasn1/files/libtasn1-4.12-CVE-2017-10790.patch55
-rw-r--r--dev-libs/libtasn1/libtasn1-4.12-r1.ebuild54
-rw-r--r--dev-libs/libtasn1/metadata.xml13
4 files changed, 128 insertions, 0 deletions
diff --git a/dev-libs/libtasn1/Manifest b/dev-libs/libtasn1/Manifest
new file mode 100644
index 000000000000..f6824931631d
--- /dev/null
+++ b/dev-libs/libtasn1/Manifest
@@ -0,0 +1,6 @@
+AUX libtasn1-4.12-CVE-2017-10790.patch 2268 SHA256 f1dc9ff3f7e660633a2cc3e60f4198aafc46f479662176cf160ca7fb5503bcec SHA512 8e9dad0a1ee7cb7a8ed3d2a60c1c1bcb3e1ef689dbd2879992d4098f36edbae3bb962b9c87a0a9a77335e83abf10fd72bd78bde99989421c35f4434a9e1d08cc WHIRLPOOL f1618cfe32fa6dd451b3197e1eb16de8ffc2dbb365710337087331430ef1983ae1992a07fe4d14477adf2e38245d43c34b6601a34c4a4da437847bb12b5c5ed8
+DIST libtasn1-4.12.tar.gz 1888450 SHA256 6753da2e621257f33f5b051cc114d417e5206a0818fe0b1ecfd6153f70934753 SHA512 6c551670949881193e39122f72948e4999ff1ba377f9ee5963d0a4ad1b84256e4fe42e9f6d6a2aa9f7d4ef7acc0e5174fb5cc3df5298524cdeda92f4b8c104f7 WHIRLPOOL a2f29dbfb59bb2cbe5d533647028c9418b2b4871b67f7367757ebf4c706eab2b1bac8d5645784899bb85e9611a28f693655c1ff857c984109c0719a6f5dd78a5
+EBUILD libtasn1-4.12-r1.ebuild 1374 SHA256 8936340af572d59697e337b1c1f272e8e1ee01222aa95e135230dace7d542def SHA512 05777e5bf82b964530eba729f7cda139899143c5174c47a33c8bc0414f661d4ba5c27c088845aeb091d1d8e8fdbd9208be9f2ab363c461950477c7d629a2e12a WHIRLPOOL bbde9ff3e4c023de6e173825aa0c54c07a447cc6d7b149371d9768d9de06330611c1468f7219633c98c08267477eea75f7a980b879907c32d69b91d9601650a3
+MISC ChangeLog 5517 SHA256 6ee489831ed2ca0de17096d39abde90111420649410b80e3b2685a7a0c77d361 SHA512 d18846f310c2e49fc65802855beb4ff7c3a303dd2a3288d207356f87e7209ae3f9df3ba478dceb3401e212fc63530a0fbcbf422baf50931d66aa158a689ce6b9 WHIRLPOOL a0053d02e586abf07526896741d92bb027af09339bbca11a09995aa071e8a98540cd0789948422c6f60e95b91333974a05be87d9785b52c1d18f659d01211f52
+MISC ChangeLog-2015 29688 SHA256 8f9a731b7eda2c9321d3934d944889d3c08fa2afe2bc0735c76fa894fb24d04e SHA512 d891912b5eabdc1ada0db858b0f6e5daa3c3d90b95bf9cbe3abf36931484f0305abb81d2c3c5448b82a57d6625cfec1eb874a2992f9a5fdf3ddcbe561ad4ed0e WHIRLPOOL bb760059ca2af1f3e11e5025023c3d0a64b8c2f6655060cf4ab38299235610910ffafbf03a536432abdf0df9e449aaeab971494738e353d9a6f6a9b7c24b0664
+MISC metadata.xml 347 SHA256 ffd75a0aa1c43acc2024cac48563e899f68020b6114547c3d4f7abff8253dc01 SHA512 2f70d06c9e91e2d9305cce180c302b6b04b4831fd93c1897fd2027a1bf5855700c5531ba3f9c3fe93748df1db923d6ad4ea78bbe3cfd2458c0006457ed43a450 WHIRLPOOL 2165e6fdce1234ecaa0dfddd3071a6cf71bfcfcfee58cc02149e43a49c3da775a91d3590be63dc916b8763f1f1a7e7f683614c9eac74e9ace77a6ee6cb31e208
diff --git a/dev-libs/libtasn1/files/libtasn1-4.12-CVE-2017-10790.patch b/dev-libs/libtasn1/files/libtasn1-4.12-CVE-2017-10790.patch
new file mode 100644
index 000000000000..eb752c20a9b4
--- /dev/null
+++ b/dev-libs/libtasn1/files/libtasn1-4.12-CVE-2017-10790.patch
@@ -0,0 +1,55 @@
+From d8d805e1f2e6799bb2dff4871a8598dc83088a39 Mon Sep 17 00:00:00 2001
+From: Nikos Mavrogiannopoulos <nmav@redhat.com>
+Date: Thu, 22 Jun 2017 16:31:37 +0200
+Subject: [PATCH] _asn1_check_identifier: safer access to values read
+
+Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
+---
+ lib/parser_aux.c | 17 ++++++++++++-----
+ 1 file changed, 12 insertions(+), 5 deletions(-)
+
+diff --git a/lib/parser_aux.c b/lib/parser_aux.c
+index 976ab38..786ea64 100644
+--- a/lib/parser_aux.c
++++ b/lib/parser_aux.c
+@@ -955,7 +955,7 @@ _asn1_check_identifier (asn1_node node)
+ if (p2 == NULL)
+ {
+ if (p->value)
+- _asn1_strcpy (_asn1_identifierMissing, p->value);
++ _asn1_str_cpy (_asn1_identifierMissing, sizeof(_asn1_identifierMissing), (char*)p->value);
+ else
+ _asn1_strcpy (_asn1_identifierMissing, "(null)");
+ return ASN1_IDENTIFIER_NOT_FOUND;
+@@ -968,9 +968,15 @@ _asn1_check_identifier (asn1_node node)
+ if (p2 && (type_field (p2->type) == ASN1_ETYPE_DEFAULT))
+ {
+ _asn1_str_cpy (name2, sizeof (name2), node->name);
+- _asn1_str_cat (name2, sizeof (name2), ".");
+- _asn1_str_cat (name2, sizeof (name2), (char *) p2->value);
+- _asn1_strcpy (_asn1_identifierMissing, p2->value);
++ if (p2->value)
++ {
++ _asn1_str_cat (name2, sizeof (name2), ".");
++ _asn1_str_cat (name2, sizeof (name2), (char *) p2->value);
++ _asn1_str_cpy (_asn1_identifierMissing, sizeof(_asn1_identifierMissing), (char*)p2->value);
++ }
++ else
++ _asn1_strcpy (_asn1_identifierMissing, "(null)");
++
+ p2 = asn1_find_node (node, name2);
+ if (!p2 || (type_field (p2->type) != ASN1_ETYPE_OBJECT_ID) ||
+ !(p2->type & CONST_ASSIGN))
+@@ -990,7 +996,8 @@ _asn1_check_identifier (asn1_node node)
+ _asn1_str_cpy (name2, sizeof (name2), node->name);
+ _asn1_str_cat (name2, sizeof (name2), ".");
+ _asn1_str_cat (name2, sizeof (name2), (char *) p2->value);
+- _asn1_strcpy (_asn1_identifierMissing, p2->value);
++ _asn1_str_cpy (_asn1_identifierMissing, sizeof(_asn1_identifierMissing), (char*)p2->value);
++
+ p2 = asn1_find_node (node, name2);
+ if (!p2 || (type_field (p2->type) != ASN1_ETYPE_OBJECT_ID)
+ || !(p2->type & CONST_ASSIGN))
+--
+1.9.1
+
diff --git a/dev-libs/libtasn1/libtasn1-4.12-r1.ebuild b/dev-libs/libtasn1/libtasn1-4.12-r1.ebuild
new file mode 100644
index 000000000000..581fad028802
--- /dev/null
+++ b/dev-libs/libtasn1/libtasn1-4.12-r1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multilib-minimal libtool ltprune
+
+DESCRIPTION="ASN.1 library"
+HOMEPAGE="https://www.gnu.org/software/libtasn1/"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3 LGPL-2.1"
+SLOT="0/6" # subslot = libtasn1 soname version
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc static-libs valgrind"
+
+DEPEND=">=dev-lang/perl-5.6
+ sys-apps/help2man
+ virtual/yacc"
+RDEPEND="
+ valgrind? ( dev-util/valgrind )
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20131008-r16
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )"
+
+DOCS=( AUTHORS ChangeLog NEWS README THANKS )
+
+PATCHES=(
+ "${FILESDIR}/${P}-CVE-2017-10790.patch"
+)
+
+pkg_setup() {
+ if use doc; then
+ DOCS+=( doc/libtasn1.pdf )
+ HTML_DOCS=( doc/reference/html/. )
+ fi
+}
+
+src_prepare() {
+ default
+ elibtoolize # for Solaris shared library
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" econf \
+ $(use_enable static-libs static) \
+ $(multilib_native_use_enable valgrind valgrind-tests)
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ prune_libtool_files
+}
diff --git a/dev-libs/libtasn1/metadata.xml b/dev-libs/libtasn1/metadata.xml
new file mode 100644
index 000000000000..c7fc0ea791dc
--- /dev/null
+++ b/dev-libs/libtasn1/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>crypto@gentoo.org</email>
+ <name>Crypto</name>
+ </maintainer>
+ <use>
+ <flag name="valgrind">
+ Enable usage of <pkg>dev-util/valgrind</pkg> in debug
+ </flag>
+ </use>
+</pkgmetadata>