delorie.com/archives/browse.cgi | search |
X-Recipient: | archive-cygwin AT delorie DOT com |
DomainKey-Signature: | a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id |
:list-unsubscribe:list-subscribe:list-archive:list-post | |
:list-help:sender:date:from:to:subject:message-id:reply-to | |
:references:mime-version:content-type:in-reply-to; q=dns; s= | |
default; b=e7y7X7jheun9Pj4SXnxWaJiDFXieuKr5nlxNnoBM2EXMEk6RUpj7A | |
g1psh/56LwVkXasH3BP6pdbUU9sRuG3ynVzXy0SYojBDlNDbbIM8GG0NrNoM04UD | |
lzvgenGoXv3kh0Tpi5m8emdPK3ZIFTHplDxDOP04Z08kG5t01/EbZA= | |
DKIM-Signature: | v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id |
:list-unsubscribe:list-subscribe:list-archive:list-post | |
:list-help:sender:date:from:to:subject:message-id:reply-to | |
:references:mime-version:content-type:in-reply-to; s=default; | |
bh=6bj+TScpPks17XVuzONYuD2n3Nw=; b=DeAoQUiatTBpbFptCAjx12WYzcAY | |
niY56o+kCOoabgzyvR/f359LLeSMte8Fn0aaeAwmfsPlIRKBFGrCx99hOlJ8n0Fx | |
2XkgDFE9j61IHYSg/1HavmHjIooTAnBni7aeUrOLOFYOKWrjaz5oMkW72zJjiJcg | |
AqH5tB8NNZPvwWQ= | |
Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
List-Id: | <cygwin.cygwin.com> |
List-Subscribe: | <mailto:cygwin-subscribe AT cygwin DOT com> |
List-Archive: | <http://sourceware.org/ml/cygwin/> |
List-Post: | <mailto:cygwin AT cygwin DOT com> |
List-Help: | <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs> |
Sender: | cygwin-owner AT cygwin DOT com |
Mail-Followup-To: | cygwin AT cygwin DOT com |
Delivered-To: | mailing list cygwin AT cygwin DOT com |
Authentication-Results: | sourceware.org; auth=none |
X-Virus-Found: | No |
X-Spam-SWARE-Status: | No, score=-5.9 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.2 |
X-HELO: | calimero.vinschen.de |
Date: | Thu, 28 Aug 2014 12:01:12 +0200 |
From: | Corinna Vinschen <corinna-cygwin AT cygwin DOT com> |
To: | cygwin AT cygwin DOT com |
Subject: | Re: (call-process ...) hangs in emacs |
Message-ID: | <20140828100112.GQ20700@calimero.vinschen.de> |
Reply-To: | cygwin AT cygwin DOT com |
Mail-Followup-To: | cygwin AT cygwin DOT com |
References: | <53E39BAD DOT 3010004 AT redhat DOT com> <53E3CB46 DOT 1020909 AT cornell DOT edu> <53E3F2AE DOT 7030608 AT redhat DOT com> <53E4D01B DOT 9010005 AT cornell DOT edu> <53F1F154 DOT 1020702 AT cornell DOT edu> <53FB87DC DOT 2050908 AT cornell DOT edu> <87wq9v9j2y DOT fsf AT Rainer DOT invalid> <53FD0662 DOT 5050208 AT cornell DOT edu> <20140827084245 DOT GD20700 AT calimero DOT vinschen DOT de> <17910052714 DOT 20140828010203 AT yandex DOT ru> |
MIME-Version: | 1.0 |
In-Reply-To: | <17910052714.20140828010203@yandex.ru> |
User-Agent: | Mutt/1.5.23 (2014-03-12) |
--8WA4ILJSyYAmUzbY Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Aug 28 01:02, Andrey Repin wrote: > Greetings, Corinna Vinschen! >=20 > > faccessat/access/eaccess don't try to be intelligent by themselves. > > Rather they just call a Windows function if the filesystem is mounted > > with "acl" mount flags: >=20 > > - Fetch file's security descriptor > > - Create process impersonation token. > > - Call NtAccessCheck > > - If NtAccessCheck returns "not allowed", check for backup/restore > > privileges via NtPrivilegeCheck. >=20 > > In "noacl" mode or on filesystems not supporting ACLs, access uses the > > st_mode flags from stat() to figure out the permissions. >=20 > I'm not very much into Cygwin internals, so beg pardon if I got something > wrong here... But reading this makes my internal sanity checker go into r= ed > alarm state. >=20 > Here's why: >=20 > When Cygwin mount a filesystem with 'acl' flag set, it mangles current AC= L's > set on the files to produce something that can be understood as basic POS= IX > 'ugly'...erm, 'ugo' permissions. Behavior least desirable in many cases. > You say, it will then use native functions to determine access rights... = No > wonder they will work, since you already mangled them to suit your needs. >=20 > When Cygwin mount a filesystem with 'noacl' flag, thus let OS use true AC= L's > (a feature Windows implemented surprisingly fast, while *NIX was only > proposing it... for far too long without any result in sight), it is then > followed by some magic and guesswork on Cygwin's end to find out access > rights. >=20 > If you ask me, something isn't quite right here. Or something is missing. It's what "acl" means on Cygwin. "acl" means that Windowsd ACLs are used and permissions are handled and converted to and from POSIX permissions. "noacl" means, Cygwin ignores all ACLs and fakes ownership and POSIX permissions only based only on filetype and DOS R/O attribute, as it has to on filesystems not supporting ACLs, like FAT/FAT32. Corinna --=20 Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Maintainer cygwin AT cygwin DOT com Red Hat --8WA4ILJSyYAmUzbY Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAEBAgAGBQJT/v3oAAoJEPU2Bp2uRE+gOJwP/i8KGU2RCsHE69ETRE4C9ir3 c3LwVBHW6DUVQ+1TqQp0De0qBM+U8dZ9j2kMcfmtNHXvam0Y5sdK5pZoXn1Kvxbn Xo7mLelfc8Ik1NpmL2y5KERozlFOZRllcfgMRr6ZiYzneABSqfr6pOPh9qRm6X+L hui/So3v3eRVECKiZRUEMCbPty0AlZljRLix25IRgv3reQ4Tw9ZAEjnvWZmUe7L9 AKqf2kau1quH5INZrc5hXgwBRC86j17SJ5TVKwXeuio+EjMEWg+X6lNAh3M/+eC0 RIxtMvJ9HXLUmq7Q6BAH0mYHajeGo4L5Fb61dj0jvfoLjLtqHwlAV1dsR9Fsk6vn ws5GBRtUj9PulejKqlOd2SOmsguqiXA9HdEfx/+o9mDIV5R6xXnDkjLp6dibIcyK ZI9DXWQEvX6qnFmtxU0HqUcE1IxnA8D/bXiXBZU/z0fmOdoc1dGjJJlVlMwgDJer j8DOcUEn+hl7zXfoac3n4hCxY49N8m7sUY5Jnr6XJ4ZpfnYJkc2bh4RhLAOOtWfK +Hw6FDFeZ1jdegQJiIVJJLsOhZbKjdOM/jj4HuCfL+pAMa2fYHrl+CINg9n0UqGB vYg+Z5rz10t7dHgp9oNAMoACSVwiZTchbgNDtL+ugwoywIp9/weMfRM9z6RevTqk 0CNn+3p9hjsPl4Qltp7M =81Xu -----END PGP SIGNATURE----- --8WA4ILJSyYAmUzbY--
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |