From: Tim Kientzle Date: Sun, 6 Jul 2008 09:37:45 +0000 (-0400) Subject: Preserve owner if cpio is run as root. X-Git-Tag: v2.6.0~142 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=876ae79b4b81d623bf6c2dc49ccffc70ede09d06;p=thirdparty%2Flibarchive.git Preserve owner if cpio is run as root. Submitted by: Kris Kennaway SVN-Revision: 150 --- diff --git a/cpio/cpio.c b/cpio/cpio.c index 76a91cf71..2f02a68fc 100644 --- a/cpio/cpio.c +++ b/cpio/cpio.c @@ -115,6 +115,9 @@ main(int argc, char *argv[]) cpio->bytes_per_block = 512; cpio->filename = NULL; + if (geteuid() == 0) + cpio->extract_flags |= ARCHIVE_EXTRACT_OWNER; + while ((opt = cpio_getopt(cpio)) != -1) { switch (opt) { case '0': /* GNU convention: --null, -0 */