delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2014/08/27/04:43:36

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=ju4PtcjyznmIOttlazKR21KlEaPOA4ZdKi8FrforAmvXW3bIxiWDJ
oZQd++0+fHIXHV91739wUwIC3pqIrFS7vC7fsJgRAaaItYiW+DF12t8nytv0V3On
FT0Cd9MD6SDz68HoroM+r90eEHdkUp2UxBWmf5Y9mkEmc0+BygLsiQ=
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=AHgtUHojDdHHiknr2ZGt1G/nu18=; b=abNqKOQqbU2YH6HgfOwIGLIlROoe
yxlOcTiC5Gcm+oYn7CYrEHU/xN9/kCmJgoEFIsJnQ3iQQTy7qmdTv4fphDhG7lad
Uu3e+hqKvOICt9JrNOyRUG6jkpQepFTJ2S7mJ5BWbkTai3NAJDOcw6zYdZVxzZTu
yCKB48lp5dGihx0=
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: Wed, 27 Aug 2014 10:42:45 +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: <20140827084245.GD20700@calimero.vinschen.de>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <20140805184047 DOT GC13601 AT calimero DOT vinschen DOT de> <53E3685B DOT 8050508 AT cornell DOT edu> <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>
MIME-Version: 1.0
In-Reply-To: <53FD0662.5050208@cornell.edu>
User-Agent: Mutt/1.5.23 (2014-03-12)

--gj572EiMnwbLXET9
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Aug 26 18:12, Ken Brown wrote:
> On 8/26/2014 2:55 PM, Achim Gratz wrote:
> >Ken Brown writes:
> >>It looks like my idea is going to work, but it needs testing to make
> >>sure I've implemented it correctly.  If anyone is willing to test it,
> >>you can download emacs-24.3.93-2 from my personal Cygwin repository:
> >>
> >>   http://sanibeltranquility.com/cygwin/
> >>
> >>Instructions can be found at that URL.
> >
> >I've switched to this version today.
> >
> >I've noticed that two bugs are still present at least in the emacs-w32
> >version:
> >
> >1) When showing the Windows desktop with Win-D and then restoring it
> >(including Emacs) with Win-D again, the cursor becomes a hollow
> >rectangle that doesn't blink.  To get the normal cursor behaviour back
> >you have to minimize and restore the Emacs window in the "normal" way.
>=20
> This one has nothing to do with emacs.  I see the same thing in mintty, w=
ith
> just a shell prompt (bash in my case).
>=20
> >2) Files that have no POSIX permissions (filemode 0000) and where access
> >is granted via ACL only get always opened as "read-only" and you have to
> >C-x C-q them before saving.  It appears that this is Cygwin specific
> >since on Linux the same version copes with that situation correctly
> >(however, the mask bits in the ACL get displayed in the group portion of
> >the file mode, which I've never seen happen on Cygwin, so this may be
> >something that Cygwin needs to do -- maybe that'd even solve the
> >problems that Perl has in the same situation).
>=20
> AFAICT, emacs decides whether the file is writable via the system call
> faccessat.  (See the function 'check_writable' in src/fileio.c.)  This is
> not Cygwin specific.  So faccessat must be returning failure in the scena=
rio
> you described.  I don't know if that's a Cygwin bug or not.

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:

- Fetch file's security descriptor
- Create process impersonation token.
- Call NtAccessCheck
- If NtAccessCheck returns "not allowed", check for backup/restore
  privileges via NtPrivilegeCheck.

In "noacl" mode or on filesystems not supporting ACLs, access uses the
st_mode flags from stat() to figure out the permissions.

The relevant parts of the implementation are the check_file_access and
subsequently called check_access functions in security.cc.

If you see a bug there, please let me know.

> BTW, emacs on Cygwin doesn't directly check ACLs, because the relevant
> configure test fails.

Works for vim.  Does the Emacs configure test only check for POSIX
ACL functions and not for Solaris ACL functions, by any chance?


Corinna

--=20
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

--gj572EiMnwbLXET9
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAEBAgAGBQJT/ZoFAAoJEPU2Bp2uRE+gQX4QAIWzVtnsRbsGMdyhdSdQkQTP
teLz+YWFYVBzS4vC/DLZmNSyuMLCOZH2qFHutafkPu3KUFztrh2/hgTEV2kI3nU9
UR/5/VgOCU8gfUCGfnSy35E/8TI2czCjn6CAhEALyvZ/IwikUZS1gkSdCDDyxIeb
mDLSuorhMW30KAd4nPbOQHibIP3dmatK0MPBS77Cj1t8FP1eN4FwMVLQ6/HR+YT4
UPcQrZVqajmIq9R5oCEItbU+pMOUa5DYRfUb1wDPDHaznOO5RDbTEVjO47onA9ff
mkUWP9O2Ksw6nKRN62sH5gQ2E+xfUGE98L5d3IQdNZjBbdSf/ANnpKAQ5K9vPnI7
h/Zq7s80YuN4GWT3yKwte57bDtjkCWRHMoRoxAmix/8FGh1KrXMLixJcJ06iHbqB
JdMf3xptg5wf/6blljmpgz2DML8m2uiRnFgr6iyKmQ3sOUhS9XgDsa7Vxq7DWQS2
Da7lRVHAyIRLWS/UMkdI1L74lnCaBujWC2tVbuZHh6pu2m0RLYIaAjO4G3uXIx42
0GOMKqU13Lr5Mg3dJgQGjOhGgVVuUv5ssaq+DpUpqCu7AGK4h6jSLdLIsC4csDkq
YjYmQKO9zQq+4/lD0OdL2B/vZZYgUq24U1db6J2BJU52Yf+F9qXTtGLbmyOjMIe9
Mv4eKeULHuW8Rv70pI9R
=F4vN
-----END PGP SIGNATURE-----

--gj572EiMnwbLXET9--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019