This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [ANNOUNCEMENT] TEST RELEASE: Cygwin 1.7.33-0.1

On Oct 24 17:35, Luke Kendall wrote:
> On 24/10/14 02:43, Corinna Vinschen wrote:
> > On Oct 22 20:57, Tom Schutter wrote:
> >> On Wed 2014-10-22 11:23, Corinna Vinschen wrote:
> >>> For your convenience I wrote new documentation.  Since this is a TEST
> >>> prerelease, the new documentation is not part of the official docs yet.
> >>> Rather have a look at
> >>>
> >>>
> >> "machine is no domain member" -> "machine is not a domain member"
> > Thanks, I applied this as patch.
> >
> >
> > Corinna
> >
> Obviously, all the URLs for the section called âMapping Windows accounts to
> POSIX accountsâ will become correct when the file is renamed from
> preliminary-ntsec.html to ntsec.html.  But in the section where you talk
> about the 'problem with the definition of a "correct" ACL which disallows
> mapping of certain POSIX permissions cleanly', previously the URL referenced
> immediately after that text appeared as 'the section called "The POSIX
> permission mapping leak" ', but now it's yet another reference to 'the
> section called âMapping Windows accounts to POSIX accountsâ'
> -- Is that a mistake?

Yes, it is.  Thanks for catching.  It should point to the chapter
"File permissions".

> Other suggestions/notes:
> 'One of them is that the idea to have always small files is flawed.'
> -->
> 'One of them is that the idea that these files will always be small, is
> flawed.'
> 'so we rely on some mechanism to convert SIDs to uid/gid values and vice
> versa'
> -->
> 'so we need a mechanism to convert SIDs to uid/gid values and vice versa'
> 'It allows [us] to generate uid/gid values '
> 'Read /etc/passwd and /etc/group files [if they exist], just as in the olden
> days'
> 'If [the passwd or group] files are present, they will be scanned on demand'
> 'Logon SIDs: The own[huh?  owner's?  user's?] LogonSid is converted'

The logon SID of the current session.  I rephrased this now to:

"Logon SIDs: The LogonSid of the current user's session is converted ..."

> 'if the AD administrators chose an unreasonable[unreasonably] small'
> 'which keeps an analogue value of the trustPosixOffset'
> -->
> 'which keeps an analog of the trustPosixOffset'

British vs. American English... ;)

> 'how do we uniquely differ[distinguish] between them by name?'
> 'very costly (read: slow) sea[r]ch operations'
> (By the way, if you want to belong to multiple groups, is the only way to do
> this via an /etc/group file?

You mean via the gr_mem field?  That's not evaluated anymore.  Group
membership is stored in SAM or AD.

> Also, it occurs to me that another way to
> store the unix home dir, etc., would be a 'partial passwd' file that omitted
> the fields for the parts supplied easily by AD (SID, GID)?  That's just an
> idle thought.)

But that means you have to read the files again.  Thre's not much of an
advantage to having full passwd and group files then for the user, nor
for Cygwin itself.  Plus, you have to implement two different reading
algos per file type.

> 'Cygwin process tree, which[ever?] first process'

Hmm.  Sounds bad, right?  What I'm trying to say is, if the first
process of a process tree found cygserver isn't started, it will not try
to ask cygserver again, and it will propagate the lack of cygserver to
the child processes, so they will neither try to contact cygserver.  If
you have a catchy way to phrase this in less words, I'd be quite happy.


In the document I'm talking of the "first process of a Cygwin process
tree" throughout.  Is it clear at all what that means?  For a Cygwin
Terminal session that would be the mintty process.  If you have this:

  Cygwin process 1 starts Cygwin process 2
  Cygwin process 2 starts CMD.EXE
  CMD.EXE starts Cygwin process 3
  Cygwin process 3 starts Cygwin process 4

Then you have two Cygwin process trees with Cygwin process 1 and
Cygwin process 3 being the "first processes in a Cygwin process tree".

Is there a better way to phrase this in English?  Would it make more
sense to use "parent" or "grandparent" for the first process?  Or
any other expression?

> 'is not running a[t] the time'
> 'via an undocumented API[,] an applications[application] can fetch'
> 'When Cygwin stat's[stats, or: stat()s] files'
> 'If both[,] files and db are specified'

There is a comma already.  Or am I looking into the wrong line?

> 'Cygwin will always try the files first, then the db. '
> -- is that because the db will always be more trustworthy than the files?

It's because it doesn't make sense the other way around.  The DBs will
always have a valid reply for an existing account, thus there can't be
any fallback from db to files.

> BTW, the POSIX permission mapping leak used to have a section heading; it's
> now just unmarked, inside the File Permissions section.  (I'm just pointing
> that out.)

That was deliberate.  I was wondering if the lengthy description of a
bordercase in permission handling really deserved its own chapter and
came up with a "no".

> Hope this helps!  You've obviously put a lot of thought and effort into all
> this: thanks.

This really helps a lot, thank you!  I applied a patch in your name,
hope that's ok.  I also uploaded this version to

If you (or somebody else) have suggestions for the two problems outlined
above, I'd be really grateful.


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

Attachment: pgpmwstNu2Xha.pgp
Description: PGP signature

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]