aboutsummaryrefslogtreecommitdiffstats
path: root/admin
diff options
context:
space:
mode:
authorPaul Eggert2012-12-14 10:59:00 -0800
committerPaul Eggert2012-12-14 10:59:00 -0800
commit97976f9f3fcf588535bf4afad71de92860bb2f8e (patch)
tree48af44cc93624fd119f59ceb94fbb5c5f3eaaf7c /admin
parentad966fe7542070b5c9aa34ed019d586e7c3adae6 (diff)
downloademacs-97976f9f3fcf588535bf4afad71de92860bb2f8e.tar.gz
emacs-97976f9f3fcf588535bf4afad71de92860bb2f8e.zip
Fix permissions bugs with setgid directories etc.
* configure.ac (BSD4_2): Remove; no longer needed. * admin/CPP-DEFINES (BSD4_2): Remove. * doc/lispintro/emacs-lisp-intro.texi (Files List): directory-files-and-attributes now outputs t for attribute that's now a placeholder. * doc/lispref/files.texi (Testing Accessibility): Document GROUP arg of file-ownership-preserved-p. (File Attributes): Document that 9th element is now just a placeholder. * doc/lispref/os.texi (User Identification): Document new functions group-gid, group-real-gid. * etc/NEWS: Document changes to file-attributes, file-ownership-preserved-p. Mention new functions group-gid, group-real-gid. * lisp/files.el (backup-buffer): Don't rely on 9th output of file-attributes, as it's now a placeholder. Instead, use the new optional arg of file-ownership-preserved-p. (file-ownership-preserved-p): New optional arg GROUP. Fix mishandling of setuid directories that would cause this function to return t when it should have returned nil. Document what happens if the file does not exist, and when it's not known whether the ownership will be preserved. * lisp/net/tramp-sh.el (tramp-sh-handle-file-ownership-preserved-p): Likewise. (tramp-get-local-gid): Use group-gid for integer, as that's faster and more reliable. * src/dired.c (Ffile_attributes): Return t as the 9th attribute, to mark it as a placeholder. The old value was often wrong. The only user of this attribute has been changed to use file-ownership-preserved-p instead, with its new group arg. * src/editfns.c (Fgroup_gid, Fgroup_real_gid): New functions. Fixes: debbugs:13125
Diffstat (limited to 'admin')
-rw-r--r--admin/CPP-DEFINES1
-rw-r--r--admin/ChangeLog5
2 files changed, 5 insertions, 1 deletions
diff --git a/admin/CPP-DEFINES b/admin/CPP-DEFINES
index 13c3da1745a..393cf56e993 100644
--- a/admin/CPP-DEFINES
+++ b/admin/CPP-DEFINES
@@ -9,7 +9,6 @@ documented in config.in, and this file would not be necessary.
9 9
10AIX 10AIX
11_AIX 11_AIX
12BSD4_2
13BSD_SYSTEM 12BSD_SYSTEM
14CYGWIN Compiling the Cygwin port. 13CYGWIN Compiling the Cygwin port.
15__CYGWIN__ Ditto 14__CYGWIN__ Ditto
diff --git a/admin/ChangeLog b/admin/ChangeLog
index 9c6413aa14f..6a6b1bd8da6 100644
--- a/admin/ChangeLog
+++ b/admin/ChangeLog
@@ -1,3 +1,8 @@
12012-12-14 Paul Eggert <eggert@cs.ucla.edu>
2
3 Fix permissions bugs with setgid directories etc. (Bug#13125)
4 * CPP-DEFINES (BSD4_2): Remove.
5
12012-12-08 Paul Eggert <eggert@cs.ucla.edu> 62012-12-08 Paul Eggert <eggert@cs.ucla.edu>
2 7
3 Use putenv+unsetenv instead of modifying environ directly (Bug#13070). 8 Use putenv+unsetenv instead of modifying environ directly (Bug#13070).