public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
From: Corinna Vinschen <corinna-cygwin@cygwin.com>
To: cygwin@cygwin.com
Subject: Re: [TESTERS needed] New POSIX permission handling
Date: Sun, 12 Apr 2015 08:22:00 -0000	[thread overview]
Message-ID: <20150412082212.GL7343@calimero.vinschen.de> (raw)
In-Reply-To: <55294B35.8050708@raelity.com>

[-- Attachment #1: Type: text/plain, Size: 1704 bytes --]

On Apr 11 09:26, Ernie Rael wrote:
> I'm primarily a lurker, reading this list hoping things soak in a bit. So I
> may be off base on this.
> 
> In the table below, describing "NULL DENY access mask", looks like there's a
> typo concerning read/execute. (of course it might just be a windows mapping
> peculiarity that I really didn't want to know about ;-)

Hey, cool, somebody noticed :)
And since you asked, you'll get to know, whether you want or not ;)

> >The following bits in the NULL DENY access mask are used:
> >
> >   Windows access    <->   POSIX access
> >   --------------          ------------
> >   FILE_READ_DATA          S_ISVTX
> >   FILE_WRITE_DATA         S_ISGID
> >   FILE_APPEND_DATA        S_ISUID
> >
> >   FILE_READ_EA            MASK S_IXOTH  (POSIX execute perms)
> >   FILE_WRITE_EA           MASK S_IWOTH  (POSIX write perms)
> >   FILE_EXECUTE            MASK S_IROTH  (POSIX read perms)
> 
> Are read and execute swapped intentionally in the above?

Yes, indeed.  since the NULL access mask is not needed for actual
permission checking by Windows, we can use the bit as they fit our
needs.  The reason for using them in this order are their bit values.

  FILE_READ_EA  == 0x08       S_IXOTH == 0x01
  FILE_WRITE_EA == 0x10       S_IWOTH == 0x02
  FILE_EXECUTE  == 0x20       S_IROTH == 0x04

To convert from Windows to POSIX and vice versa, a simple shift
operation is sufficient.  Reordering just to fit the symbolic name
would complicate the conversion unnecessarily.


Corinna

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

[-- Attachment #2: Type: application/pgp-signature, Size: 819 bytes --]

  reply	other threads:[~2015-04-12  8:22 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-10 10:07 Corinna Vinschen
2015-04-10 21:13 ` Warren Young
2015-04-11  9:35   ` Corinna Vinschen
2015-04-11  0:00 ` Steven Penny
2015-04-11  9:40   ` Corinna Vinschen
2015-04-11 10:07     ` Corinna Vinschen
2015-04-11 16:26       ` Ernie Rael
2015-04-12  8:22         ` Corinna Vinschen [this message]
2015-04-11 10:23     ` Corinna Vinschen
2015-04-11 10:47     ` Steven Penny
2015-04-11 14:30       ` Corinna Vinschen
2015-04-11 16:05       ` Andrey Repin
2015-04-12 17:37         ` Adam Dinwoodie
2015-05-16  2:39   ` Steven Penny
2015-05-17  7:44     ` Duncan Roe
2015-05-19  7:52     ` Jiří Engelthaler
2015-04-11  8:47 ` Achim Gratz
2015-04-11  9:02   ` David Macek
2015-04-11  9:08     ` Achim Gratz
2015-04-11  9:51       ` David Macek
2015-04-11 11:51         ` Achim Gratz
2015-04-11 10:00     ` Corinna Vinschen
2015-04-11 12:36       ` David Macek
2015-04-11 14:31         ` Corinna Vinschen
2015-04-11  9:44   ` Corinna Vinschen
2015-04-11 11:11     ` Bryan Berns
2015-04-11 14:32       ` Corinna Vinschen
2015-04-11 16:05   ` Andrey Repin
2015-04-11 17:11 ` donmez
2015-04-12  8:35   ` Corinna Vinschen
2015-04-12 13:21     ` İsmail Dönmez
2015-04-12 14:25       ` Corinna Vinschen
2015-04-15 15:42         ` Corinna Vinschen
2015-04-16 10:20           ` Ismail Donmez
2015-04-16 11:03             ` Corinna Vinschen
2015-04-16 16:09               ` Ismail Donmez
2015-04-16 16:24                 ` Corinna Vinschen
2015-04-16 16:48                   ` Ismail Donmez
2015-04-17  7:30                     ` Corinna Vinschen
2015-04-17 10:06                       ` Corinna Vinschen
2015-04-17 15:17                         ` Ismail Donmez
2015-04-17 16:22                           ` Corinna Vinschen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150412082212.GL7343@calimero.vinschen.de \
    --to=corinna-cygwin@cygwin.com \
    --cc=cygwin@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).