Date: Sunday, May 17, 2020 @ 17:09:30 Author: dvzrv Revision: 385433 archrelease: copy trunk to extra-x86_64
Added: libid3tag/repos/extra-x86_64/10_utf16.diff (from rev 385432, libid3tag/trunk/10_utf16.diff) libid3tag/repos/extra-x86_64/11_unknown_encoding.diff (from rev 385432, libid3tag/trunk/11_unknown_encoding.diff) libid3tag/repos/extra-x86_64/CVE-2008-2109.patch (from rev 385432, libid3tag/trunk/CVE-2008-2109.patch) libid3tag/repos/extra-x86_64/PKGBUILD (from rev 385432, libid3tag/trunk/PKGBUILD) libid3tag/repos/extra-x86_64/id3tag.pc (from rev 385432, libid3tag/trunk/id3tag.pc) libid3tag/repos/extra-x86_64/libid3tag-gperf.patch (from rev 385432, libid3tag/trunk/libid3tag-gperf.patch) Deleted: libid3tag/repos/extra-x86_64/10_utf16.diff libid3tag/repos/extra-x86_64/11_unknown_encoding.diff libid3tag/repos/extra-x86_64/CVE-2008-2109.patch libid3tag/repos/extra-x86_64/PKGBUILD libid3tag/repos/extra-x86_64/id3tag.pc libid3tag/repos/extra-x86_64/libid3tag-gperf.patch --------------------------+ 10_utf16.diff | 96 +++++++++++++++++++++--------------------- 11_unknown_encoding.diff | 74 ++++++++++++++++---------------- CVE-2008-2109.patch | 22 ++++----- PKGBUILD | 101 ++++++++++++++++++++++++--------------------- id3tag.pc | 20 ++++---- libid3tag-gperf.patch | 52 +++++++++++------------ 6 files changed, 188 insertions(+), 177 deletions(-) Deleted: 10_utf16.diff =================================================================== --- 10_utf16.diff 2020-05-17 17:09:17 UTC (rev 385432) +++ 10_utf16.diff 2020-05-17 17:09:30 UTC (rev 385433) @@ -1,48 +0,0 @@ -#! /bin/sh -e -## 10_utf16.dpatch by <k...@roeckx.be> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: Handle bogus UTF16 sequences that have a length that is not -## DP: an even number of 8 bit characters. - -if [ $# -lt 1 ]; then - echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 - exit 1 -fi - -[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts -patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}" - -case "$1" in - -patch) patch -p1 ${patch_opts} < $0;; - -unpatch) patch -R -p1 ${patch_opts} < $0;; - *) - echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 - exit 1;; -esac - -exit 0 - -@DPATCH@ -diff -urNad libid3tag-0.15.1b/utf16.c /tmp/dpep.tKvO7a/libid3tag-0.15.1b/utf16.c ---- libid3tag-0.15.1b/utf16.c 2006-01-13 15:26:29.000000000 +0100 -+++ /tmp/dpep.tKvO7a/libid3tag-0.15.1b/utf16.c 2006-01-13 15:27:19.000000000 +0100 -@@ -282,5 +282,18 @@ - - free(utf16); - -+ if (end == *ptr && length % 2 != 0) -+ { -+ /* We were called with a bogus length. It should always -+ * be an even number. We can deal with this in a few ways: -+ * - Always give an error. -+ * - Try and parse as much as we can and -+ * - return an error if we're called again when we -+ * already tried to parse everything we can. -+ * - tell that we parsed it, which is what we do here. -+ */ -+ (*ptr)++; -+ } -+ - return ucs4; - } Copied: libid3tag/repos/extra-x86_64/10_utf16.diff (from rev 385432, libid3tag/trunk/10_utf16.diff) =================================================================== --- 10_utf16.diff (rev 0) +++ 10_utf16.diff 2020-05-17 17:09:30 UTC (rev 385433) @@ -0,0 +1,48 @@ +#! /bin/sh -e +## 10_utf16.dpatch by <k...@roeckx.be> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Handle bogus UTF16 sequences that have a length that is not +## DP: an even number of 8 bit characters. + +if [ $# -lt 1 ]; then + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}" + +case "$1" in + -patch) patch -p1 ${patch_opts} < $0;; + -unpatch) patch -R -p1 ${patch_opts} < $0;; + *) + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1;; +esac + +exit 0 + +@DPATCH@ +diff -urNad libid3tag-0.15.1b/utf16.c /tmp/dpep.tKvO7a/libid3tag-0.15.1b/utf16.c +--- libid3tag-0.15.1b/utf16.c 2006-01-13 15:26:29.000000000 +0100 ++++ /tmp/dpep.tKvO7a/libid3tag-0.15.1b/utf16.c 2006-01-13 15:27:19.000000000 +0100 +@@ -282,5 +282,18 @@ + + free(utf16); + ++ if (end == *ptr && length % 2 != 0) ++ { ++ /* We were called with a bogus length. It should always ++ * be an even number. We can deal with this in a few ways: ++ * - Always give an error. ++ * - Try and parse as much as we can and ++ * - return an error if we're called again when we ++ * already tried to parse everything we can. ++ * - tell that we parsed it, which is what we do here. ++ */ ++ (*ptr)++; ++ } ++ + return ucs4; + } Deleted: 11_unknown_encoding.diff =================================================================== --- 11_unknown_encoding.diff 2020-05-17 17:09:17 UTC (rev 385432) +++ 11_unknown_encoding.diff 2020-05-17 17:09:30 UTC (rev 385433) @@ -1,37 +0,0 @@ -#! /bin/sh /usr/share/dpatch/dpatch-run -## 11_unknown_encoding.dpatch by Andreas Henriksson <andr...@fatal.se> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: In case of an unknown/invalid encoding, id3_parse_string() will -## DP: return NULL, but the return value wasn't checked resulting -## DP: in segfault in id3_ucs4_length(). This is the only place -## DP: the return value wasn't checked. - -@DPATCH@ -diff -urNad libid3tag-0.15.1b~/compat.gperf libid3tag-0.15.1b/compat.gperf ---- libid3tag-0.15.1b~/compat.gperf 2004-01-23 09:41:32.000000000 +0000 -+++ libid3tag-0.15.1b/compat.gperf 2007-01-14 14:36:53.000000000 +0000 -@@ -236,6 +236,10 @@ - - encoding = id3_parse_uint(&data, 1); - string = id3_parse_string(&data, end - data, encoding, 0); -+ if (!string) -+ { -+ continue; -+ } - - if (id3_ucs4_length(string) < 4) { - free(string); -diff -urNad libid3tag-0.15.1b~/parse.c libid3tag-0.15.1b/parse.c ---- libid3tag-0.15.1b~/parse.c 2004-01-23 09:41:32.000000000 +0000 -+++ libid3tag-0.15.1b/parse.c 2007-01-14 14:37:34.000000000 +0000 -@@ -165,6 +165,9 @@ - case ID3_FIELD_TEXTENCODING_UTF_8: - ucs4 = id3_utf8_deserialize(ptr, length); - break; -+ default: -+ /* FIXME: Unknown encoding! Print warning? */ -+ return NULL; - } - - if (ucs4 && !full) { Copied: libid3tag/repos/extra-x86_64/11_unknown_encoding.diff (from rev 385432, libid3tag/trunk/11_unknown_encoding.diff) =================================================================== --- 11_unknown_encoding.diff (rev 0) +++ 11_unknown_encoding.diff 2020-05-17 17:09:30 UTC (rev 385433) @@ -0,0 +1,37 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 11_unknown_encoding.dpatch by Andreas Henriksson <andr...@fatal.se> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: In case of an unknown/invalid encoding, id3_parse_string() will +## DP: return NULL, but the return value wasn't checked resulting +## DP: in segfault in id3_ucs4_length(). This is the only place +## DP: the return value wasn't checked. + +@DPATCH@ +diff -urNad libid3tag-0.15.1b~/compat.gperf libid3tag-0.15.1b/compat.gperf +--- libid3tag-0.15.1b~/compat.gperf 2004-01-23 09:41:32.000000000 +0000 ++++ libid3tag-0.15.1b/compat.gperf 2007-01-14 14:36:53.000000000 +0000 +@@ -236,6 +236,10 @@ + + encoding = id3_parse_uint(&data, 1); + string = id3_parse_string(&data, end - data, encoding, 0); ++ if (!string) ++ { ++ continue; ++ } + + if (id3_ucs4_length(string) < 4) { + free(string); +diff -urNad libid3tag-0.15.1b~/parse.c libid3tag-0.15.1b/parse.c +--- libid3tag-0.15.1b~/parse.c 2004-01-23 09:41:32.000000000 +0000 ++++ libid3tag-0.15.1b/parse.c 2007-01-14 14:37:34.000000000 +0000 +@@ -165,6 +165,9 @@ + case ID3_FIELD_TEXTENCODING_UTF_8: + ucs4 = id3_utf8_deserialize(ptr, length); + break; ++ default: ++ /* FIXME: Unknown encoding! Print warning? */ ++ return NULL; + } + + if (ucs4 && !full) { Deleted: CVE-2008-2109.patch =================================================================== --- CVE-2008-2109.patch 2020-05-17 17:09:17 UTC (rev 385432) +++ CVE-2008-2109.patch 2020-05-17 17:09:30 UTC (rev 385433) @@ -1,11 +0,0 @@ ---- field.c.orig 2008-05-05 09:49:15.000000000 -0400 -+++ field.c 2008-05-05 09:49:25.000000000 -0400 -@@ -291,7 +291,7 @@ - - end = *ptr + length; - -- while (end - *ptr > 0) { -+ while (end - *ptr > 0 && **ptr != '\0') { - ucs4 = id3_parse_string(ptr, end - *ptr, *encoding, 0); - if (ucs4 == 0) - goto fail; Copied: libid3tag/repos/extra-x86_64/CVE-2008-2109.patch (from rev 385432, libid3tag/trunk/CVE-2008-2109.patch) =================================================================== --- CVE-2008-2109.patch (rev 0) +++ CVE-2008-2109.patch 2020-05-17 17:09:30 UTC (rev 385433) @@ -0,0 +1,11 @@ +--- field.c.orig 2008-05-05 09:49:15.000000000 -0400 ++++ field.c 2008-05-05 09:49:25.000000000 -0400 +@@ -291,7 +291,7 @@ + + end = *ptr + length; + +- while (end - *ptr > 0) { ++ while (end - *ptr > 0 && **ptr != '\0') { + ucs4 = id3_parse_string(ptr, end - *ptr, *encoding, 0); + if (ucs4 == 0) + goto fail; Deleted: PKGBUILD =================================================================== --- PKGBUILD 2020-05-17 17:09:17 UTC (rev 385432) +++ PKGBUILD 2020-05-17 17:09:30 UTC (rev 385433) @@ -1,45 +0,0 @@ -# $Id$ -# Maintainer: -# Contributor: dorphell <dorph...@archlinux.org> - -pkgname=libid3tag -pkgver=0.15.1b -pkgrel=9 -pkgdesc="library for id3 tagging" -arch=('x86_64') -url="http://www.underbit.com/products/mad/" -license=('GPL') -depends=('zlib') -makedepends=('gperf') -source=("ftp://ftp.mars.org/pub/mpeg/${pkgname}-${pkgver}.tar.gz" - 'id3tag.pc' - '10_utf16.diff' '11_unknown_encoding.diff' 'CVE-2008-2109.patch' libid3tag-gperf.patch) -md5sums=('e5808ad997ba32c498803822078748c3' - '8bb41fd814fafcc37ec8bc88f5545a4a' - '4f9df4011e6a8c23240fff5de2d05f6e' - '3ca856b97924d48a0fdfeff0bd83ce7d' - 'c51822ea6301b1ca469975f0c9ee8e34' - '85502349069e61eaeea4610b1ea6cb56') - -prepare() { - cd $pkgname-$pkgver - patch -p1 -i ${srcdir}/10_utf16.diff - patch -p1 -i ${srcdir}/11_unknown_encoding.diff - patch -Np0 -i ${srcdir}/CVE-2008-2109.patch - patch -p1 -i ../libid3tag-gperf.patch # Fedora patch - - rm compat.c frametype.c # regenerate them from gperf sources -} - -build() { - cd ${pkgname}-${pkgver} - - ./configure --prefix=/usr - make -} - -package() { - cd ${pkgname}-${pkgver} - make DESTDIR="${pkgdir}" install - install -D -m644 "${srcdir}/id3tag.pc" "${pkgdir}/usr/lib/pkgconfig/id3tag.pc" -} Copied: libid3tag/repos/extra-x86_64/PKGBUILD (from rev 385432, libid3tag/trunk/PKGBUILD) =================================================================== --- PKGBUILD (rev 0) +++ PKGBUILD 2020-05-17 17:09:30 UTC (rev 385433) @@ -0,0 +1,56 @@ +# Maintainer: Lukas Fleischer <lfleisc...@archlinux.org> +# Contributor: David Runge <dv...@archlinux.org> +# Contributor: dorphell <dorph...@archlinux.org> + +pkgname=libid3tag +pkgver=0.15.1b +pkgrel=11 +pkgdesc="ID3 tag manipulation library" +arch=('x86_64') +url="https://www.underbit.com/products/mad/" +license=('GPL2') +depends=('glibc' 'zlib') +makedepends=('gperf') +provides=('libid3tag.so') +source=("https://sourceforge.net/projects/mad/files/libid3tag/${pkgver}/${pkgname}-${pkgver}.tar.gz" + 'id3tag.pc' + '10_utf16.diff' + '11_unknown_encoding.diff' + 'CVE-2008-2109.patch' + 'libid3tag-gperf.patch') +sha512sums=('ade7ce2a43c3646b4c9fdc642095174b9d4938b078b205cd40906d525acd17e87ad76064054a961f391edcba6495441450af2f68be69f116549ca666b069e6d3' + 'f58367ad74a6ec310f757935b57d59beebbd817ee12de9e532e4af31e166d2f1f614eb3f44caa8601dc5102bfde9ddbea4b8b80bbaa1791dcfcb23e1bd2ed1a6' + '3a1c6ad1ba82738276d87369eac0dedf08b83322c767e23e1d73571275a92d6a06877a998d508c74345538a75d28fdffc92446fa3dcff9f3bee90de36fa42247' + '8d8ae41a65e1cd343aad2dcf77239144f3c96c433259c3180c403da2d50701687755cb67814b42da04888b2b7e92814705a438de286b548c941493d1cae14531' + '895d6a71540c8a60258e8900479bbce8f3eef67c9b0ff631130862778b3688568c5e363e0ba2a7b55a2e4a9109e22673eda69903e7bcaa77776de876cb09295b' + '2af08ba12f9fd2121529045c1639206feccc9e4471c348cf9ea7ed73d24ba26b4146afaa6ae2ee03cae976655bf42d8a9e61cfc943d0cd6f73a41c4605de89f8') + +prepare() { + cd "$pkgname-$pkgver" + patch -Np1 -i ../10_utf16.diff + patch -Np1 -i ../11_unknown_encoding.diff + patch -Np0 -i ../CVE-2008-2109.patch + patch -Np1 -i ../libid3tag-gperf.patch # Fedora patch + rm compat.c frametype.c # regenerate them from gperf sources + + # adding missing files for autoreconf + touch AUTHORS ChangeLog NEWS + autoreconf -vfi +} + +build() { + cd "${pkgname}-${pkgver}" + ./configure --prefix=/usr + make + # adding pkgconfig file + cp -v ../id3tag.pc . + sed -e "s/VERSION/${pkgver}/" -i id3tag.pc +} + +package() { + cd "${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -vDm 644 id3tag.pc -t "${pkgdir}/usr/lib/pkgconfig/" + install -vDm 644 {CHANGES,CREDITS,README} \ + -t "${pkgdir}/usr/share/doc/${pkgname}" +} Deleted: id3tag.pc =================================================================== --- id3tag.pc 2020-05-17 17:09:17 UTC (rev 385432) +++ id3tag.pc 2020-05-17 17:09:30 UTC (rev 385433) @@ -1,10 +0,0 @@ -prefix=/usr -exec_prefix=/usr/bin -libdir=/usr/lib -includedir=/usr/include - -Name: ID3TAG -Description: libid3tag - ID3 tag manipulation library -Version: 0.15.0b -Libs: -L${libdir} -lid3tag -lz -Cflags: Copied: libid3tag/repos/extra-x86_64/id3tag.pc (from rev 385432, libid3tag/trunk/id3tag.pc) =================================================================== --- id3tag.pc (rev 0) +++ id3tag.pc 2020-05-17 17:09:30 UTC (rev 385433) @@ -0,0 +1,10 @@ +prefix=/usr +exec_prefix=/usr/bin +libdir=/usr/lib +includedir=/usr/include + +Name: ID3TAG +Description: libid3tag - ID3 tag manipulation library +Version: VERSION +Libs: -L${libdir} -lid3tag -lz +Cflags: Deleted: libid3tag-gperf.patch =================================================================== --- libid3tag-gperf.patch 2020-05-17 17:09:17 UTC (rev 385432) +++ libid3tag-gperf.patch 2020-05-17 17:09:30 UTC (rev 385433) @@ -1,26 +0,0 @@ -Index: libid3tag-0.15.1b/frametype.h -=================================================================== ---- libid3tag-0.15.1b.orig/frametype.h -+++ libid3tag-0.15.1b/frametype.h -@@ -37,6 +37,6 @@ extern struct id3_frametype const id3_fr - extern struct id3_frametype const id3_frametype_obsolete; - - struct id3_frametype const *id3_frametype_lookup(register char const *, -- register unsigned int); -+ register size_t); - - # endif -Index: libid3tag-0.15.1b/compat.h -=================================================================== ---- libid3tag-0.15.1b.orig/compat.h -+++ libid3tag-0.15.1b/compat.h -@@ -34,7 +34,7 @@ struct id3_compat { - }; - - struct id3_compat const *id3_compat_lookup(register char const *, -- register unsigned int); -+ register size_t); - - int id3_compat_fixup(struct id3_tag *); - - Copied: libid3tag/repos/extra-x86_64/libid3tag-gperf.patch (from rev 385432, libid3tag/trunk/libid3tag-gperf.patch) =================================================================== --- libid3tag-gperf.patch (rev 0) +++ libid3tag-gperf.patch 2020-05-17 17:09:30 UTC (rev 385433) @@ -0,0 +1,26 @@ +Index: libid3tag-0.15.1b/frametype.h +=================================================================== +--- libid3tag-0.15.1b.orig/frametype.h ++++ libid3tag-0.15.1b/frametype.h +@@ -37,6 +37,6 @@ extern struct id3_frametype const id3_fr + extern struct id3_frametype const id3_frametype_obsolete; + + struct id3_frametype const *id3_frametype_lookup(register char const *, +- register unsigned int); ++ register size_t); + + # endif +Index: libid3tag-0.15.1b/compat.h +=================================================================== +--- libid3tag-0.15.1b.orig/compat.h ++++ libid3tag-0.15.1b/compat.h +@@ -34,7 +34,7 @@ struct id3_compat { + }; + + struct id3_compat const *id3_compat_lookup(register char const *, +- register unsigned int); ++ register size_t); + + int id3_compat_fixup(struct id3_tag *); + +