summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2005-05-02 04:32:47 +0000
committerMike Frysinger <vapier@gentoo.org>2005-05-02 04:32:47 +0000
commit810baca7406fa45d1bf9d4fb5d45127c49efdaed (patch)
tree6f5253dfbc2274f83205e56fab1d35bc3205c0a1 /app-cdr/bin2iso/files
parentAdded missing digest entries. (diff)
downloadgentoo-2-810baca7406fa45d1bf9d4fb5d45127c49efdaed.tar.gz
gentoo-2-810baca7406fa45d1bf9d4fb5d45127c49efdaed.tar.bz2
gentoo-2-810baca7406fa45d1bf9d4fb5d45127c49efdaed.zip
Fix segfaults due to lack of error checking #90540 by Tiago Freire.
(Portage version: 2.0.51.20-r5)
Diffstat (limited to 'app-cdr/bin2iso/files')
-rw-r--r--app-cdr/bin2iso/files/bin2iso-19b-sanity-checks.patch30
-rw-r--r--app-cdr/bin2iso/files/digest-bin2iso-19b-r2 (renamed from app-cdr/bin2iso/files/digest-bin2iso-19b-r1)0
2 files changed, 30 insertions, 0 deletions
diff --git a/app-cdr/bin2iso/files/bin2iso-19b-sanity-checks.patch b/app-cdr/bin2iso/files/bin2iso-19b-sanity-checks.patch
new file mode 100644
index 000000000000..5803bc103a86
--- /dev/null
+++ b/app-cdr/bin2iso/files/bin2iso-19b-sanity-checks.patch
@@ -0,0 +1,30 @@
+Add more checks to prevent segfaults in ill-formatted files
+
+http://bugs.gentoo.org/show_bug.cgi?id=90540
+
+--- bin2iso19b_linux.c
++++ bin2iso19b_linux.c
+@@ -237,6 +237,10 @@
+ // Get the 'mode'
+ if (strncmp(&Line[2], "TRACK ", 6)==0)
+ {
++ if (Line[8] < '0' || Line[8] > '9' || Line[9] < '0' || Line[9] > '9') {
++ printf("Error: Track # is not a 2 digit number\n");
++ exit(1);
++ }
+ strncpy(track->num, &Line[8], 2); track->num[2] = '\0';
+
+ track->mode = UNKNOWN;
+@@ -246,7 +250,11 @@
+ if(strncmp(&Line[11], "MODE2/2352", 10)==0) track->mode = MODE2_2352;
+ if(strncmp(&Line[11], "MODE2/2336", 10)==0) track->mode = MODE2_2336;
+ }
+- else return(1);
++ else
++ {
++ printf("Error: 2nd line does not begin with ' TRACK '\n");
++ exit(1);
++ }
+
+ // Set the name
+ strcpy(track->name, sBinFilename);
diff --git a/app-cdr/bin2iso/files/digest-bin2iso-19b-r1 b/app-cdr/bin2iso/files/digest-bin2iso-19b-r2
index 941c8d1f8e7c..941c8d1f8e7c 100644
--- a/app-cdr/bin2iso/files/digest-bin2iso-19b-r1
+++ b/app-cdr/bin2iso/files/digest-bin2iso-19b-r2