From ebad0294c9ee27669a6e211fa5505987b92804f9 Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Fri, 24 Oct 2008 23:47:38 +0000 Subject: tar: fix bug 3844: non-root tar does not preserve perms --- archival/tar.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'archival/tar.c') 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) | ARCHIVE_PRESERVE_DATE | ARCHIVE_EXTRACT_UNCONDITIONAL; + /* Apparently only root's tar preserves parms (see bug 3844) */ + if (getuid() != 0) + tar_handle->ah_flags |= ARCHIVE_NOPRESERVE_PERM; + /* Prepend '-' to the first argument if required */ opt_complementary = "--:" // first arg is options "tt:vv:" // count -t,-v -- cgit v1.2.3