diff options
author | Seemant Kulleen <seemant@gentoo.org> | 2004-06-09 20:40:32 +0000 |
---|---|---|
committer | Seemant Kulleen <seemant@gentoo.org> | 2004-06-09 20:40:32 +0000 |
commit | aaa891685b80d0b67d4e3921b754a4f8895d0940 (patch) | |
tree | db055451c3c425534dd5b52b42516cb850a997a6 /app-text/aspell/files | |
parent | Added ~sparc, #53446 (diff) | |
download | historical-aaa891685b80d0b67d4e3921b754a4f8895d0940.tar.gz historical-aaa891685b80d0b67d4e3921b754a4f8895d0940.tar.bz2 historical-aaa891685b80d0b67d4e3921b754a4f8895d0940.zip |
Apply a patch to fix the buffer overflow reported in: http://www.securityfocus.com/archive/1/365479. This should close bug #53389 by: Florian Schilhabel <florian.schilhabel@gmx.net>. Other arches need to push this to stable
Diffstat (limited to 'app-text/aspell/files')
-rw-r--r-- | app-text/aspell/files/aspell-buffer-fix.patch | 50 | ||||
-rw-r--r-- | app-text/aspell/files/digest-aspell-0.50.5-r1 | 1 |
2 files changed, 51 insertions, 0 deletions
diff --git a/app-text/aspell/files/aspell-buffer-fix.patch b/app-text/aspell/files/aspell-buffer-fix.patch new file mode 100644 index 000000000000..cf43e7b9d56c --- /dev/null +++ b/app-text/aspell/files/aspell-buffer-fix.patch @@ -0,0 +1,50 @@ +diff -urN aspell-0.50.5.orig/prog/compress.c aspell-0.50.5/prog/compress.c +--- aspell-0.50.5.orig/prog/compress.c 2002-08-31 11:51:11.000000000 -0700 ++++ aspell-0.50.5/prog/compress.c 2004-06-09 13:11:46.000000000 -0700 +@@ -28,6 +28,9 @@ + + #endif + ++int count; ++ ++ + void usage () + { + fputs("Compresses or uncompresses sorted word lists.\n" , stderr); +@@ -47,6 +50,7 @@ + *w++ = (char)(c); + } while (c = getc(in), c != EOF && c > 32); + *w = '\0'; ++ count++; + ungetc(c, in); + if (c == EOF) return 0; + else return 1; +@@ -69,6 +73,7 @@ + + SETBIN (stdout); + ++ while (count < 256) { + while (get_word(stdin, cur)) { + int i = 0; + /* get the length of the prefix */ +@@ -85,6 +90,7 @@ + prev = s2; cur = s1; + } + } ++ } + return 0; + + } else if (argv[1][0] == 'd') { +@@ -100,8 +106,11 @@ + if (i == 0) + i = getc(stdin); + --i; +- while ((c = getc(stdin)) > 32) ++ while ((c = getc(stdin)) > 32 && count < 256) { + cur[i++] = (char)c; ++ count++; ++ } ++ + cur[i] = '\0'; + fputs(cur, stdout); + putc('\n', stdout); diff --git a/app-text/aspell/files/digest-aspell-0.50.5-r1 b/app-text/aspell/files/digest-aspell-0.50.5-r1 new file mode 100644 index 000000000000..d497ea8286ff --- /dev/null +++ b/app-text/aspell/files/digest-aspell-0.50.5-r1 @@ -0,0 +1 @@ +MD5 14403d2ea5ded5d3fc9bb259bf65aab5 aspell-0.50.5.tar.gz 1016586 |