aboutsummaryrefslogtreecommitdiff
path: root/repos/core/busybox/install-fix-chown.patch
diff options
context:
space:
mode:
Diffstat (limited to 'repos/core/busybox/install-fix-chown.patch')
-rwxr-xr-xrepos/core/busybox/install-fix-chown.patch36
1 files changed, 0 insertions, 36 deletions
diff --git a/repos/core/busybox/install-fix-chown.patch b/repos/core/busybox/install-fix-chown.patch
deleted file mode 100755
index 31ecd3c8..00000000
--- a/repos/core/busybox/install-fix-chown.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-chown must precede chmod because on some systems,
-chown clears the set[ug]id bits for non-superusers,
-resulting in incorrect permissions.
-diff --git a/coreutils/install.c b/coreutils/install.c
-index 8270490..0256aeb 100644
---- a/coreutils/install.c
-+++ b/coreutils/install.c
-@@ -244,6 +244,14 @@ int install_main(int argc, char **argv)
- }
- }
-
-+ /* Set the user and group id */
-+ if ((opts & (OPT_OWNER|OPT_GROUP))
-+ && lchown(dest, uid, gid) == -1
-+ ) {
-+ bb_perror_msg("can't change %s of %s", "ownership", dest);
-+ ret = EXIT_FAILURE;
-+ }
-+
- /* Set the file mode (always, not only with -m).
- * GNU coreutils 6.10 is not affected by umask. */
- if (chmod(dest, mode) == -1) {
-@@ -254,13 +262,6 @@ int install_main(int argc, char **argv)
- if (use_default_selinux_context)
- setdefaultfilecon(dest);
- #endif
-- /* Set the user and group id */
-- if ((opts & (OPT_OWNER|OPT_GROUP))
-- && lchown(dest, uid, gid) == -1
-- ) {
-- bb_perror_msg("can't change %s of %s", "ownership", dest);
-- ret = EXIT_FAILURE;
-- }
- next:
- if (ENABLE_FEATURE_CLEAN_UP && isdir)
- free(dest);