Commit Graph

20 Commits

Author SHA1 Message Date
FRIGN
fba669da88 Audit chgrp(1)
1) Refactor manpage so it's actually fun to read.
2) BUGFIX: Call (l)chown properly when the H-flag is specified
   (only when depth > 0).
3) BUGFIX: Call (l)chown properly when the h-flag is specified
   (only when depth = 0).
4) BUGFIX: Only recurse() in chgrp() when the initial chownf()
   succeeds.
5) Style fixes, argv-basing.
6) Rename status to ret for consistency.
7) Add blank line before return.
2015-03-08 23:31:59 +01:00
FRIGN
8dc92fbd6c Refactor enmasse() and recurse() to reflect depth
The HLP-changes to sbase have been a great addition of functionality,
but they kind of "polluted" the enmasse() and recurse() prototypes.
As this will come in handy in the future, knowing at which "depth"
you are inside a recursing function is an important functionality.

Instead of having a special HLP-flag passed to enmasse, each sub-
function needs to provide it on its own and can calculate results
based on the current depth (for instance, 'H' implies 'P' at
depth > 0).
A special case is recurse(), because it actually depends on the
follow-type. A new flag "recurse_follow" brings consistency into
what used to be spread across different naming conventions (fflag,
HLP_flag, ...).

This also fixes numerous bugs with the behaviour of HLP in the
tools using it.
2015-03-02 22:50:38 +01:00
sin
1d05b293e1 chgrp: Update program usage and manpage
-h is incompatible with -R so handle that properly as well.
2015-02-16 16:33:39 +00:00
sin
8f068589fb Fix recurse() prototype and convert char to int flags 2015-02-16 16:23:12 +00:00
Tai Chi Minh Ralph Eastwood
82bc92da51 recurse: add symlink derefencing flags -H and -L 2015-02-16 15:53:55 +00:00
FRIGN
31572c8b0e Clean up #includes 2015-02-14 21:12:23 +01:00
FRIGN
c965539b66 Add h-flag to chown(1) and chgrp(1) 2015-02-12 21:56:06 +01:00
sin
83e94e922e chgrp: Only check errno if getgrnam() fails 2014-12-21 12:14:26 +00:00
sin
bf8e37625a Fix potential exit status wraparound in chgrp(1) 2014-11-22 11:14:56 +00:00
FRIGN
1436518f9d Use < 0 instead of == -1 2014-11-19 20:09:29 +00:00
sin
4dc2b783b8 Nuke some fprintf() calls and replace with weprintf() 2014-11-17 16:33:24 +00:00
sin
af8e38f5fa Fix some error messages
There's many more to go.
2014-11-17 16:22:01 +00:00
FRIGN
7d2683ddf2 Sort includes and more cleanup and fixes in util/ 2014-11-14 10:54:10 +00:00
FRIGN
eee98ed3a4 Fix coding style
It was about damn time. Consistency is very important in such a
big codebase.
2014-11-13 18:08:43 +00:00
sin
02d91696b4 Fix char **argv to char *argv[] 2014-04-18 11:54:44 +01:00
sin
9eb15ff232 Simplify code and don't use ftw() for chgrp(1)
Fix issue with uninitialized struct stat buffer as well.
2013-10-08 00:47:04 +01:00
sin
5b5f062184 Add license file details at top of files 2013-10-07 17:03:34 +01:00
sin
b5a511dacf Exit with EXIT_SUCCESS/EXIT_FAILURE instead of 0 and 1
Fixed for consistency purposes.
2013-10-07 16:44:22 +01:00
sin
eafe2b6526 Staticise global variables in chgrp(1) 2013-10-07 16:12:09 +01:00
Christoph Lohmann
b0898c605d Adding the new C files too. 2013-06-09 15:20:55 +02:00