summaryrefslogtreecommitdiff
path: root/media-libs/libexif
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs/libexif')
-rw-r--r--media-libs/libexif/Manifest2
-rw-r--r--media-libs/libexif/files/libexif-0.6.21-CVE-2017-7544.patch30
-rw-r--r--media-libs/libexif/libexif-0.6.21-r2.ebuild50
3 files changed, 82 insertions, 0 deletions
diff --git a/media-libs/libexif/Manifest b/media-libs/libexif/Manifest
index e07e0029a5bb..b5284db34045 100644
--- a/media-libs/libexif/Manifest
+++ b/media-libs/libexif/Manifest
@@ -1,5 +1,7 @@
AUX libexif-0.6.13-pkgconfig.patch 255 BLAKE2B 397c0e88f951628e697cdd749936b3e4e676bccac2fb2bff2553b12d5978f03719175b9d25fa66bc06dd459e0f6671af48276d449de9b029202dfe7a3622fc85 SHA512 859c6b5bf179f315184f5f34a986761f113786792ff2e13461cf64ccf394dd2d7bd97215db0651d52819533cb918652d7eae9f18b2a913dd9ccf390cdf3adb65
+AUX libexif-0.6.21-CVE-2017-7544.patch 1060 BLAKE2B 130b95e5f4f44402385bb6825e8728ad32b328dfe621957edcada1da351d8aa01f221c7de2bcc6242166a65a1edeef2e3babb1735909bc7d59594d379d5e325b SHA512 d529c6c5bd26dc21c0946702574184e1f61c2bfd4fb95b41e314f486a0dd55571963ff2cad566d2fb0804de3c0799bcd956c15a3dc10a520ce207728edad4e2d
DIST libexif-0.6.21.tar.bz2 1368435 BLAKE2B 151e3ddcdd45759fd70be91db27511f48a9b7d5de72c8af510e5a231e2f053f8b5d62d1269a1206e419461b07fb723788492604f1f1142edcb5ab7a0876dd307 SHA512 4e0fe2abe85d1c95b41cb3abe1f6333dc3a9eb69dba106a674a78d74a4d5b9c5a19647118fa1cc2d72b98a29853394f1519eda9e2889eb28d3be26b21c7cfc35
EBUILD libexif-0.6.21-r1.ebuild 1192 BLAKE2B d05e18b15894cc916eeb672b11636dd8f45cef93866a339115fff43b8193ee88d515c063aa31fbbbbda9e812b99509210a8964c31a057316ab5831c4379192f6 SHA512 25bfabdfceafc916f8a1cf162f875741f402a119d0ab4ff3008f805160e2ff5e5e556b4a229689a603546a528b5c7ea02f750fe972adacbb2d5af33c1e979b99
+EBUILD libexif-0.6.21-r2.ebuild 1277 BLAKE2B f4708d11cb02e00150d5acd6deb9cb819843e9d70e66052a895d7f958605e0b39e6d09e78142931743ac3c5946ff3dfcb411cd8f19e07d38b86c28767f0cb464 SHA512 05666b45bd226fecbc9fe3e962579f886ee95adf065c0c17b6ada36964ba3f6ce01f4fefd4b6c306b812d719f2920f43436d4b479deca86257a494af16d1663a
EBUILD libexif-0.6.21.ebuild 1097 BLAKE2B 5d76f389fcca57a7ba7d1f650c6c268f0e65b3172dbd75a561611e590cd2cf4fda4648402ea6abf386be5d7f16bbd9928f80ecf1df2704094d8f2667c500c697 SHA512 99cf126b1d9b5076d5e835453264f1a9aa906254f84a331b452d5ad0cc62e74b7276370b12cf4f228abd275d0514a7d86ac204b2cbd60ca04f560effcdaca9d1
MISC metadata.xml 336 BLAKE2B 7f77063db7c0cf51903da446071dff6d4dccf66e552dd1229f01b79ab7716d02adcb146f755971d0fe96c2a04bacbd082f606c4023e6e98f9c502a3f8eda7416 SHA512 8a6e3d7c973692a37f57ce34136c863e6ad14efd064c42ea0be6c14d93beec3c7ae36ed44afd6d2454ab29f4cb633c097a0c3b2ea5c019bf06df4f306dbfced0
diff --git a/media-libs/libexif/files/libexif-0.6.21-CVE-2017-7544.patch b/media-libs/libexif/files/libexif-0.6.21-CVE-2017-7544.patch
new file mode 100644
index 000000000000..534817417d84
--- /dev/null
+++ b/media-libs/libexif/files/libexif-0.6.21-CVE-2017-7544.patch
@@ -0,0 +1,30 @@
+From c39acd1692023b26290778a02a9232c873f9d71a Mon Sep 17 00:00:00 2001
+From: Marcus Meissner <marcus@jet.franken.de>
+Date: Tue, 25 Jul 2017 23:38:56 +0200
+Subject: [PATCH] On saving makernotes, make sure the makernote container tags
+ has a type with 1 byte components.
+
+Fixes (at least):
+ https://sourceforge.net/p/libexif/bugs/130
+ https://sourceforge.net/p/libexif/bugs/129
+---
+ libexif/exif-data.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/libexif/exif-data.c b/libexif/exif-data.c
+index 67df4db..91f4c33 100644
+--- a/libexif/exif-data.c
++++ b/libexif/exif-data.c
+@@ -255,6 +255,12 @@ exif_data_save_data_entry (ExifData *data, ExifEntry *e,
+ exif_mnote_data_set_offset (data->priv->md, *ds - 6);
+ exif_mnote_data_save (data->priv->md, &e->data, &e->size);
+ e->components = e->size;
++ if (exif_format_get_size (e->format) != 1) {
++ /* e->format is taken from input code,
++ * but we need to make sure it is a 1 byte
++ * entity due to the multiplication below. */
++ e->format = EXIF_FORMAT_UNDEFINED;
++ }
+ }
+ }
+
diff --git a/media-libs/libexif/libexif-0.6.21-r2.ebuild b/media-libs/libexif/libexif-0.6.21-r2.ebuild
new file mode 100644
index 000000000000..29570dbe4f9d
--- /dev/null
+++ b/media-libs/libexif/libexif-0.6.21-r2.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit libtool multilib-minimal
+
+DESCRIPTION="Library for parsing, editing, and saving EXIF data"
+HOMEPAGE="https://libexif.github.io/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
+IUSE="doc nls static-libs"
+
+RDEPEND="nls? ( virtual/libintl )"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ doc? ( app-doc/doxygen )
+ nls? ( sys-devel/gettext )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.6.13-pkgconfig.patch
+ "${FILESDIR}"/${P}-CVE-2017-7544.patch
+)
+
+src_prepare() {
+ default
+ sed -i -e '/FLAGS=/s:-g::' configure || die #390249
+ elibtoolize # For *-bsd
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE=${S} econf \
+ $(use_enable doc docs) \
+ $(use_enable nls) \
+ $(use_enable static-libs static) \
+ --with-doc-dir="${EPREFIX}"/usr/share/doc/${PF}
+}
+
+multilib_src_install() {
+ emake DESTDIR="${D}" install
+}
+
+multilib_src_install_all() {
+ find "${D}" -name '*.la' -delete || die
+ rm -f "${ED}"/usr/share/doc/${PF}/{ABOUT-NLS,COPYING} || die
+}