From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: YAMAMOTO Mitsuharu Newsgroups: gmane.emacs.bugs Subject: bug#17810: 24.3.91; file-acl does not return ACL on Mac OS X Date: Thu, 19 Jun 2014 19:39:14 +0900 Organization: Faculty of Science, Chiba University Message-ID: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII X-Trace: ger.gmane.org 1403174477 5582 80.91.229.3 (19 Jun 2014 10:41:17 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 19 Jun 2014 10:41:17 +0000 (UTC) To: 17810@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Jun 19 12:41:07 2014 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1WxZmE-00064x-GC for geb-bug-gnu-emacs@m.gmane.org; Thu, 19 Jun 2014 12:41:06 +0200 Original-Received: from localhost ([::1]:34708 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WxZmB-0001uw-63 for geb-bug-gnu-emacs@m.gmane.org; Thu, 19 Jun 2014 06:41:03 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:59518) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WxZlL-0001BW-IW for bug-gnu-emacs@gnu.org; Thu, 19 Jun 2014 06:40:18 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WxZlE-0000hW-DE for bug-gnu-emacs@gnu.org; Thu, 19 Jun 2014 06:40:11 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:33113) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WxZlD-0000gB-Th for bug-gnu-emacs@gnu.org; Thu, 19 Jun 2014 06:40:04 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1WxZlD-0001oz-8t for bug-gnu-emacs@gnu.org; Thu, 19 Jun 2014 06:40:03 -0400 X-Loop: help-debbugs@gnu.org Resent-From: YAMAMOTO Mitsuharu Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 19 Jun 2014 10:40:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 17810 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.14031743916978 (code B ref -1); Thu, 19 Jun 2014 10:40:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 19 Jun 2014 10:39:51 +0000 Original-Received: from localhost ([127.0.0.1]:52496 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WxZl0-0001oT-VS for submit@debbugs.gnu.org; Thu, 19 Jun 2014 06:39:51 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:57671) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WxZkx-0001oA-5n for submit@debbugs.gnu.org; Thu, 19 Jun 2014 06:39:48 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WxZkk-0000Yd-TU for submit@debbugs.gnu.org; Thu, 19 Jun 2014 06:39:41 -0400 Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:36224) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WxZkk-0000YY-QN for submit@debbugs.gnu.org; Thu, 19 Jun 2014 06:39:34 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:59325) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WxZke-0000Mu-IX for bug-gnu-emacs@gnu.org; Thu, 19 Jun 2014 06:39:34 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WxZkY-0000Vn-DZ for bug-gnu-emacs@gnu.org; Thu, 19 Jun 2014 06:39:28 -0400 Original-Received: from mathmail.math.s.chiba-u.ac.jp ([133.82.132.2]:61464) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WxZkX-0000Ub-SZ for bug-gnu-emacs@gnu.org; Thu, 19 Jun 2014 06:39:22 -0400 Original-Received: from fermat.math.s.chiba-u.ac.jp (fermat [133.82.132.10]) by mathmail.math.s.chiba-u.ac.jp (Postfix) with ESMTP id 69069C0562 for ; Thu, 19 Jun 2014 19:39:14 +0900 (JST) User-Agent: Wanderlust/2.14.0 (Africa) SEMI/1.14.6 (Maruoka) FLIM/1.14.8 (=?UTF-8?Q?Shij=C5=8D?=) APEL/10.6 Emacs/22.3 (sparc-sun-solaris2.8) MULE/5.0 (SAKAKI) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:90545 Archived-At: On Mac OS X >= 10.5, the directory ~/Desktop has ACL, but (file-acl "~/Desktop") returns nil. $ ls -lde ~/Desktop drwx------+ 4 mituharu staff 136 6 11 12:04 /Users/mituharu/Desktop 0: group:everyone deny delete A comment in lib/qcopy-acl.c and lib/qset-acl.c says: # if !HAVE_ACL_TYPE_EXTENDED /* Linux, FreeBSD, IRIX, Tru64 */ ... # else /* HAVE_ACL_TYPE_EXTENDED */ /* Mac OS X */ /* On Mac OS X, acl_get_file (name, ACL_TYPE_ACCESS) and acl_get_file (name, ACL_TYPE_DEFAULT) always return NULL / EINVAL. You have to use acl_get_file (name, ACL_TYPE_EXTENDED) or acl_get_fd (open (name, ...)) to retrieve an ACL. On the other hand, acl_set_file (name, ACL_TYPE_ACCESS, acl) and acl_set_file (name, ACL_TYPE_DEFAULT, acl) have the same effect as acl_set_file (name, ACL_TYPE_EXTENDED, acl): Each of these calls sets the file's ACL. */ So, the following lines in src/fileio.c seems to always result in returning Qnil. acl = acl_get_file (SSDATA (absname), ACL_TYPE_ACCESS); if (acl == NULL) return Qnil; If I change the above ACL_TYPE_ACCESS to ACL_TYPE_EXTENDED as an experiment, then I get the following string as a result of (file-acl "~/Desktop"): "!#acl 1 group:ABCDEFAB-CDEF-ABCD-EFAB-CDEF0000000C:everyone:12:deny:delete " And I could pass it to set-file-acl to set ACL of another file. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp