From 58b48c1204cb794429ac35e36436ee09ea341a02 Mon Sep 17 00:00:00 2001 From: andersen Date: Wed, 20 Jun 2001 20:47:31 +0000 Subject: it turs out, there was a nasty tar bug where bb tar would create leading dirs with mode 0777 in all cases due to usask issues. Thanks to Matt Kraai for noticing and spotting the culprit. This makes bb tar behave just like GNU tar once again. -Erik git-svn-id: svn://busybox.net/trunk/busybox@2866 69ca8d6d-28ef-0310-b511-8ec308f3f277 --- archival/tar.c | 8 -------- tar.c | 8 -------- 2 files changed, 16 deletions(-) diff --git a/archival/tar.c b/archival/tar.c index 0cb638a7f..bca5a0906 100644 --- a/archival/tar.c +++ b/archival/tar.c @@ -576,10 +576,6 @@ static int readTarFile(int tarFd, int extractFlag, int listFlag, TarHeader rawHeader; TarInfo header; - /* Set the umask for this process so it doesn't - * screw up permission setting for us later. */ - umask(0); - /* Read the tar file, and iterate over it one file at a time */ while ( (status = full_read(tarFd, (char*)&rawHeader, TAR_BLOCK_SIZE)) == TAR_BLOCK_SIZE ) { @@ -1109,10 +1105,6 @@ static int writeTarFile(const char* tarName, int verboseFlag, char **argv, if (fstat(tbInfo.tarFd, &tbInfo.statBuf) < 0) error_msg_and_die(io_error, tarName, strerror(errno)); - /* Set the umask for this process so it doesn't - * screw up permission setting for us later. */ - umask(0); - /* Read the directory/files and iterate over them one at a time */ while (*argv != NULL) { if (recursive_action(*argv++, TRUE, FALSE, FALSE, diff --git a/tar.c b/tar.c index 0cb638a7f..bca5a0906 100644 --- a/tar.c +++ b/tar.c @@ -576,10 +576,6 @@ static int readTarFile(int tarFd, int extractFlag, int listFlag, TarHeader rawHeader; TarInfo header; - /* Set the umask for this process so it doesn't - * screw up permission setting for us later. */ - umask(0); - /* Read the tar file, and iterate over it one file at a time */ while ( (status = full_read(tarFd, (char*)&rawHeader, TAR_BLOCK_SIZE)) == TAR_BLOCK_SIZE ) { @@ -1109,10 +1105,6 @@ static int writeTarFile(const char* tarName, int verboseFlag, char **argv, if (fstat(tbInfo.tarFd, &tbInfo.statBuf) < 0) error_msg_and_die(io_error, tarName, strerror(errno)); - /* Set the umask for this process so it doesn't - * screw up permission setting for us later. */ - umask(0); - /* Read the directory/files and iterate over them one at a time */ while (*argv != NULL) { if (recursive_action(*argv++, TRUE, FALSE, FALSE, -- cgit v1.2.3-55-g6feb