grip: Apply FreeBSD patch to fix a flaw with handling CDDB responses
authorHolger Hans Peter Freyther <zecke@selfish.org>
Tue, 16 Mar 2010 06:35:54 +0000 (14:35 +0800)
committerHolger Hans Peter Freyther <zecke@selfish.org>
Tue, 16 Mar 2010 06:58:41 +0000 (14:58 +0800)
Addresses CVE-2005-0706.

recipes/grip/grip-3.2.0/patch-src::discdb [new file with mode: 0644]
recipes/grip/grip_3.2.0.bb

diff --git a/recipes/grip/grip-3.2.0/patch-src::discdb b/recipes/grip/grip-3.2.0/patch-src::discdb
new file mode 100644 (file)
index 0000000..1d300b2
--- /dev/null
@@ -0,0 +1,20 @@
+--- src/discdb.c.orig  Thu Apr 15 21:23:37 2004
++++ src/discdb.c       Wed Mar 16 19:02:09 2005
+@@ -311,7 +311,7 @@
+     query->query_match=MATCH_EXACT;
+     query->query_matches=0;
+-    while((inbuffer=DiscDBReadLine(&dataptr))) {
++    while(query->query_matches < MAX_INEXACT_MATCHES && (inbuffer=DiscDBReadLine(&dataptr))) {
+       query->query_list[query->query_matches].list_genre=
+       DiscDBGenreValue(g_strstrip(strtok(inbuffer," ")));
+       
+@@ -331,7 +331,7 @@
+     query->query_match=MATCH_INEXACT;
+     query->query_matches=0;
+-    while((inbuffer=DiscDBReadLine(&dataptr))) {
++    while(query->query_matches < MAX_INEXACT_MATCHES && (inbuffer=DiscDBReadLine(&dataptr))) {
+       query->query_list[query->query_matches].list_genre=
+       DiscDBGenreValue(g_strstrip(strtok(inbuffer," ")));
+       
index 0638031..b447386 100644 (file)
@@ -5,7 +5,10 @@
 HOMEPAGE="http://www.nostatic.org/grip/"
 LICENSE="GPL"
 
-SRC_URI="${SOURCEFORGE_MIRROR}/grip/grip-${PV}.tar.gz"
+SRC_URI="${SOURCEFORGE_MIRROR}/grip/grip-${PV}.tar.gz \
+         file://patch-src::discdb;patch=1;pnum=0 "
 DEPENDS="libgnomeui vte curl cdparanoia id3lib"
 
+PR = "r1"
+
 inherit autotools