aboutsummaryrefslogtreecommitdiff
path: root/bin/chmod
diff options
context:
space:
mode:
authorRuslan Ermilov <ru@FreeBSD.org>2001-05-28 12:58:10 +0000
committerRuslan Ermilov <ru@FreeBSD.org>2001-05-28 12:58:10 +0000
commit8e46d9c279acd0d14e77b6cc3b05e2fdcc45e8b6 (patch)
treef56a2ae90365d34273511170c8dc9d698ca4f7ce /bin/chmod
parenta89ab9bbe40d5ca5d6f0ed87d63eb0960c8009f0 (diff)
downloadsrc-8e46d9c279acd0d14e77b6cc3b05e2fdcc45e8b6.tar.gz
src-8e46d9c279acd0d14e77b6cc3b05e2fdcc45e8b6.zip
Follow symbolic links named as command line arguments if run without -R.
This is required by symlink(7), ``Commands not traversing a file tree'' subsection, third paragraph: : It is important to realize that this rule includes commands which may : optionally traverse file trees, e.g. the command ``chown file'' is : included in this rule, while the command ``chown -R file'' is not. For chown(8) and chgrp(1), this is also is compliance with the latest POSIX 1003.1-200x draft. MFC after: 1 week
Notes
Notes: svn path=/head/; revision=77333
Diffstat (limited to 'bin/chmod')
-rw-r--r--bin/chmod/chmod.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/bin/chmod/chmod.c b/bin/chmod/chmod.c
index 112915159645..7a843c755bf7 100644
--- a/bin/chmod/chmod.c
+++ b/bin/chmod/chmod.c
@@ -134,8 +134,8 @@ done: argv += optind;
if (argc < 2)
usage();
- fts_options = FTS_PHYSICAL;
if (Rflag) {
+ fts_options = FTS_PHYSICAL;
if (hflag)
errx(1,
"the -R and -h options may not be specified together.");
@@ -145,7 +145,8 @@ done: argv += optind;
fts_options &= ~FTS_PHYSICAL;
fts_options |= FTS_LOGICAL;
}
- }
+ } else
+ fts_options = FTS_LOGICAL;
mode = *argv;
if (*mode >= '0' && *mode <= '7') {