diff options
Diffstat (limited to 'tools/tar/patches/100-symlink-force-root-name.patch')
-rw-r--r-- | tools/tar/patches/100-symlink-force-root-name.patch | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tools/tar/patches/100-symlink-force-root-name.patch b/tools/tar/patches/100-symlink-force-root-name.patch new file mode 100644 index 0000000000..896b4723fc --- /dev/null +++ b/tools/tar/patches/100-symlink-force-root-name.patch @@ -0,0 +1,22 @@ +Force root/root as names for uid0/gid0 instead of using the system +names. This helps make packed download tarballs more reproducible + +Signed-off-by: Felix Fietkau <nbd@nbd.name> +--- +--- a/src/create.c ++++ b/src/create.c +@@ -545,12 +545,8 @@ write_gnu_long_link (struct tar_stat_inf + char *tmpname; + + header = start_private_header ("././@LongLink", size, 0); +- uid_to_uname (0, &tmpname); +- UNAME_TO_CHARS (tmpname, header->header.uname); +- free (tmpname); +- gid_to_gname (0, &tmpname); +- GNAME_TO_CHARS (tmpname, header->header.gname); +- free (tmpname); ++ UNAME_TO_CHARS ("root", header->header.uname); ++ GNAME_TO_CHARS ("root", header->header.gname); + + strcpy (header->buffer + offsetof (struct posix_header, magic), + OLDGNU_MAGIC); |