OSDN Git Service

Steve Grubb writes:
authorEric Andersen <andersen@codepoet.org>
Wed, 5 May 2004 10:37:49 +0000 (10:37 -0000)
committerEric Andersen <andersen@codepoet.org>
Wed, 5 May 2004 10:37:49 +0000 (10:37 -0000)
Hello,

I found and patched 2 more bugs. The first is a misplaced semi-colon. The second
one is a buffer overflow. I doubt the buffer overflow is triggered in real life.
But you never know what those wily hackers are up to.

Thanks,
Steve Grubb

archival/tar.c
coreutils/dos2unix.c

index 9d50a10..efdc465 100644 (file)
@@ -477,8 +477,8 @@ static inline int writeTarFile(const int tar_fd, const int verboseFlag,
                        dup2(gzipDataPipe[0], 0);
                        close(gzipDataPipe[1]);
 
-                       if (tbInfo.tarFd != 1);
-                       dup2(tbInfo.tarFd, 1);
+                       if (tbInfo.tarFd != 1)
+                               dup2(tbInfo.tarFd, 1);
 
                        close(gzipStatusPipe[0]);
                        fcntl(gzipStatusPipe[1], F_SETFD, FD_CLOEXEC);  /* close on exec shows sucess */
index a21ed5b..c8cebce 100644 (file)
@@ -64,7 +64,7 @@ static int convert(char *fn, int ConvType)
                c = strlen(tempFn);
                tempFn[c] = '.';
                while(1) {
-                   if (c >=BUFSIZ)
+                   if (c >=BUFSIZ-2)
                        bb_error_msg_and_die("unique name not found");
                    /* Get some semi random stuff to try and make a
                     * random filename based (and in the same dir as)