diff options
| author | Paul Eggert | 2014-06-21 00:03:41 -0700 |
|---|---|---|
| committer | Paul Eggert | 2014-06-21 00:03:41 -0700 |
| commit | d895e63e96baf3f5ae1fdb32dafc65f0031bd610 (patch) | |
| tree | 1740e6c390c97d3d45e67174763f4d507d60b78d /src | |
| parent | 55d4eba2d0e650d811250c31f3801f6835bd088a (diff) | |
| download | emacs-d895e63e96baf3f5ae1fdb32dafc65f0031bd610.tar.gz emacs-d895e63e96baf3f5ae1fdb32dafc65f0031bd610.zip | |
Port to OS X ACLs.
* fileio.c (Ffile_acl): Port to OS X, where acl_get_file (...,
ACL_TYPE_ACCESS) doesn't work.
Fixes: debbugs:17810
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 6 | ||||
| -rw-r--r-- | src/fileio.c | 5 |
2 files changed, 10 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 58e3eab8339..f28a6a63ec4 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2014-06-21 Paul Eggert <eggert@cs.ucla.edu> | ||
| 2 | |||
| 3 | Port to OS X ACLs (Bug#17810). | ||
| 4 | * fileio.c (Ffile_acl): Port to OS X, where acl_get_file (..., | ||
| 5 | ACL_TYPE_ACCESS) doesn't work. | ||
| 6 | |||
| 1 | 2014-06-19 Stefan Monnier <monnier@iro.umontreal.ca> | 7 | 2014-06-19 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 8 | ||
| 3 | * keyboard.c (read_key_sequence): Don't invoke Vprefix_help_command | 9 | * keyboard.c (read_key_sequence): Don't invoke Vprefix_help_command |
diff --git a/src/fileio.c b/src/fileio.c index cd32821ed0c..c87a6f71312 100644 --- a/src/fileio.c +++ b/src/fileio.c | |||
| @@ -3013,6 +3013,9 @@ was unable to determine the ACL entries. */) | |||
| 3013 | acl_t acl; | 3013 | acl_t acl; |
| 3014 | Lisp_Object acl_string; | 3014 | Lisp_Object acl_string; |
| 3015 | char *str; | 3015 | char *str; |
| 3016 | # ifndef HAVE_ACL_TYPE_EXTENDED | ||
| 3017 | acl_type_t ACL_TYPE_EXTENDED = ACL_TYPE_ACCESS; | ||
| 3018 | # endif | ||
| 3016 | #endif | 3019 | #endif |
| 3017 | 3020 | ||
| 3018 | absname = expand_and_dir_to_file (filename, | 3021 | absname = expand_and_dir_to_file (filename, |
| @@ -3027,7 +3030,7 @@ was unable to determine the ACL entries. */) | |||
| 3027 | #ifdef HAVE_ACL_SET_FILE | 3030 | #ifdef HAVE_ACL_SET_FILE |
| 3028 | absname = ENCODE_FILE (absname); | 3031 | absname = ENCODE_FILE (absname); |
| 3029 | 3032 | ||
| 3030 | acl = acl_get_file (SSDATA (absname), ACL_TYPE_ACCESS); | 3033 | acl = acl_get_file (SSDATA (absname), ACL_TYPE_EXTENDED); |
| 3031 | if (acl == NULL) | 3034 | if (acl == NULL) |
| 3032 | return Qnil; | 3035 | return Qnil; |
| 3033 | 3036 | ||