From unknown Fri Aug 15 03:57:07 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#13226 <13226@debbugs.gnu.org> To: bug#13226 <13226@debbugs.gnu.org> Subject: Status: 24.3.50; set-file-acl on MS Windows shall check ACL string format Reply-To: bug#13226 <13226@debbugs.gnu.org> Date: Fri, 15 Aug 2025 10:57:07 +0000 retitle 13226 24.3.50; set-file-acl on MS Windows shall check ACL string fo= rmat reassign 13226 emacs submitter 13226 Michael Albinus severity 13226 normal thanks From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 07:25:24 2012 Received: (at submit) by debbugs.gnu.org; 19 Dec 2012 12:25:24 +0000 Received: from localhost ([127.0.0.1]:50059 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlIi9-0001Ib-Vu for submit@debbugs.gnu.org; Wed, 19 Dec 2012 07:25:24 -0500 Received: from eggs.gnu.org ([208.118.235.92]:58590) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlIi3-0001IP-7V for submit@debbugs.gnu.org; Wed, 19 Dec 2012 07:25:18 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TlIhy-0001ud-1Y for submit@debbugs.gnu.org; Wed, 19 Dec 2012 07:25:13 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-101.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE, USER_IN_WHITELIST autolearn=unavailable version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:37054) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TlIhx-0001uO-Ug for submit@debbugs.gnu.org; Wed, 19 Dec 2012 07:25:09 -0500 Received: from eggs.gnu.org ([208.118.235.92]:41693) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TlIhn-0001RM-LC for bug-gnu-emacs@gnu.org; Wed, 19 Dec 2012 07:25:09 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TlIhk-0001f7-Dq for bug-gnu-emacs@gnu.org; Wed, 19 Dec 2012 07:24:59 -0500 Received: from mout.gmx.net ([212.227.17.20]:52425) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TlIhj-0001eZ-UO for bug-gnu-emacs@gnu.org; Wed, 19 Dec 2012 07:24:56 -0500 Received: from mailout-de.gmx.net ([10.1.76.10]) by mrigmx.server.lan (mrigmx001) with ESMTP (Nemesis) id 0LxZpd-1T1GbG3jMB-017AOv for ; Wed, 19 Dec 2012 13:24:53 +0100 Received: (qmail invoked by alias); 19 Dec 2012 12:24:47 -0000 Received: from p57BB97BB.dip0.t-ipconnect.de (EHLO detlef.gmx.de) [87.187.151.187] by mail.gmx.net (mp010) with SMTP; 19 Dec 2012 13:24:47 +0100 X-Authenticated: #3708877 X-Provags-ID: V01U2FsdGVkX19d5zlCehBdO+1ap6tynyRAYGFvGDOkej1i50tEkQ O9NnnmbFcZ+ypq From: Michael Albinus To: bug-gnu-emacs@gnu.org Subject: 24.3.50; set-file-acl on MS Windows shall check ACL string format Date: Wed, 19 Dec 2012 13:24:45 +0100 Message-ID: <877goexm9e.fsf@gmx.de> MIME-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: quoted-printable X-Y-GMX-Trusted: 0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 208.118.235.17 X-Spam-Score: -6.9 (------) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.9 (------) File ACLs have different formats on MS Windows and POSIX systems: --8<---------------cut here---------------start------------->8--- (file-acl "~/.emacs") "O:S-1-5-21-3955186872-1115707380-970145838-1000G:S-1-5-21-3955186872-11157= 07380-970145838-513D:(A;;FA;;;SY)(A;;FA;;;BA)(A;;FA;;;S-1-5-21-3955186872-1= 115707380-970145838-1000)" (file-acl "/plink:albinus@ford:~/.emacs") "user::rwx group::rwx other::r-x " --8<---------------cut here---------------end--------------->8--- If one copies a file with POSIX ACLs to MS Windows, `set-file-acl' raises an error. This shall be suppressed: --8<---------------cut here---------------start------------->8--- (copy-file "/plink:albinus@ford:~/.emacs" temporary-file-directory t t t t) Debugger entered--Lisp error: (file-error "Converting ACL" "invalid argumen= t" "c:/Users/Michael/AppData/Local/Temp/.emacs") set-file-acl("c:/Users/Michael/AppData/Local/Temp/.emacs" "user::rwx\ngro= up::rwx\nother::r-x\n") set-file-extended-attributes("c:/Users/Michael/AppData/Local/Temp/.emacs"= ((acl . "user::rwx\ngroup::rwx\nother::r-x\n") (selinux-context nil nil ni= l nil))) apply(set-file-extended-attributes ("c:/Users/Michael/AppData/Local/Temp/= .emacs" ((acl . "user::rwx\ngroup::rwx\nother::r-x\n") (selinux-context nil= nil nil nil)))) (progn (apply (quote set-file-extended-attributes) (list newname attribut= es))) (if attributes (progn (apply (quote set-file-extended-attributes) (list n= ewname attributes)))) (let ((tramp-message-show-progress-reporter-message (and tramp-message-sh= ow-progress-reporter-message (not tm)))) (cond ((and t1 t2) (let* ((v1 (tra= mp-dissect-file-name filename)) (v1-method (tramp-file-name-method v1)) (v1= -user (tramp-file-name-user v1)) (v1-host (tramp-file-name-host v1)) (v1-lo= calname (tramp-file-name-localname v1)) (v1-hop (tramp-file-name-hop v1))) = (let* ((v2 (tramp-dissect-file-name newname)) (v2-method (tramp-file-name-m= ethod v2)) (v2-user (tramp-file-name-user v2)) (v2-host (tramp-file-name-ho= st v2)) (v2-localname (tramp-file-name-localname v2)) (v2-hop (tramp-file-n= ame-hop v2))) (cond ((tramp-equal-remote filename newname) (tramp-do-copy-o= r-rename-file-directly op filename newname ok-if-already-exists keep-date p= reserve-uid-gid)) ((and ... ...) (tramp-do-copy-or-rename-file-out-of-band = op filename newname keep-date)) (t (tramp-do-copy-or-rename-file-via-buffer= op filename newname keep-date)))))) ((or t1 t2) (cond ((tramp-local-host-p= v) (tramp-do-copy-or-rename-file-directly op filename newname ok-if-alread= y-exists keep-date preserve-uid-gid)) ((tramp-method-out-of-band-p v length= ) (tramp-do-copy-or-rename-file-out-of-band op filename newname keep-date))= (t (tramp-do-copy-or-rename-file-via-buffer op filename newname keep-date)= ))) (t (error "Tramp implementation says this cannot happen"))) (if attribu= tes (progn (apply (quote set-file-extended-attributes) (list newname attrib= utes)))) (if (and t1 (eq op (quote rename))) (progn (let* ((v1 (tramp-disse= ct-file-name filename)) (v1-method (tramp-file-name-method v1)) (v1-user (t= ramp-file-name-user v1)) (v1-host (tramp-file-name-host v1)) (v1-localname = (tramp-file-name-localname v1)) (v1-hop (tramp-file-name-hop v1))) (tramp-f= lush-file-property v1 (file-name-directory localname)) (tramp-flush-file-pr= operty v1 localname)))) (if t2 (progn (let* ((v2 (tramp-dissect-file-name n= ewname)) (v2-method (tramp-file-name-method v2)) (v2-user (tramp-file-name-= user v2)) (v2-host (tramp-file-name-host v2)) (v2-localname (tramp-file-nam= e-localname v2)) (v2-hop (tramp-file-name-hop v2))) (tramp-flush-file-prope= rty v2 (file-name-directory localname)) (tramp-flush-file-property v2 local= name))))) (unwind-protect (let ((tramp-message-show-progress-reporter-message (and = tramp-message-show-progress-reporter-message (not tm)))) (cond ((and t1 t2)= (let* ((v1 (tramp-dissect-file-name filename)) (v1-method (tramp-file-name= -method v1)) (v1-user (tramp-file-name-user v1)) (v1-host (tramp-file-name-= host v1)) (v1-localname (tramp-file-name-localname v1)) (v1-hop (tramp-file= -name-hop v1))) (let* ((v2 ...) (v2-method ...) (v2-user ...) (v2-host ...)= (v2-localname ...) (v2-hop ...)) (cond (... ...) (... ...) (t ...))))) ((o= r t1 t2) (cond ((tramp-local-host-p v) (tramp-do-copy-or-rename-file-direct= ly op filename newname ok-if-already-exists keep-date preserve-uid-gid)) ((= tramp-method-out-of-band-p v length) (tramp-do-copy-or-rename-file-out-of-b= and op filename newname keep-date)) (t (tramp-do-copy-or-rename-file-via-bu= ffer op filename newname keep-date)))) (t (error "Tramp implementation says= this cannot happen"))) (if attributes (progn (apply (quote set-file-extend= ed-attributes) (list newname attributes)))) (if (and t1 (eq op (quote renam= e))) (progn (let* ((v1 (tramp-dissect-file-name filename)) (v1-method (tram= p-file-name-method v1)) (v1-user (tramp-file-name-user v1)) (v1-host (tramp= -file-name-host v1)) (v1-localname (tramp-file-name-localname v1)) (v1-hop = (tramp-file-name-hop v1))) (tramp-flush-file-property v1 (file-name-directo= ry localname)) (tramp-flush-file-property v1 localname)))) (if t2 (progn (l= et* ((v2 (tramp-dissect-file-name newname)) (v2-method (tramp-file-name-met= hod v2)) (v2-user (tramp-file-name-user v2)) (v2-host (tramp-file-name-host= v2)) (v2-localname (tramp-file-name-localname v2)) (v2-hop (tramp-file-nam= e-hop v2))) (tramp-flush-file-property v2 (file-name-directory localname)) = (tramp-flush-file-property v2 localname))))) (if tm (if (or (subrp (quote c= ancel-timer)) (functionp (quote cancel-timer))) (progn (with-no-warnings (f= uncall (quote cancel-timer) tm))))) (tramp-message v 0 "%s...done" (format = "%s %s to %s" (if (eq op (quote copy)) "Copying" "Renaming") filename newna= me))) (let (pr tm) (tramp-message v 0 "%s..." (format "%s %s to %s" (if (eq op = (quote copy)) "Copying" "Renaming") filename newname)) (if (and tramp-messa= ge-show-progress-reporter-message tramp-message-show-message (<=3D 0 (min t= ramp-verbose 3))) (progn (condition-case nil (progn (setq pr (if (or ... ..= .) (progn ...)) tm (if pr (progn ...)))) (error nil)))) (unwind-protect (le= t ((tramp-message-show-progress-reporter-message (and tramp-message-show-pr= ogress-reporter-message (not tm)))) (cond ((and t1 t2) (let* ((v1 ...) (v1-= method ...) (v1-user ...) (v1-host ...) (v1-localname ...) (v1-hop ...)) (l= et* (... ... ... ... ... ...) (cond ... ... ...)))) ((or t1 t2) (cond ((tra= mp-local-host-p v) (tramp-do-copy-or-rename-file-directly op filename newna= me ok-if-already-exists keep-date preserve-uid-gid)) ((tramp-method-out-of-= band-p v length) (tramp-do-copy-or-rename-file-out-of-band op filename newn= ame keep-date)) (t (tramp-do-copy-or-rename-file-via-buffer op filename new= name keep-date)))) (t (error "Tramp implementation says this cannot happen"= ))) (if attributes (progn (apply (quote set-file-extended-attributes) (list= newname attributes)))) (if (and t1 (eq op (quote rename))) (progn (let* ((= v1 ...) (v1-method ...) (v1-user ...) (v1-host ...) (v1-localname ...) (v1-= hop ...)) (tramp-flush-file-property v1 (file-name-directory localname)) (t= ramp-flush-file-property v1 localname)))) (if t2 (progn (let* ((v2 ...) (v2= -method ...) (v2-user ...) (v2-host ...) (v2-localname ...) (v2-hop ...)) (= tramp-flush-file-property v2 (file-name-directory localname)) (tramp-flush-= file-property v2 localname))))) (if tm (if (or (subrp (quote cancel-timer))= (functionp (quote cancel-timer))) (progn (with-no-warnings (funcall (quote= cancel-timer) tm))))) (tramp-message v 0 "%s...done" (format "%s %s to %s"= (if (eq op (quote copy)) "Copying" "Renaming") filename newname)))) (let* ((v (tramp-dissect-file-name (if t1 filename newname))) (method (tr= amp-file-name-method v)) (user (tramp-file-name-user v)) (host (tramp-file-= name-host v)) (localname (tramp-file-name-localname v)) (hop (tramp-file-na= me-hop v))) (if (and (not ok-if-already-exists) (file-exists-p newname)) (p= rogn (tramp-error v (quote file-already-exists) "File %s already exists" ne= wname))) (let (pr tm) (tramp-message v 0 "%s..." (format "%s %s to %s" (if = (eq op (quote copy)) "Copying" "Renaming") filename newname)) (if (and tram= p-message-show-progress-reporter-message tramp-message-show-message (<=3D 0= (min tramp-verbose 3))) (progn (condition-case nil (progn (setq pr (if ...= ...) tm (if pr ...))) (error nil)))) (unwind-protect (let ((tramp-message-= show-progress-reporter-message (and tramp-message-show-progress-reporter-me= ssage (not tm)))) (cond ((and t1 t2) (let* (... ... ... ... ... ...) (let* = ... ...))) ((or t1 t2) (cond (... ...) (... ...) (t ...))) (t (error "Tramp= implementation says this cannot happen"))) (if attributes (progn (apply (q= uote set-file-extended-attributes) (list newname attributes)))) (if (and t1= (eq op (quote rename))) (progn (let* (... ... ... ... ... ...) (tramp-flus= h-file-property v1 ...) (tramp-flush-file-property v1 localname)))) (if t2 = (progn (let* (... ... ... ... ... ...) (tramp-flush-file-property v2 ...) (= tramp-flush-file-property v2 localname))))) (if tm (if (or (subrp (quote ca= ncel-timer)) (functionp (quote cancel-timer))) (progn (with-no-warnings (fu= ncall ... tm))))) (tramp-message v 0 "%s...done" (format "%s %s to %s" (if = (eq op (quote copy)) "Copying" "Renaming") filename newname))))) (let ((t1 (tramp-tramp-file-p filename)) (t2 (tramp-tramp-file-p newname)= ) (length (nth 7 (file-attributes (file-truename filename)))) (attributes (= and preserve-extended-attributes (apply (quote file-extended-attributes) (l= ist filename)))) pr tm) (let* ((v (tramp-dissect-file-name (if t1 filename = newname))) (method (tramp-file-name-method v)) (user (tramp-file-name-user = v)) (host (tramp-file-name-host v)) (localname (tramp-file-name-localname v= )) (hop (tramp-file-name-hop v))) (if (and (not ok-if-already-exists) (file= -exists-p newname)) (progn (tramp-error v (quote file-already-exists) "File= %s already exists" newname))) (let (pr tm) (tramp-message v 0 "%s..." (for= mat "%s %s to %s" (if (eq op (quote copy)) "Copying" "Renaming") filename n= ewname)) (if (and tramp-message-show-progress-reporter-message tramp-messag= e-show-message (<=3D 0 (min tramp-verbose 3))) (progn (condition-case nil (= progn (setq pr ... tm ...)) (error nil)))) (unwind-protect (let ((tramp-mes= sage-show-progress-reporter-message (and tramp-message-show-progress-report= er-message ...))) (cond ((and t1 t2) (let* ... ...)) ((or t1 t2) (cond ... = ... ...)) (t (error "Tramp implementation says this cannot happen"))) (if a= ttributes (progn (apply ... ...))) (if (and t1 (eq op ...)) (progn (let* ..= . ... ...))) (if t2 (progn (let* ... ... ...)))) (if tm (if (or (subrp ...)= (functionp ...)) (progn (with-no-warnings ...)))) (tramp-message v 0 "%s..= .done" (format "%s %s to %s" (if (eq op ...) "Copying" "Renaming") filename= newname)))))) tramp-do-copy-or-rename-file(copy "/plink:admin@ford:/share/albinus/.emac= s" "c:/Users/Michael/AppData/Local/Temp/.emacs" t t t t) (cond ((or (tramp-tramp-file-p filename) (tramp-tramp-file-p newname)) (t= ramp-do-copy-or-rename-file (quote copy) filename newname ok-if-already-exi= sts keep-date preserve-uid-gid preserve-extended-attributes)) (preserve-ext= ended-attributes (tramp-run-real-handler (quote copy-file) (list filename n= ewname ok-if-already-exists keep-date preserve-uid-gid preserve-extended-at= tributes))) (preserve-uid-gid (tramp-run-real-handler (quote copy-file) (li= st filename newname ok-if-already-exists keep-date preserve-uid-gid))) (t (= tramp-run-real-handler (quote copy-file) (list filename newname ok-if-alrea= dy-exists keep-date)))) tramp-sh-handle-copy-file("/plink:admin@ford:/share/albinus/.emacs" "c:/U= sers/Michael/AppData/Local/Temp/.emacs" t t t t) apply(tramp-sh-handle-copy-file ("/plink:admin@ford:/share/albinus/.emacs= " "c:/Users/Michael/AppData/Local/Temp/.emacs" t t t t)) (if fn (apply (cdr fn) args) (tramp-run-real-handler operation args)) (let ((fn (assoc operation tramp-sh-file-name-handler-alist))) (if fn (ap= ply (cdr fn) args) (tramp-run-real-handler operation args))) (progn (let ((fn (assoc operation tramp-sh-file-name-handler-alist))) (if= fn (apply (cdr fn) args) (tramp-run-real-handler operation args)))) (unwind-protect (progn (let ((fn (assoc operation tramp-sh-file-name-hand= ler-alist))) (if fn (apply (cdr fn) args) (tramp-run-real-handler operation= args)))) (set-match-data save-match-data-internal (quote evaporate))) (let ((save-match-data-internal (match-data))) (unwind-protect (progn (le= t ((fn (assoc operation tramp-sh-file-name-handler-alist))) (if fn (apply (= cdr fn) args) (tramp-run-real-handler operation args)))) (set-match-data sa= ve-match-data-internal (quote evaporate)))) (let ((tramp-locker t)) (let ((save-match-data-internal (match-data))) (u= nwind-protect (progn (let ((fn (assoc operation tramp-sh-file-name-handler-= alist))) (if fn (apply (cdr fn) args) (tramp-run-real-handler operation arg= s)))) (set-match-data save-match-data-internal (quote evaporate))))) (progn (setq tramp-locked t) (let ((tramp-locker t)) (let ((save-match-da= ta-internal (match-data))) (unwind-protect (progn (let ((fn ...)) (if fn (a= pply ... args) (tramp-run-real-handler operation args)))) (set-match-data s= ave-match-data-internal (quote evaporate)))))) (unwind-protect (progn (setq tramp-locked t) (let ((tramp-locker t)) (let= ((save-match-data-internal (match-data))) (unwind-protect (progn (let (...= ) (if fn ... ...))) (set-match-data save-match-data-internal (quote evapora= te)))))) (setq tramp-locked tl)) (let ((tl tramp-locked)) (unwind-protect (progn (setq tramp-locked t) (le= t ((tramp-locker t)) (let ((save-match-data-internal (match-data))) (unwind= -protect (progn (let ... ...)) (set-match-data save-match-data-internal (qu= ote evaporate)))))) (setq tramp-locked tl))) tramp-sh-file-name-handler(copy-file "/plink:admin@ford:/share/albinus/.e= macs" "c:/Users/Michael/AppData/Local/Temp/.emacs" t t t t) apply(tramp-sh-file-name-handler copy-file ("/plink:admin@ford:/share/alb= inus/.emacs" "c:/Users/Michael/AppData/Local/Temp/.emacs" t t t t)) (catch (quote suppress) (apply foreign operation args)) (catch (quote non-essential) (catch (quote suppress) (apply foreign opera= tion args))) (setq result (catch (quote non-essential) (catch (quote suppress) (apply = foreign operation args)))) (let ((sf (symbol-function foreign)) result) (if (and (listp sf) (eq (car= sf) (quote autoload))) (progn (let ((default-directory (tramp-compat-tempo= rary-file-directory))) (load (cadr sf) (quote noerror) (quote nomessage))))= ) (setq result (catch (quote non-essential) (catch (quote suppress) (apply = foreign operation args)))) (cond ((eq result (quote non-essential)) (tramp-= message v 5 "Non-essential received in operation %s" (append (list operatio= n) args)) (tramp-run-real-handler operation args)) ((eq result (quote suppr= ess)) (let (tramp-message-show-message) (tramp-message v 1 "Suppress receiv= ed in operation %s" (append (list operation) args)) (tramp-cleanup v) (tram= p-run-real-handler operation args))) (t result))) (lambda nil (let ((sf (symbol-function foreign)) result) (if (and (listp = sf) (eq (car sf) (quote autoload))) (progn (let ((default-directory (tramp-= compat-temporary-file-directory))) (load (cadr sf) (quote noerror) (quote n= omessage))))) (setq result (catch (quote non-essential) (catch (quote suppr= ess) (apply foreign operation args)))) (cond ((eq result (quote non-essenti= al)) (tramp-message v 5 "Non-essential received in operation %s" (append (l= ist operation) args)) (tramp-run-real-handler operation args)) ((eq result = (quote suppress)) (let (tramp-message-show-message) (tramp-message v 1 "Sup= press received in operation %s" (append (list operation) args)) (tramp-clea= nup v) (tramp-run-real-handler operation args))) (t result))))() funcall((lambda nil (let ((sf (symbol-function foreign)) result) (if (and= (listp sf) (eq (car sf) (quote autoload))) (progn (let ((default-directory= (tramp-compat-temporary-file-directory))) (load (cadr sf) (quote noerror) = (quote nomessage))))) (setq result (catch (quote non-essential) (catch (quo= te suppress) (apply foreign operation args)))) (cond ((eq result (quote non= -essential)) (tramp-message v 5 "Non-essential received in operation %s" (a= ppend (list operation) args)) (tramp-run-real-handler operation args)) ((eq= result (quote suppress)) (let (tramp-message-show-message) (tramp-message = v 1 "Suppress received in operation %s" (append (list operation) args)) (tr= amp-cleanup v) (tramp-run-real-handler operation args))) (t result))))) (if debug-on-error (funcall body) (condition-case err (funcall body) ((de= bug quit) (let (tramp-message-show-message) (tramp-message v 1 "Interrupt r= eceived in operation %s" (append (list operation) args))) (signal (car err)= (cdr err))) (error (cond ((and completion (zerop (length localname)) (memq= operation (quote ...))) t) ((and completion (zerop (length localname)) (me= mq operation (quote ...))) filename) (t (signal (car err) (cdr err))))))) (let ((body (function (lambda nil (let ((sf ...) result) (if (and ... ...= ) (progn ...)) (setq result (catch ... ...)) (cond (... ... ...) (... ...) = (t result))))))) (if debug-on-error (funcall body) (condition-case err (fun= call body) ((debug quit) (let (tramp-message-show-message) (tramp-message v= 1 "Interrupt received in operation %s" (append (list operation) args))) (s= ignal (car err) (cdr err))) (error (cond ((and completion (zerop ...) (memq= operation ...)) t) ((and completion (zerop ...) (memq operation ...)) file= name) (t (signal (car err) (cdr err)))))))) (if foreign (let ((body (function (lambda nil (let (... result) (if ... .= ..) (setq result ...) (cond ... ... ...)))))) (if debug-on-error (funcall b= ody) (condition-case err (funcall body) ((debug quit) (let (tramp-message-s= how-message) (tramp-message v 1 "Interrupt received in operation %s" (appen= d ... args))) (signal (car err) (cdr err))) (error (cond ((and completion .= .. ...) t) ((and completion ... ...) filename) (t (signal ... ...))))))) (t= ramp-run-real-handler operation args)) (let* ((v (tramp-dissect-file-name filename)) (method (tramp-file-name-me= thod v)) (user (tramp-file-name-user v)) (host (tramp-file-name-host v)) (l= ocalname (tramp-file-name-localname v)) (hop (tramp-file-name-hop v))) (if = foreign (let ((body (function (lambda nil (let ... ... ... ...))))) (if deb= ug-on-error (funcall body) (condition-case err (funcall body) ((debug quit)= (let (tramp-message-show-message) (tramp-message v 1 "Interrupt received i= n operation %s" ...)) (signal (car err) (cdr err))) (error (cond (... t) (.= .. filename) (t ...)))))) (tramp-run-real-handler operation args))) (let* ((filename (tramp-replace-environment-variables (apply (quote tramp= -file-name-for-operation) operation args))) (completion (tramp-completion-m= ode-p)) (foreign (tramp-find-foreign-file-name-handler filename))) (let* ((= v (tramp-dissect-file-name filename)) (method (tramp-file-name-method v)) (= user (tramp-file-name-user v)) (host (tramp-file-name-host v)) (localname (= tramp-file-name-localname v)) (hop (tramp-file-name-hop v))) (if foreign (l= et ((body (function (lambda nil ...)))) (if debug-on-error (funcall body) (= condition-case err (funcall body) ((debug quit) (let ... ...) (signal ... .= ..)) (error (cond ... ... ...))))) (tramp-run-real-handler operation args))= )) (progn (let* ((filename (tramp-replace-environment-variables (apply (quot= e tramp-file-name-for-operation) operation args))) (completion (tramp-compl= etion-mode-p)) (foreign (tramp-find-foreign-file-name-handler filename))) (= let* ((v (tramp-dissect-file-name filename)) (method (tramp-file-name-metho= d v)) (user (tramp-file-name-user v)) (host (tramp-file-name-host v)) (loca= lname (tramp-file-name-localname v)) (hop (tramp-file-name-hop v))) (if for= eign (let ((body (function ...))) (if debug-on-error (funcall body) (condit= ion-case err (funcall body) (... ... ...) (error ...)))) (tramp-run-real-ha= ndler operation args))))) (unwind-protect (progn (let* ((filename (tramp-replace-environment-variab= les (apply (quote tramp-file-name-for-operation) operation args))) (complet= ion (tramp-completion-mode-p)) (foreign (tramp-find-foreign-file-name-handl= er filename))) (let* ((v (tramp-dissect-file-name filename)) (method (tramp= -file-name-method v)) (user (tramp-file-name-user v)) (host (tramp-file-nam= e-host v)) (localname (tramp-file-name-localname v)) (hop (tramp-file-name-= hop v))) (if foreign (let ((body ...)) (if debug-on-error (funcall body) (c= ondition-case err ... ... ...))) (tramp-run-real-handler operation args))))= ) (set-match-data save-match-data-internal (quote evaporate))) (let ((save-match-data-internal (match-data))) (unwind-protect (progn (le= t* ((filename (tramp-replace-environment-variables (apply ... operation arg= s))) (completion (tramp-completion-mode-p)) (foreign (tramp-find-foreign-fi= le-name-handler filename))) (let* ((v (tramp-dissect-file-name filename)) (= method (tramp-file-name-method v)) (user (tramp-file-name-user v)) (host (t= ramp-file-name-host v)) (localname (tramp-file-name-localname v)) (hop (tra= mp-file-name-hop v))) (if foreign (let (...) (if debug-on-error ... ...)) (= tramp-run-real-handler operation args))))) (set-match-data save-match-data-= internal (quote evaporate)))) (if tramp-mode (let ((save-match-data-internal (match-data))) (unwind-pro= tect (progn (let* ((filename (tramp-replace-environment-variables ...)) (co= mpletion (tramp-completion-mode-p)) (foreign (tramp-find-foreign-file-name-= handler filename))) (let* ((v ...) (method ...) (user ...) (host ...) (loca= lname ...) (hop ...)) (if foreign (let ... ...) (tramp-run-real-handler ope= ration args))))) (set-match-data save-match-data-internal (quote evaporate)= ))) (tramp-run-real-handler operation args)) tramp-file-name-handler(copy-file "/plink:admin@ford:/share/albinus/.emac= s" "c:/Users/Michael/AppData/Local/Temp/.emacs" t t t t) copy-file("/plink:admin@ford:/share/albinus/.emacs" "c:/Users/Michael/App= Data/Local/Temp/" t t t t) eval((copy-file "/plink:admin@ford:/share/albinus/.emacs" temporary-file-= directory t t t t) nil) eval-last-sexp-1(nil) eval-last-sexp(nil) call-interactively(eval-last-sexp nil nil) --8<---------------cut here---------------end--------------->8--- In GNU Emacs 24.3.50.1 (i386-mingw-nt6.1.7600) of 2012-12-18 on MS-W7-DANI Bzr revision: 111265 eliz@gnu.org-20121218190556-x9wmq083vwecgu0f Windowing system distributor `Microsoft Corp.', version 6.1.7600 Configured using: `configure --with-gcc (4.7) --no-opt --enable-checking --cflags -Ic:/emacs/libs/libXpm-3.5.10/include -Ic:/emacs/libs/libXpm-3.5.10/src -Ic:/emacs/libs/libpng-dev_1.4.3-1_win32/include -Ic:/emacs/libs/zlib-dev_1.2.5-2_win32/include -Ic:/emacs/libs/giflib-4.1.4-1-lib/include -Ic:/emacs/libs/jpeg-6b-4-lib/include -Ic:/emacs/libs/tiff-3.8.2-1-lib/include -Ic:/emacs/libs/libxml2-2.7.8-w32-bin/include/libxml2 -Ic:/emacs/libs/gnutls-3.0.9-w32-bin/include -Ic:/emacs/libs/libiconv-1.9.2-1-lib/include' Important settings: value of $LANG: DEU locale-coding-system: cp1252 default enable-multibyte-characters: t Major mode: Lisp Interaction Minor modes in effect: tooltip-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t transient-mark-mode: t Recent input: x r e p o r Recent messages: For information about GNU Emacs and the GNU system, type C-h C-a. Making completion list... delete-forward-char: End of buffer Load-path shadows: None found. Features: (shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils help-mode easymenu time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel dos-w32 ls-lisp w32-common-fns disp-table w32-win w32-vars tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process w32notify w32 multi-tty emacs) From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 09:32:51 2012 Received: (at 13226) by debbugs.gnu.org; 19 Dec 2012 14:32:51 +0000 Received: from localhost ([127.0.0.1]:50136 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlKhR-00057p-5z for submit@debbugs.gnu.org; Wed, 19 Dec 2012 09:32:49 -0500 Received: from chene.dit.umontreal.ca ([132.204.246.20]:38077) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlKhL-00057e-F9 for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 09:32:40 -0500 Received: from faina.iro.umontreal.ca (lechon.iro.umontreal.ca [132.204.27.242]) by chene.dit.umontreal.ca (8.14.1/8.14.1) with ESMTP id qBJEWkX2007954; Wed, 19 Dec 2012 09:32:46 -0500 Received: by faina.iro.umontreal.ca (Postfix, from userid 20848) id 47017B4311; Wed, 19 Dec 2012 09:32:36 -0500 (EST) From: Stefan Monnier To: Michael Albinus Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format Message-ID: References: <877goexm9e.fsf@gmx.de> Date: Wed, 19 Dec 2012 09:32:36 -0500 In-Reply-To: <877goexm9e.fsf@gmx.de> (Michael Albinus's message of "Wed, 19 Dec 2012 13:24:45 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-NAI-Spam-Flag: NO X-NAI-Spam-Threshold: 5 X-NAI-Spam-Score: 0 X-NAI-Spam-Rules: 1 Rules triggered RV4437=0 X-NAI-Spam-Version: 2.2.0.9309 : core <4437> : streams <877112> : uri <1298391> X-Spam-Score: -1.6 (-) X-Debbugs-Envelope-To: 13226 Cc: 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -3.5 (---) > (file-acl "~/.emacs") > "O:S-1-5-21-3955186872-1115707380-970145838-1000G:S-1-5-21-3955186872-1115707380-970145838-513D:(A;;FA;;;SY)(A;;FA;;;BA)(A;;FA;;;S-1-5-21-3955186872-1115707380-970145838-1000)" This looks thoroughly unportable. > (file-acl "/plink:albinus@ford:~/.emacs") > "user::rwx > group::rwx > other::r-x > " We should probably change file-acl so that its return value is tagged with the "acl-system" it uses. It could be a prefix like "w32:". Then we can change set-file-acl so that it can either try to perform conversion or signal a proper error that copy-file can handle. Stefan From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 09:34:45 2012 Received: (at 13226) by debbugs.gnu.org; 19 Dec 2012 14:34:45 +0000 Received: from localhost ([127.0.0.1]:50151 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlKjM-0005Au-OI for submit@debbugs.gnu.org; Wed, 19 Dec 2012 09:34:45 -0500 Received: from chene.dit.umontreal.ca ([132.204.246.20]:58548) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlKjK-0005Am-9n for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 09:34:43 -0500 Received: from faina.iro.umontreal.ca (lechon.iro.umontreal.ca [132.204.27.242]) by chene.dit.umontreal.ca (8.14.1/8.14.1) with ESMTP id qBJEYno3008346; Wed, 19 Dec 2012 09:34:49 -0500 Received: by faina.iro.umontreal.ca (Postfix, from userid 20848) id 42B83B4311; Wed, 19 Dec 2012 09:34:39 -0500 (EST) From: Stefan Monnier To: Michael Albinus Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format Message-ID: References: <877goexm9e.fsf@gmx.de> Date: Wed, 19 Dec 2012 09:34:39 -0500 In-Reply-To: <877goexm9e.fsf@gmx.de> (Michael Albinus's message of "Wed, 19 Dec 2012 13:24:45 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-NAI-Spam-Flag: NO X-NAI-Spam-Level: X-NAI-Spam-Threshold: 5 X-NAI-Spam-Score: 0.5 X-NAI-Spam-Rules: 2 Rules triggered NUMBER_22_28=0.5, RV4437=0 X-NAI-Spam-Version: 2.2.0.9309 : core <4437> : streams <877114> : uri <1298393> X-Spam-Score: -1.6 (-) X-Debbugs-Envelope-To: 13226 Cc: 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -3.5 (---) > (file-acl "/plink:albinus@ford:~/.emacs") > "user::rwx > group::rwx > other::r-x > " BTW, the above is 100% redundant with the file-modes info. Is there some way to get "the ACL data minus the part that's already in file-modes". E.g. in the above case it could return nil. Stefan From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 09:38:22 2012 Received: (at 13226) by debbugs.gnu.org; 19 Dec 2012 14:38:22 +0000 Received: from localhost ([127.0.0.1]:50155 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlKmr-0005I2-ED for submit@debbugs.gnu.org; Wed, 19 Dec 2012 09:38:21 -0500 Received: from mout.gmx.net ([212.227.17.20]:51594) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlKmo-0005Hs-Qe for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 09:38:19 -0500 Received: from mailout-de.gmx.net ([10.1.76.10]) by mrigmx.server.lan (mrigmx001) with ESMTP (Nemesis) id 0MFfRr-1TqZz00Uyr-00EeL4 for <13226@debbugs.gnu.org>; Wed, 19 Dec 2012 15:38:15 +0100 Received: (qmail invoked by alias); 19 Dec 2012 14:38:14 -0000 Received: from p57BB97BB.dip0.t-ipconnect.de (EHLO detlef.gmx.de) [87.187.151.187] by mail.gmx.net (mp010) with SMTP; 19 Dec 2012 15:38:14 +0100 X-Authenticated: #3708877 X-Provags-ID: V01U2FsdGVkX18WEClarVEWGC7z/BuL0RwP+gjYql+5EIVWQ1aX5A PhDbe76QUEERLQ From: Michael Albinus To: Stefan Monnier Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format References: <877goexm9e.fsf@gmx.de> Date: Wed, 19 Dec 2012 15:38:12 +0100 In-Reply-To: (Stefan Monnier's message of "Wed, 19 Dec 2012 09:32:36 -0500") Message-ID: <8738z2150r.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Y-GMX-Trusted: 0 X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 13226 Cc: 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) Stefan Monnier writes: > We should probably change file-acl so that its return value is tagged > with the "acl-system" it uses. It could be a prefix like "w32:". > Then we can change set-file-acl so that it can either try to perform > conversion or signal a proper error that copy-file can handle. D'accord. Instead of a prefix, `file-acl' could return a cons cell like '(w32 . "ACL-STRING"). > Stefan Best regards, Michael. From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 09:59:14 2012 Received: (at 13226) by debbugs.gnu.org; 19 Dec 2012 14:59:14 +0000 Received: from localhost ([127.0.0.1]:50927 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlL74-0005yJ-5S for submit@debbugs.gnu.org; Wed, 19 Dec 2012 09:59:14 -0500 Received: from mout.gmx.net ([212.227.15.19]:64603) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlL72-0005yC-29 for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 09:59:12 -0500 Received: from mailout-de.gmx.net ([10.1.76.32]) by mrigmx.server.lan (mrigmx001) with ESMTP (Nemesis) id 0Mh7vz-1TOytx3POr-00MLAQ for <13226@debbugs.gnu.org>; Wed, 19 Dec 2012 15:59:08 +0100 Received: (qmail invoked by alias); 19 Dec 2012 14:59:08 -0000 Received: from p57BB97BB.dip0.t-ipconnect.de (EHLO detlef.gmx.de) [87.187.151.187] by mail.gmx.net (mp032) with SMTP; 19 Dec 2012 15:59:08 +0100 X-Authenticated: #3708877 X-Provags-ID: V01U2FsdGVkX18AFGtwS7AAgCOa9NcMYHps1wnn1TCq7t8tsgMK8j d8NmStlR+sBmi8 From: Michael Albinus To: Stefan Monnier Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format References: <877goexm9e.fsf@gmx.de> Date: Wed, 19 Dec 2012 15:59:05 +0100 In-Reply-To: (Stefan Monnier's message of "Wed, 19 Dec 2012 09:34:39 -0500") Message-ID: <87licuytom.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Y-GMX-Trusted: 0 X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 13226 Cc: Romain Francoise , 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) Stefan Monnier writes: >> (file-acl "/plink:albinus@ford:~/.emacs") > >> "user::rwx >> group::rwx >> other::r-x >> " > > BTW, the above is 100% redundant with the file-modes info. Is there > some way to get "the ACL data minus the part that's already in > file-modes". E.g. in the above case it could return nil. The "getfacl" command has the "--skip-base" option: --8<---------------cut here---------------start------------->8--- ~> getfacl --access --omit-header ~/.emacs 2>/dev/null user::rwx group::rwx other::r-x ~> getfacl --access --omit-header --skip-base ~/.emacs ~> --8<---------------cut here---------------end--------------->8--- I could apply this. And it shall be possible in the native Ffile_acl function as well. Romain? > Stefan Best regards, Michael. From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 10:46:14 2012 Received: (at 13226) by debbugs.gnu.org; 19 Dec 2012 15:46:14 +0000 Received: from localhost ([127.0.0.1]:50963 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlLqV-00075D-94 for submit@debbugs.gnu.org; Wed, 19 Dec 2012 10:46:12 -0500 Received: from stringer.orebokech.com ([88.190.240.207]:35636) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlLqR-000753-ML for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 10:46:09 -0500 Received: from silenus.orebokech.com (silenus [192.168.1.4]) by stringer.orebokech.com (Postfix) with ESMTP id 0B3FE1880327; Wed, 19 Dec 2012 16:46:04 +0100 (CET) Received: by silenus.orebokech.com (Postfix, from userid 1000) id D7AF3A0141; Wed, 19 Dec 2012 16:46:03 +0100 (CET) From: Romain Francoise To: Michael Albinus Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format Organization: orebokech dot com References: <877goexm9e.fsf@gmx.de> <87licuytom.fsf@gmx.de> Date: Wed, 19 Dec 2012 16:46:03 +0100 In-Reply-To: <87licuytom.fsf@gmx.de> (Michael Albinus's message of "Wed, 19 Dec 2012 15:59:05 +0100") Message-ID: <87bodqm4ec.fsf@silenus.orebokech.com> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.8 (/) X-Debbugs-Envelope-To: 13226 Cc: Stefan Monnier , 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) Michael Albinus writes: > And it shall be possible in the native Ffile_acl function as well. > Romain? Yes, we can use the `acl_equiv_mode' function for that. However, it's not part of the standard API, it's a Linux-specific extension in libacl. So it wouldn't be supported on all platforms. From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 10:57:20 2012 Received: (at 13226) by debbugs.gnu.org; 19 Dec 2012 15:57:20 +0000 Received: from localhost ([127.0.0.1]:50991 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlM1G-0007LH-TV for submit@debbugs.gnu.org; Wed, 19 Dec 2012 10:57:19 -0500 Received: from mout.gmx.net ([212.227.17.20]:60217) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlM1D-0007L7-NB for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 10:57:17 -0500 Received: from mailout-de.gmx.net ([10.1.76.27]) by mrigmx.server.lan (mrigmx001) with ESMTP (Nemesis) id 0Lgszg-1TI3LV3oT0-00oHkD for <13226@debbugs.gnu.org>; Wed, 19 Dec 2012 16:57:11 +0100 Received: (qmail invoked by alias); 19 Dec 2012 15:57:10 -0000 Received: from p57BB97BB.dip0.t-ipconnect.de (EHLO detlef.gmx.de) [87.187.151.187] by mail.gmx.net (mp027) with SMTP; 19 Dec 2012 16:57:10 +0100 X-Authenticated: #3708877 X-Provags-ID: V01U2FsdGVkX185ttkkLWY5LjSAlADX0VfaIZXDLn9u6JvlKDKAB3 zXWAqqzmSRY7Zn From: Michael Albinus To: Romain Francoise Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format References: <877goexm9e.fsf@gmx.de> <87licuytom.fsf@gmx.de> <87bodqm4ec.fsf@silenus.orebokech.com> Date: Wed, 19 Dec 2012 16:57:08 +0100 In-Reply-To: <87bodqm4ec.fsf@silenus.orebokech.com> (Romain Francoise's message of "Wed, 19 Dec 2012 16:46:03 +0100") Message-ID: <87k3seavcb.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Y-GMX-Trusted: 0 X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 13226 Cc: Stefan Monnier , 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) Romain Francoise writes: > Yes, we can use the `acl_equiv_mode' function for that. However, it's not > part of the standard API, it's a Linux-specific extension in libacl. So it > wouldn't be supported on all platforms. The same would happen for Tramp, if the remote platform is not GNU/Linux. In that case, we might tolerate that the basic ACLs are returned by file-acl as well. Best regards, Michael. From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 11:23:52 2012 Received: (at 13226) by debbugs.gnu.org; 19 Dec 2012 16:23:52 +0000 Received: from localhost ([127.0.0.1]:51007 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlMQx-0007wA-O6 for submit@debbugs.gnu.org; Wed, 19 Dec 2012 11:23:52 -0500 Received: from mtaout20.012.net.il ([80.179.55.166]:54212) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlMQu-0007vz-Tr for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 11:23:50 -0500 Received: from conversion-daemon.a-mtaout20.012.net.il by a-mtaout20.012.net.il (HyperSendmail v2007.08) id <0MFA00500DFW8Y00@a-mtaout20.012.net.il> for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 18:23:33 +0200 (IST) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout20.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0MFA004RSDJ8Z870@a-mtaout20.012.net.il>; Wed, 19 Dec 2012 18:23:32 +0200 (IST) Date: Wed, 19 Dec 2012 18:23:48 +0200 From: Eli Zaretskii Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format In-reply-to: <877goexm9e.fsf@gmx.de> X-012-Sender: halo1@inter.net.il To: Michael Albinus Message-id: <83y5gunh7v.fsf@gnu.org> References: <877goexm9e.fsf@gmx.de> X-Spam-Score: 1.5 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has identified this incoming email as possible spam. The original message has been attached to this so you can view it (if it isn't spam) or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: > From: Michael Albinus > Date: Wed, 19 Dec 2012 13:24:45 +0100 > > File ACLs have different formats on MS Windows and POSIX systems: > > --88--- > (file-acl "~/.emacs") > > "O:S-1-5-21-3955186872-1115707380-970145838-1000G:S-1-5-21-3955186872-1115707380-970145838-513D:(A; ; FA; ; ; SY)(A; ; FA; ; ; BA)(A; ; FA; ; ; S-1-5-21-3955186872-1115707380-970145838-1000)" > > (file-acl "/plink:albinus@ford:~/.emacs") > > "user::rwx > group::rwx > other::r-x > " > --88--- > > If one copies a file with POSIX ACLs to MS Windows, `set-file-acl' > raises an error. This shall be suppressed: [...] Content analysis details: (1.5 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at http://www.dnswl.org/, no trust [80.179.55.166 listed in list.dnswl.org] 0.7 SPF_SOFTFAIL SPF: sender does not match SPF record (softfail) 0.8 BAYES_50 BODY: Bayes spam probability is 40 to 60% [score: 0.5000] X-Debbugs-Envelope-To: 13226 Cc: 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list Reply-To: Eli Zaretskii List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: 0.2 (/) > From: Michael Albinus > Date: Wed, 19 Dec 2012 13:24:45 +0100 > > File ACLs have different formats on MS Windows and POSIX systems: > > --8<---------------cut here---------------start------------->8--- > (file-acl "~/.emacs") > > "O:S-1-5-21-3955186872-1115707380-970145838-1000G:S-1-5-21-3955186872-1115707380-970145838-513D:(A;;FA;;;SY)(A;;FA;;;BA)(A;;FA;;;S-1-5-21-3955186872-1115707380-970145838-1000)" > > (file-acl "/plink:albinus@ford:~/.emacs") > > "user::rwx > group::rwx > other::r-x > " > --8<---------------cut here---------------end--------------->8--- > > If one copies a file with POSIX ACLs to MS Windows, `set-file-acl' > raises an error. This shall be suppressed: I assume that you want the error suppressed on MS-Windows, is that right? (The Subject of the report says "shall check the ACL string", which the code already does; I guess you wanted to say "shall not" or some such.) If so, I don't think I agree, for several reasons. First, this is in no way Windows specific. In fact, when I added ACL support for MS-Windows, I didn't change a single line in set-file-acl, the code which tested for errors and signaled a file_error was already there. If I try this on GNU/Unix: (set-file-acl "foobar" "foo bar") I get the same error: Debugger entered--Lisp error: (file-error "Converting ACL" "invalid argument" "/home/e/eliz/foobar") set-file-acl("foobar" "foo bar") Which doesn't surprise me, since the code is not Windows specific, and acl_from_text is documented to be able to produce EINVAL when its string argument could not be converted to a valid ACL. Second, I think it would be wrong to remove the error-checking code from set-file-acl. That function is a primitive, so signaling an error when it cannot do its job is TRT; removing that would at best take away a valuable diagnostics, and at worst disable your last line of defense in some cases. After all, whoever wants to set the file's ACL to something does that for a reason; silently failing to do that would give them no chance to take some corrective action. OTOH, if an application, in this case Tramp, decides that it can ignore these errors in some cases, it should catch the error and ignore it. It shouldn't pass the baton to primitives, IMO. IOW, if you want this suppressed, I think you should do it inside the Tramp handler for copy-file. Finally, I question the whole idea of copying ACLs between machines, because they are inherently system-dependent, and even if both machines run the same system, a user "foo" and a group "bar" on both machines are likely to map to very different users and groups, at least on Posix hosts. (On Windows, the Security Identifiers, or SIDs, of the user and the group that are recorded in the ACL are universal, so this problem doesn't exist.) So I'd actually suggest that we explicitly refrain from doing this with remote files. From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 11:25:11 2012 Received: (at 13226) by debbugs.gnu.org; 19 Dec 2012 16:25:11 +0000 Received: from localhost ([127.0.0.1]:51011 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlMSF-0007yH-9c for submit@debbugs.gnu.org; Wed, 19 Dec 2012 11:25:11 -0500 Received: from mtaout20.012.net.il ([80.179.55.166]:54633) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlMSD-0007yA-M3 for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 11:25:10 -0500 Received: from conversion-daemon.a-mtaout20.012.net.il by a-mtaout20.012.net.il (HyperSendmail v2007.08) id <0MFA00500DKC9F00@a-mtaout20.012.net.il> for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 18:24:51 +0200 (IST) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout20.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0MFA0051TDLE9J00@a-mtaout20.012.net.il>; Wed, 19 Dec 2012 18:24:51 +0200 (IST) Date: Wed, 19 Dec 2012 18:25:07 +0200 From: Eli Zaretskii Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format In-reply-to: <8738z2150r.fsf@gmx.de> X-012-Sender: halo1@inter.net.il To: Michael Albinus Message-id: <83wqwenh5o.fsf@gnu.org> References: <877goexm9e.fsf@gmx.de> <8738z2150r.fsf@gmx.de> X-Spam-Score: 0.7 (/) X-Debbugs-Envelope-To: 13226 Cc: monnier@IRO.UMontreal.CA, 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list Reply-To: Eli Zaretskii List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.2 (-) > From: Michael Albinus > Date: Wed, 19 Dec 2012 15:38:12 +0100 > Cc: 13226@debbugs.gnu.org > > Stefan Monnier writes: > > > We should probably change file-acl so that its return value is tagged > > with the "acl-system" it uses. It could be a prefix like "w32:". > > Then we can change set-file-acl so that it can either try to perform > > conversion or signal a proper error that copy-file can handle. > > D'accord. Instead of a prefix, `file-acl' could return a cons cell like > '(w32 . "ACL-STRING"). What would that solve? You cannot trust the ACL string obtained on one machine to work on another anyway. Adding the above will just add unnecessary ballast that no one will ever be able to do anything useful with. From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 11:29:41 2012 Received: (at 13226) by debbugs.gnu.org; 19 Dec 2012 16:29:41 +0000 Received: from localhost ([127.0.0.1]:51015 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlMWb-00084G-4Y for submit@debbugs.gnu.org; Wed, 19 Dec 2012 11:29:41 -0500 Received: from mtaout21.012.net.il ([80.179.55.169]:60678) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlMWY-000847-MP for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 11:29:39 -0500 Received: from conversion-daemon.a-mtaout21.012.net.il by a-mtaout21.012.net.il (HyperSendmail v2007.08) id <0MFA00100CR4T800@a-mtaout21.012.net.il> for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 18:29:34 +0200 (IST) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout21.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0MFA001LVDTAXY00@a-mtaout21.012.net.il>; Wed, 19 Dec 2012 18:29:34 +0200 (IST) Date: Wed, 19 Dec 2012 18:29:50 +0200 From: Eli Zaretskii Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format In-reply-to: <87licuytom.fsf@gmx.de> X-012-Sender: halo1@inter.net.il To: Michael Albinus Message-id: <83vcbyngxt.fsf@gnu.org> References: <877goexm9e.fsf@gmx.de> <87licuytom.fsf@gmx.de> X-Spam-Score: 1.5 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has identified this incoming email as possible spam. The original message has been attached to this so you can view it (if it isn't spam) or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: > From: Michael Albinus > Date: Wed, 19 Dec 2012 15:59:05 +0100 > Cc: Romain Francoise , 13226@debbugs.gnu.org > > Stefan Monnier writes: > > >> (file-acl "/plink:albinus@ford:~/.emacs") > > > >> "user::rwx > >> group::rwx > >> other::r-x > >> " > > > > BTW, the above is 100% redundant with the file-modes info. Is there > > some way to get "the ACL data minus the part that's already in > > file-modes". E.g. in the above case it could return nil. > > The "getfacl" command has the "--skip-base" option: > > --88--- > ~> getfacl --access --omit-header ~/.emacs 2>/dev/null > user::rwx > group::rwx > other::r-x > ~> getfacl --access --omit-header --skip-base ~/.emacs > ~> > --88--- > > I could apply this. And it shall be possible in the native Ffile_acl > function as well. Romain? [...] Content analysis details: (1.5 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at http://www.dnswl.org/, no trust [80.179.55.169 listed in list.dnswl.org] 0.7 SPF_SOFTFAIL SPF: sender does not match SPF record (softfail) 0.8 BAYES_50 BODY: Bayes spam probability is 40 to 60% [score: 0.4463] X-Debbugs-Envelope-To: 13226 Cc: romain@orebokech.com, monnier@IRO.UMontreal.CA, 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list Reply-To: Eli Zaretskii List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: 0.7 (/) > From: Michael Albinus > Date: Wed, 19 Dec 2012 15:59:05 +0100 > Cc: Romain Francoise , 13226@debbugs.gnu.org > > Stefan Monnier writes: > > >> (file-acl "/plink:albinus@ford:~/.emacs") > > > >> "user::rwx > >> group::rwx > >> other::r-x > >> " > > > > BTW, the above is 100% redundant with the file-modes info. Is there > > some way to get "the ACL data minus the part that's already in > > file-modes". E.g. in the above case it could return nil. > > The "getfacl" command has the "--skip-base" option: > > --8<---------------cut here---------------start------------->8--- > ~> getfacl --access --omit-header ~/.emacs 2>/dev/null > user::rwx > group::rwx > other::r-x > ~> getfacl --access --omit-header --skip-base ~/.emacs > ~> > --8<---------------cut here---------------end--------------->8--- > > I could apply this. And it shall be possible in the native Ffile_acl > function as well. Romain? I don't think this is a good idea. You cannot do this portably. In particular, on MS-Windows this is impossible, because the set of access rights is much richer than on Posix, and there are various "inheritance" parts in the ACL that cannot be expressed as mode bits. Even on Posix, there's the "default" ACL which in practice affects the access rights, and is invisible in the "access" ACL. I think we are taking this feature out of proportions. It was supposed to allow copying extended attributes from file to file; for that, we don't need to care whether the ACL is trivial or not. But now we seem to start down the road of trying to interpret the ACL, which would need much more complex machinery. Do we really need that? From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 11:33:12 2012 Received: (at 13226) by debbugs.gnu.org; 19 Dec 2012 16:33:12 +0000 Received: from localhost ([127.0.0.1]:51019 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlMa0-00089y-0d for submit@debbugs.gnu.org; Wed, 19 Dec 2012 11:33:12 -0500 Received: from mtaout21.012.net.il ([80.179.55.169]:61164) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlMZy-00089r-Mc for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 11:33:11 -0500 Received: from conversion-daemon.a-mtaout21.012.net.il by a-mtaout21.012.net.il (HyperSendmail v2007.08) id <0MFA00100DV9YG00@a-mtaout21.012.net.il> for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 18:33:06 +0200 (IST) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout21.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0MFA001K4DZ5T260@a-mtaout21.012.net.il>; Wed, 19 Dec 2012 18:33:06 +0200 (IST) Date: Wed, 19 Dec 2012 18:33:22 +0200 From: Eli Zaretskii Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format In-reply-to: X-012-Sender: halo1@inter.net.il To: Stefan Monnier Message-id: <83txringrx.fsf@gnu.org> References: <877goexm9e.fsf@gmx.de> X-Spam-Score: 1.5 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has identified this incoming email as possible spam. The original message has been attached to this so you can view it (if it isn't spam) or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: > From: Stefan Monnier > Date: Wed, 19 Dec 2012 09:32:36 -0500 > Cc: 13226@debbugs.gnu.org > > > (file-acl "~/.emacs") > > > "O:S-1-5-21-3955186872-1115707380-970145838-1000G:S-1-5-21-3955186872-1115707380-970145838-513D:(A; ; FA; ; ; SY)(A; ; FA; ; ; BA)(A; ; FA; ; ; S-1-5-21-3955186872-1115707380-970145838-1000)" > > This looks thoroughly unportable. [...] Content analysis details: (1.5 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at http://www.dnswl.org/, no trust [80.179.55.169 listed in list.dnswl.org] 0.7 SPF_SOFTFAIL SPF: sender does not match SPF record (softfail) 0.8 BAYES_50 BODY: Bayes spam probability is 40 to 60% [score: 0.4680] X-Debbugs-Envelope-To: 13226 Cc: michael.albinus@gmx.de, 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list Reply-To: Eli Zaretskii List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: 0.2 (/) > From: Stefan Monnier > Date: Wed, 19 Dec 2012 09:32:36 -0500 > Cc: 13226@debbugs.gnu.org > > > (file-acl "~/.emacs") > > > "O:S-1-5-21-3955186872-1115707380-970145838-1000G:S-1-5-21-3955186872-1115707380-970145838-513D:(A;;FA;;;SY)(A;;FA;;;BA)(A;;FA;;;S-1-5-21-3955186872-1115707380-970145838-1000)" > > This looks thoroughly unportable. It is explicitly documented as platform-specific in the ELisp manual. Once again, the original design had a modest goal: allow to copy these attributes from file to file. Are you sure we want to extend that to a much more complex system which would allow a Lisp program to interpret those strings in a platform-independent manner? > We should probably change file-acl so that its return value is tagged > with the "acl-system" it uses. It could be a prefix like "w32:". As I wrote elsewhere, I don't see the rationale. > Then we can change set-file-acl so that it can either try to perform > conversion or signal a proper error that copy-file can handle. copy-file the primitive is not affected, it already does TRT with this scenario. copy-file handler for remote files should simply catch and ignore the errors, like the primitive does. From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 11:42:25 2012 Received: (at 13226) by debbugs.gnu.org; 19 Dec 2012 16:42:25 +0000 Received: from localhost ([127.0.0.1]:51047 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlMiv-0008N6-C0 for submit@debbugs.gnu.org; Wed, 19 Dec 2012 11:42:25 -0500 Received: from stringer.orebokech.com ([88.190.240.207]:35807) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlMis-0008Mx-SL for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 11:42:23 -0500 Received: from silenus.orebokech.com (silenus [192.168.1.4]) by stringer.orebokech.com (Postfix) with ESMTP id BB7791880327; Wed, 19 Dec 2012 17:42:18 +0100 (CET) Received: by silenus.orebokech.com (Postfix, from userid 1000) id 96F50A0141; Wed, 19 Dec 2012 17:42:18 +0100 (CET) From: Romain Francoise To: Eli Zaretskii Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format Organization: orebokech dot com References: <877goexm9e.fsf@gmx.de> <87licuytom.fsf@gmx.de> <83vcbyngxt.fsf@gnu.org> Date: Wed, 19 Dec 2012 17:42:18 +0100 In-Reply-To: <83vcbyngxt.fsf@gnu.org> (Eli Zaretskii's message of "Wed, 19 Dec 2012 18:29:50 +0200") Message-ID: <871uemm1sl.fsf@silenus.orebokech.com> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 13226 Cc: Michael Albinus , monnier@IRO.UMontreal.CA, 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) Eli Zaretskii writes: > I think we are taking this feature out of proportions. It was supposed > to allow copying extended attributes from file to file; for that, we > don't need to care whether the ACL is trivial or not. But now we seem to > start down the road of trying to interpret the ACL, which would need > much more complex machinery. Do we really need that? I agree with the sentiment, although it's not so much interpreting as just avoiding having to carry the ACL if it doesn't convey any interesting information... And at least on GNU/Linux it's not a lot of code: diff --git a/configure.ac b/configure.ac index 3c8be79..30740a1 100644 --- a/configure.ac +++ b/configure.ac @@ -2206,6 +2206,10 @@ if test "${with_acl}" = "yes"; then if test "$HAVE_POSIX_ACL" = yes; then AC_DEFINE(HAVE_POSIX_ACL, 1, [Define to 1 if using POSIX ACL support.]) LIBACL_LIBS=-lacl + OLD_LIBS="$LIBS" + LIBS="$LIBACL_LIBS $LIBS" + AC_CHECK_FUNCS(acl_equiv_mode) + LIBS="$OLD_LIBS" else AC_CHECK_FUNC(acl_set_file, HAVE_POSIX_ACL=yes, HAVE_POSIX_ACL=no) if test "$HAVE_POSIX_ACL" = yes; then diff --git a/src/fileio.c b/src/fileio.c index 26150a7..872e2be 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -2030,6 +2030,15 @@ entries (depending on how Emacs was built). */) acl = acl_get_fd (ifd); if (acl == NULL && errno != ENOTSUP) report_file_error ("Getting ACL", Fcons (file, Qnil)); +#ifdef HAVE_ACL_EQUIV_MODE + if (acl != NULL && acl_equiv_mode (acl, NULL) == 0) + { + /* All permissions can be represented by traditional file + permission bits, ignore ACL. */ + acl_free (acl); + acl = NULL; + } +#endif #endif } @@ -3042,6 +3051,16 @@ files if the file handler returns nil for the file's ACL entries. */) if (acl == NULL) return Qnil; +#ifdef HAVE_ACL_EQUIV_MODE + if (acl_equiv_mode (acl, NULL) == 0) + { + /* All permissions can be represented by traditional file + permission bits, ignore ACL. */ + acl_free (acl); + return Qnil; + } +#endif + str = acl_to_text (acl, NULL); if (str == NULL) { From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 11:55:36 2012 Received: (at 13226) by debbugs.gnu.org; 19 Dec 2012 16:55:36 +0000 Received: from localhost ([127.0.0.1]:51074 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlMvf-0000EU-VK for submit@debbugs.gnu.org; Wed, 19 Dec 2012 11:55:36 -0500 Received: from mout.gmx.net ([212.227.17.20]:65241) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlMvc-0000EL-LG for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 11:55:33 -0500 Received: from mailout-de.gmx.net ([10.1.76.12]) by mrigmx.server.lan (mrigmx001) with ESMTP (Nemesis) id 0MPb5D-1Tgfy50qcD-004mEY for <13226@debbugs.gnu.org>; Wed, 19 Dec 2012 17:55:28 +0100 Received: (qmail invoked by alias); 19 Dec 2012 16:55:27 -0000 Received: from p57BB97BB.dip0.t-ipconnect.de (EHLO detlef.gmx.de) [87.187.151.187] by mail.gmx.net (mp012) with SMTP; 19 Dec 2012 17:55:27 +0100 X-Authenticated: #3708877 X-Provags-ID: V01U2FsdGVkX1/QcyYDqirQY8BJaoOluaXWqVetd3M9HEjme/MGEj M1WkgEaSAhZhbL From: Michael Albinus To: Eli Zaretskii Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format References: <877goexm9e.fsf@gmx.de> <83y5gunh7v.fsf@gnu.org> Date: Wed, 19 Dec 2012 17:55:24 +0100 In-Reply-To: <83y5gunh7v.fsf@gnu.org> (Eli Zaretskii's message of "Wed, 19 Dec 2012 18:23:48 +0200") Message-ID: <87fw32asn7.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Y-GMX-Trusted: 0 X-Spam-Score: 0.8 (/) X-Debbugs-Envelope-To: 13226 Cc: 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -0.0 (/) Eli Zaretskii writes: > Finally, I question the whole idea of copying ACLs between machines, > because they are inherently system-dependent, and even if both > machines run the same system, a user "foo" and a group "bar" on both > machines are likely to map to very different users and groups, at > least on Posix hosts. Maybe. But a user "root" is comparable on different hosts. And copying ACLs between two different files on the same remote host sounds useful. What might be sufficient is that `set-file-acl' raises another error but `file-error' in case the operation fails. `file-error' would be good, if the file itself does not exist, and alike. Tramp could decide then what to do. Best regards, Michael. From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 11:56:33 2012 Received: (at 13226) by debbugs.gnu.org; 19 Dec 2012 16:56:33 +0000 Received: from localhost ([127.0.0.1]:51078 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlMwb-0000Fz-C5 for submit@debbugs.gnu.org; Wed, 19 Dec 2012 11:56:33 -0500 Received: from mtaout22.012.net.il ([80.179.55.172]:61672) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlMwZ-0000Fq-Dp for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 11:56:32 -0500 Received: from conversion-daemon.a-mtaout22.012.net.il by a-mtaout22.012.net.il (HyperSendmail v2007.08) id <0MFA00B00F02EX00@a-mtaout22.012.net.il> for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 18:55:59 +0200 (IST) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout22.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0MFA00B1HF1BF700@a-mtaout22.012.net.il>; Wed, 19 Dec 2012 18:55:59 +0200 (IST) Date: Wed, 19 Dec 2012 18:56:15 +0200 From: Eli Zaretskii Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format In-reply-to: <871uemm1sl.fsf@silenus.orebokech.com> X-012-Sender: halo1@inter.net.il To: Romain Francoise Message-id: <83sj72nfps.fsf@gnu.org> References: <877goexm9e.fsf@gmx.de> <87licuytom.fsf@gmx.de> <83vcbyngxt.fsf@gnu.org> <871uemm1sl.fsf@silenus.orebokech.com> X-Spam-Score: 0.7 (/) X-Debbugs-Envelope-To: 13226 Cc: michael.albinus@gmx.de, monnier@IRO.UMontreal.CA, 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list Reply-To: Eli Zaretskii List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.2 (-) > From: Romain Francoise > Cc: Michael Albinus , monnier@IRO.UMontreal.CA, 13226@debbugs.gnu.org > Date: Wed, 19 Dec 2012 17:42:18 +0100 > > Eli Zaretskii writes: > > > I think we are taking this feature out of proportions. It was supposed > > to allow copying extended attributes from file to file; for that, we > > don't need to care whether the ACL is trivial or not. But now we seem to > > start down the road of trying to interpret the ACL, which would need > > much more complex machinery. Do we really need that? > > I agree with the sentiment, although it's not so much interpreting as just > avoiding having to carry the ACL if it doesn't convey any interesting > information... Why avoid that in the first place? It won't do any harm. > And at least on GNU/Linux it's not a lot of code: I don't think this is worth supporting on a single platform. All it does is save a single call to acl_set_file, which is not expensive enough to avoid at the price of yet another system-dependent code snippet. From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 12:44:45 2012 Received: (at 13226) by debbugs.gnu.org; 19 Dec 2012 17:44:45 +0000 Received: from localhost ([127.0.0.1]:51138 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlNhE-0002Lr-Ix for submit@debbugs.gnu.org; Wed, 19 Dec 2012 12:44:45 -0500 Received: from mout.gmx.net ([212.227.15.19]:50180) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlNhA-0002Lh-GL for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 12:44:41 -0500 Received: from mailout-de.gmx.net ([10.1.76.71]) by mrigmx.server.lan (mrigmx001) with ESMTP (Nemesis) id 0Ld2ys-1TKoNv3W0u-00iDdt for <13226@debbugs.gnu.org>; Wed, 19 Dec 2012 18:44:35 +0100 Received: (qmail invoked by alias); 19 Dec 2012 17:44:35 -0000 Received: from p57BB97BB.dip0.t-ipconnect.de (EHLO detlef.gmx.de) [87.187.151.187] by mail.gmx.net (mp071) with SMTP; 19 Dec 2012 18:44:35 +0100 X-Authenticated: #3708877 X-Provags-ID: V01U2FsdGVkX1/BWxh9/j7BC5ViYLJtbL/jo2aWIXloMUjWtAo65v FOnIOE17NdDBWF From: Michael Albinus To: Eli Zaretskii Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format References: <877goexm9e.fsf@gmx.de> <87licuytom.fsf@gmx.de> <83vcbyngxt.fsf@gnu.org> <871uemm1sl.fsf@silenus.orebokech.com> <83sj72nfps.fsf@gnu.org> Date: Wed, 19 Dec 2012 18:44:29 +0100 In-Reply-To: <83sj72nfps.fsf@gnu.org> (Eli Zaretskii's message of "Wed, 19 Dec 2012 18:56:15 +0200") Message-ID: <87bodqaqde.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Y-GMX-Trusted: 0 X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 13226 Cc: Romain Francoise , monnier@IRO.UMontreal.CA, 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) Eli Zaretskii writes: > I don't think this is worth supporting on a single platform. All it > does is save a single call to acl_set_file, which is not expensive > enough to avoid at the price of yet another system-dependent code > snippet. In Tramp, it is a little bit more expensive. And as Romain already said, it would work only on GNU/Linux systems. If we do it with a single line of code, and if we don't expect basic attributes to be filtered out mandatory, I don't see how it could harm. From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 13:36:50 2012 Received: (at 13226) by debbugs.gnu.org; 19 Dec 2012 18:36:50 +0000 Received: from localhost ([127.0.0.1]:51176 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlOVe-0003ZN-6A for submit@debbugs.gnu.org; Wed, 19 Dec 2012 13:36:50 -0500 Received: from ironport2-out.teksavvy.com ([206.248.154.182]:49068) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlOVc-0003ZF-7H for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 13:36:48 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ai0FAG6Zu09FxLDj/2dsb2JhbABEsEiDSYEIghUBAQQBViMFCws0EhQYDRABE4gcBboJkEQDiEKacYFYgwc X-IronPort-AV: E=Sophos;i="4.75,637,1330923600"; d="scan'208";a="210364028" Received: from 69-196-176-227.dsl.teksavvy.com (HELO pastel.home) ([69.196.176.227]) by ironport2-out.teksavvy.com with ESMTP/TLS/ADH-AES256-SHA; 19 Dec 2012 13:36:44 -0500 Received: by pastel.home (Postfix, from userid 20848) id F0DF74E0D7; Wed, 19 Dec 2012 13:36:43 -0500 (EST) From: Stefan Monnier To: Eli Zaretskii Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format Message-ID: References: <877goexm9e.fsf@gmx.de> <87licuytom.fsf@gmx.de> <83vcbyngxt.fsf@gnu.org> Date: Wed, 19 Dec 2012 13:36:43 -0500 In-Reply-To: <83vcbyngxt.fsf@gnu.org> (Eli Zaretskii's message of "Wed, 19 Dec 2012 18:29:50 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.8 (/) X-Debbugs-Envelope-To: 13226 Cc: romain@orebokech.com, Michael Albinus , 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -0.5 (/) > I think we are taking this feature out of proportions. It was > supposed to allow copying extended attributes from file to file; for > that, we don't need to care whether the ACL is trivial or not. But > now we seem to start down the road of trying to interpret the ACL, > which would need much more complex machinery. That makes sense, yes. BTW, I don't think we should document that file-acl returns a string. The representation should be documented as undocumented and prone to change (ideally opaque). Stefan From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 16:18:22 2012 Received: (at 13226) by debbugs.gnu.org; 19 Dec 2012 21:18:22 +0000 Received: from localhost ([127.0.0.1]:51279 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlR1x-0007Q1-N8 for submit@debbugs.gnu.org; Wed, 19 Dec 2012 16:18:21 -0500 Received: from mtaout20.012.net.il ([80.179.55.166]:38754) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlR1t-0007Pp-DS for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 16:18:20 -0500 Received: from conversion-daemon.a-mtaout20.012.net.il by a-mtaout20.012.net.il (HyperSendmail v2007.08) id <0MFA00800R5H0000@a-mtaout20.012.net.il> for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 23:17:50 +0200 (IST) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout20.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0MFA0079HR5PVZ70@a-mtaout20.012.net.il>; Wed, 19 Dec 2012 23:17:50 +0200 (IST) Date: Wed, 19 Dec 2012 23:18:06 +0200 From: Eli Zaretskii Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format In-reply-to: X-012-Sender: halo1@inter.net.il To: Stefan Monnier Message-id: <83obhpoi5t.fsf@gnu.org> References: <877goexm9e.fsf@gmx.de> <87licuytom.fsf@gmx.de> <83vcbyngxt.fsf@gnu.org> X-Spam-Score: 0.7 (/) X-Debbugs-Envelope-To: 13226 Cc: romain@orebokech.com, michael.albinus@gmx.de, 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list Reply-To: Eli Zaretskii List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.2 (-) > From: Stefan Monnier > Cc: Michael Albinus , romain@orebokech.com, 13226@debbugs.gnu.org > Date: Wed, 19 Dec 2012 13:36:43 -0500 > > I don't think we should document that file-acl returns a string. > The representation should be documented as undocumented and prone to > change (ideally opaque). Currently, it could be either a string or nil. The latter means "no ACL". Do you want to undocument both of these possibilities? It sounds too radical to me. From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 19 19:53:16 2012 Received: (at 13226) by debbugs.gnu.org; 20 Dec 2012 00:53:16 +0000 Received: from localhost ([127.0.0.1]:51415 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlUNw-0004GA-0Y for submit@debbugs.gnu.org; Wed, 19 Dec 2012 19:53:16 -0500 Received: from ironport2-out.teksavvy.com ([206.248.154.182]:45714) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TlUNv-0004G4-1z for 13226@debbugs.gnu.org; Wed, 19 Dec 2012 19:53:15 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ai0FAG6Zu09FxLDj/2dsb2JhbABEsEiDSYEIghUBAQQBViMFCws0EhQYDRABE4gcBboJkEQDiEKacYFYgwc X-IronPort-AV: E=Sophos;i="4.75,637,1330923600"; d="scan'208";a="210390406" Received: from 69-196-176-227.dsl.teksavvy.com (HELO pastel.home) ([69.196.176.227]) by ironport2-out.teksavvy.com with ESMTP/TLS/ADH-AES256-SHA; 19 Dec 2012 19:53:09 -0500 Received: by pastel.home (Postfix, from userid 20848) id 6830B4E0D7; Wed, 19 Dec 2012 19:53:08 -0500 (EST) From: Stefan Monnier To: Eli Zaretskii Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format Message-ID: References: <877goexm9e.fsf@gmx.de> <87licuytom.fsf@gmx.de> <83vcbyngxt.fsf@gnu.org> <83obhpoi5t.fsf@gnu.org> Date: Wed, 19 Dec 2012 19:53:08 -0500 In-Reply-To: <83obhpoi5t.fsf@gnu.org> (Eli Zaretskii's message of "Wed, 19 Dec 2012 23:18:06 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 13226 Cc: romain@orebokech.com, michael.albinus@gmx.de, 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) > Currently, it could be either a string or nil. The latter means "no > ACL". Do you want to undocument both of these possibilities? It > sounds too radical to me. Of course nil is perfectly fine, but the string one shouldn't be documented (and ideally, the it shouldn't be a string but an opaque object). Stefan From debbugs-submit-bounces@debbugs.gnu.org Sat Dec 22 09:20:27 2012 Received: (at 13226) by debbugs.gnu.org; 22 Dec 2012 14:20:27 +0000 Received: from localhost ([127.0.0.1]:55144 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TmPw9-0001uI-HN for submit@debbugs.gnu.org; Sat, 22 Dec 2012 09:20:27 -0500 Received: from mtaout21.012.net.il ([80.179.55.169]:39032) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TmPw3-0001u3-4X for 13226@debbugs.gnu.org; Sat, 22 Dec 2012 09:20:22 -0500 Received: from conversion-daemon.a-mtaout21.012.net.il by a-mtaout21.012.net.il (HyperSendmail v2007.08) id <0MFF00L00REZAU00@a-mtaout21.012.net.il> for 13226@debbugs.gnu.org; Sat, 22 Dec 2012 16:19:58 +0200 (IST) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout21.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0MFF00LVNRT97950@a-mtaout21.012.net.il>; Sat, 22 Dec 2012 16:19:58 +0200 (IST) Date: Sat, 22 Dec 2012 16:19:47 +0200 From: Eli Zaretskii Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format In-reply-to: X-012-Sender: halo1@inter.net.il To: Stefan Monnier Message-id: <83y5gqp3ss.fsf@gnu.org> References: <877goexm9e.fsf@gmx.de> <87licuytom.fsf@gmx.de> <83vcbyngxt.fsf@gnu.org> <83obhpoi5t.fsf@gnu.org> X-Spam-Score: 0.7 (/) X-Debbugs-Envelope-To: 13226 Cc: romain@orebokech.com, michael.albinus@gmx.de, 13226@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list Reply-To: Eli Zaretskii List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.2 (-) > From: Stefan Monnier > Cc: michael.albinus@gmx.de, romain@orebokech.com, 13226@debbugs.gnu.org > Date: Wed, 19 Dec 2012 19:53:08 -0500 > > > Currently, it could be either a string or nil. The latter means "no > > ACL". Do you want to undocument both of these possibilities? It > > sounds too radical to me. > > Of course nil is perfectly fine, but the string one shouldn't > be documented (and ideally, the it shouldn't be a string but an opaque > object). Done (the documentation part) in trunk revision 111296. From debbugs-submit-bounces@debbugs.gnu.org Fri Jan 04 08:20:47 2013 Received: (at 13226-done) by debbugs.gnu.org; 4 Jan 2013 13:20:47 +0000 Received: from localhost ([127.0.0.1]:42822 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Tr7CY-0007XD-Ip for submit@debbugs.gnu.org; Fri, 04 Jan 2013 08:20:47 -0500 Received: from mout.gmx.net ([212.227.15.18]:64894) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Tr7CX-0007X4-Dv for 13226-done@debbugs.gnu.org; Fri, 04 Jan 2013 08:20:46 -0500 Received: from mailout-de.gmx.net ([10.1.76.32]) by mrigmx.server.lan (mrigmx001) with ESMTP (Nemesis) id 0MTMoj-1TPIfa3H9D-00SLVG for <13226-done@debbugs.gnu.org>; Fri, 04 Jan 2013 14:20:37 +0100 Received: (qmail invoked by alias); 04 Jan 2013 13:20:37 -0000 Received: from p57BB9985.dip0.t-ipconnect.de (EHLO detlef.gmx.de) [87.187.153.133] by mail.gmx.net (mp032) with SMTP; 04 Jan 2013 14:20:37 +0100 X-Authenticated: #3708877 X-Provags-ID: V01U2FsdGVkX19KgV03CHFK7ezfHMfoUID4PbysfLoYsODt/JbfXV Rzkbypjhoa4NX/ From: Michael Albinus To: Eli Zaretskii Subject: Re: bug#13226: 24.3.50; set-file-acl on MS Windows shall check ACL string format References: <877goexm9e.fsf@gmx.de> <87licuytom.fsf@gmx.de> <83vcbyngxt.fsf@gnu.org> <83obhpoi5t.fsf@gnu.org> <83y5gqp3ss.fsf@gnu.org> Date: Fri, 04 Jan 2013 14:20:31 +0100 In-Reply-To: <83y5gqp3ss.fsf@gnu.org> (Eli Zaretskii's message of "Sat, 22 Dec 2012 16:19:47 +0200") Message-ID: <87mwwpdqzk.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Y-GMX-Trusted: 0 X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 13226-done Cc: romain@orebokech.com, Stefan Monnier , 13226-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) Tramp has implemented to return nil if `set-file-acl' could not set the attributes. Furthermore, the call of `set-file-extended-attributes' has been protected in Tramp. Closing the bug. From unknown Fri Aug 15 03:57:07 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Sat, 02 Feb 2013 12:24:03 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator