From: Paul Eggert <eggert@cs.ucla.edu>
To: Eli Zaretskii <eliz@gnu.org>
Cc: jrm@ftfl.ca, ashish@FreeBSD.org, monnier@IRO.UMontreal.CA,
emacs-devel@gnu.org
Subject: Re: master fails to build on FreeBSD when ACL support is on
Date: Mon, 22 Jan 2018 10:50:59 -0800 [thread overview]
Message-ID: <afd0db10-e99e-941e-a1a5-b6413f5cf715@cs.ucla.edu> (raw)
In-Reply-To: <83zi55zt7m.fsf@gnu.org>
On 01/22/2018 09:41 AM, Eli Zaretskii wrote:
> Why do we need to inform the callers that ACL setting failed
Because they invoked copy-file with a non-nil preserve-permissions flag,
and copy-file cannot preserve the permissions as requested. It's the
same reason copy-file signals an error when invoked with a non-nil
keep-time flag and when it cannot keep the time on the output file. If
copy-file did not report an error, users would be lulled into thinking
that the destination has the same permissions as the source when
copy-file succeeds, even though that's not the case.
There is some precedent for ignoring failure, as copy-file does ignore
chown failure when the preserve-uid-gid flag is used. However, this
behavior is documented as a specific exception to the general rule that
copy-file signals failures.
One way to move forward would be to change copy-file to have a three-way
result, as set-file-acl does. That is, it could return t if successful,
nil if mildly unsuccessful, and signal an error if severely
unsuccessful. Failure to preserve UID and GID would be considered mild.
Perhaps failure to preserve permissions could be considered mild, too,
since it's no more security-relevant than UID failure is.
next prev parent reply other threads:[~2018-01-22 18:50 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-16 4:20 master fails to build on FreeBSD when ACL support is on Joseph Mingrone
2018-01-16 17:06 ` Paul Eggert
2018-01-16 18:16 ` Eli Zaretskii
2018-01-18 23:40 ` Joseph Mingrone
2018-01-19 14:45 ` Eli Zaretskii
2018-01-19 14:59 ` Joseph Mingrone
2018-01-19 15:33 ` Eli Zaretskii
2018-01-19 16:38 ` Stefan Monnier
2018-01-19 18:45 ` Eli Zaretskii
2018-01-19 20:53 ` Stefan Monnier
2018-01-19 21:17 ` Glenn Morris
2018-01-21 1:04 ` Glenn Morris
2018-01-21 3:42 ` Paul Eggert
2018-11-14 23:12 ` Glenn Morris
2018-11-15 1:23 ` Paul Eggert
2018-11-15 14:48 ` Eli Zaretskii
2018-01-19 22:42 ` Paul Eggert
2018-01-20 7:52 ` Michael Albinus
2018-01-21 3:49 ` Paul Eggert
2018-01-21 12:14 ` Michael Albinus
2018-01-20 7:57 ` Eli Zaretskii
2018-01-20 20:47 ` Joseph Mingrone
2018-01-20 23:35 ` Joseph Mingrone
2018-01-21 3:41 ` Paul Eggert
2018-01-21 3:50 ` Stefan Monnier
2018-01-22 6:42 ` Paul Eggert
2018-01-22 14:11 ` Stefan Monnier
2018-01-21 15:53 ` Eli Zaretskii
2018-01-22 6:52 ` Paul Eggert
2018-01-22 15:52 ` Eli Zaretskii
2018-01-22 17:02 ` Paul Eggert
2018-01-22 17:41 ` Eli Zaretskii
2018-01-22 18:50 ` Paul Eggert [this message]
2018-01-22 20:32 ` Eli Zaretskii
2018-01-23 0:47 ` Paul Eggert
2018-01-21 15:56 ` Eli Zaretskii
2018-01-21 16:22 ` Joseph Mingrone
2018-01-20 7:46 ` Eli Zaretskii
2018-01-17 18:33 ` Ashish SHUKLA
2018-01-17 18:53 ` Joseph Mingrone
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=afd0db10-e99e-941e-a1a5-b6413f5cf715@cs.ucla.edu \
--to=eggert@cs.ucla.edu \
--cc=ashish@FreeBSD.org \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=jrm@ftfl.ca \
--cc=monnier@IRO.UMontreal.CA \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.