Subject: Re: bug#8391: chmod setuid & setguid bits

From: Ondrej Vasik <[email-masked]>
Date: Mon, 05 Mar 2012 22:35:35 +0100

On Mon, 2012-03-05 at 21:20 +0100, Bruno Haible wrote:
> Paul Eggert wrote:
> > this use of "+" does not conflict with input usages like
> > "chmod +x foo".
> 
> It's because this use of '+' is easy to remember.
> "chmod +x" means "add execution permissions".
> "chmod -x" means "remove execution permissions".
> 
> You want a symbol for "assign exact permissions".
> IMO the equals sign is a more well-known symbol for assignment than '@'.
> So, how about a notation
>     chmod =755
> or
>     chmod =rw-r--r--

The only concern I have with equal sign (which was proposed by Paul as
the first candidate as well - see
http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8391#50  ) is the confusion
with the equal sign in the symbolic mode specification - this one should
be for combination with numeric octal mode. Therefore @ sign was chosen
based on http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8391#59 ...

However, you are right that = is more intuitive (using exact mode, when
specified as first character) - but using it for that will either change
behaviour or confuse people for 'chmod =rwx DIR' usecase, if there are
special bits on directory.

Greetings,
         Ondrej