diff options
| author | Jim Meyering <meyering@redhat.com> | 2009-11-07 08:09:12 +0100 |
|---|---|---|
| committer | Jim Meyering <meyering@redhat.com> | 2009-11-07 08:43:00 +0100 |
| commit | d9dbbb9a455f6bfc4e09d9f5f6c6c633f1b03c52 (patch) | |
| tree | 54ab2f41b2d2de1918d2b18913df819d0b6cfbba /src/chmod.c | |
| parent | nproc: A new program to count the available processors (diff) | |
| download | coreutils-d9dbbb9a455f6bfc4e09d9f5f6c6c633f1b03c52.tar.gz coreutils-d9dbbb9a455f6bfc4e09d9f5f6c6c633f1b03c52.zip | |
chcon, chgrp, chmod and chown now diagnose a directory cycle
* lib/xfts.c (cycle_warning_required): New function.
* lib/xfts.h: Declare it.
* src/chown-core.c (change_file_owner): Diagnose a cycle.
* src/chmod.c (process_file): Likewise.
* src/chcon.c (process_file): Likewise.
* NEWS (Bug fixes): Mention this.
Diffstat (limited to 'src/chmod.c')
| -rw-r--r-- | src/chmod.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/chmod.c b/src/chmod.c index da350032f..1a0dafa70 100644 --- a/src/chmod.c +++ b/src/chmod.c @@ -228,6 +228,15 @@ process_file (FTS *fts, FTSENT *ent) error (0, 0, _("cannot operate on dangling symlink %s"), quote (file_full_name)); ok = false; + break; + + case FTS_DC: /* directory that causes cycles */ + if (cycle_warning_required (fts, ent)) + { + emit_cycle_warning (file_full_name); + return false; + } + break; default: break; |
