diff options
author | jim <jim@FreeBSD.org> | 2000-09-05 03:43:10 +0000 |
---|---|---|
committer | jim <jim@FreeBSD.org> | 2000-09-05 03:43:10 +0000 |
commit | 370920ee2c2f2a6028895923ec749a6b2e059fb4 (patch) | |
tree | be772c926b76cedd291e981069bf7b80d07188aa /audio/ascd/files | |
parent | f6f8f827f1a488db2f49efca22f320e152a98a6d (diff) | |
download | FreeBSD-ports-370920ee2c2f2a6028895923ec749a6b2e059fb4.zip FreeBSD-ports-370920ee2c2f2a6028895923ec749a6b2e059fb4.tar.gz |
Fix a buffer overflow in fak_parse_line.
Submitted by: Valeriy E. Ushakov <uwe@ptc.spbu.ru>
Diffstat (limited to 'audio/ascd/files')
-rw-r--r-- | audio/ascd/files/patch-ag | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/audio/ascd/files/patch-ag b/audio/ascd/files/patch-ag new file mode 100644 index 0000000..5ced3c7 --- /dev/null +++ b/audio/ascd/files/patch-ag @@ -0,0 +1,14 @@ +--- /usr/ports/audio/ascd/work/ascd-0.13.2/faktory.c Mon Jul 5 20:52:38 1999 ++++ faktory.c Sat Sep 2 17:26:31 2000 +@@ -58,9 +58,9 @@ + unsigned int pos = 0; + + if ((strlen(ligne) > 0) && (ligne[0] != '#')) { +- while ((ligne[pos] != ' ') && (ligne[pos] != 9)) pos++; ++ while (ligne[pos] && (ligne[pos] != ' ') && (ligne[pos] != 9)) pos++; + tes_sncpy(key, ligne, pos); +- while (((ligne[pos] == ' ') || (ligne[pos] == 9)) && (pos < strlen(ligne))) pos++; ++ while (ligne[pos] && ((ligne[pos] == ' ') || (ligne[pos] == 9))) pos++; + if (pos < strlen(ligne)) strcpy(arguments, ligne + pos); + else strcpy(arguments, ""); + if (debug > 2) fprintf(stderr,"++ input: [%s]\n key: [%s]\n args: [%s]\n", ligne, key, arguments); |