diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2008-10-24 23:47:38 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2008-10-24 23:47:38 +0000 |
commit | ebad0294c9ee27669a6e211fa5505987b92804f9 (patch) | |
tree | 33f35387efe52539958cf019d18a7b5f92ac81fe | |
parent | 53c80f09723fa5e9bccd6fbab9c11b14ed520404 (diff) | |
download | busybox-w32-ebad0294c9ee27669a6e211fa5505987b92804f9.tar.gz busybox-w32-ebad0294c9ee27669a6e211fa5505987b92804f9.tar.bz2 busybox-w32-ebad0294c9ee27669a6e211fa5505987b92804f9.zip |
tar: fix bug 3844: non-root tar does not preserve perms
-rw-r--r-- | archival/tar.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/archival/tar.c b/archival/tar.c index 45701c985..503db5f78 100644 --- a/archival/tar.c +++ b/archival/tar.c | |||
@@ -818,6 +818,10 @@ int tar_main(int argc UNUSED_PARAM, char **argv) | |||
818 | | ARCHIVE_PRESERVE_DATE | 818 | | ARCHIVE_PRESERVE_DATE |
819 | | ARCHIVE_EXTRACT_UNCONDITIONAL; | 819 | | ARCHIVE_EXTRACT_UNCONDITIONAL; |
820 | 820 | ||
821 | /* Apparently only root's tar preserves parms (see bug 3844) */ | ||
822 | if (getuid() != 0) | ||
823 | tar_handle->ah_flags |= ARCHIVE_NOPRESERVE_PERM; | ||
824 | |||
821 | /* Prepend '-' to the first argument if required */ | 825 | /* Prepend '-' to the first argument if required */ |
822 | opt_complementary = "--:" // first arg is options | 826 | opt_complementary = "--:" // first arg is options |
823 | "tt:vv:" // count -t,-v | 827 | "tt:vv:" // count -t,-v |