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:message-id:date:from:mime-version:to:cc :subject:references:in-reply-to:content-type :content-transfer-encoding; q=dns; s=default; b=hyBnCbrVvfnLkh3b wqXPn8cKSUz/c3rccJwnkllHr5RtAS1eqpVvKttOApjvPVxOd2a3QADzcr9Q7BYB VMnHDs76A82ZE9hCyyB7CyS9F0Gxah5VHLm7tCCyYIAvHdMRc1Afj08hxF85xAcO xFk/tyXf3EUdyusFNTGBIGQL2nA= 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:message-id:date:from:mime-version:to:cc :subject:references:in-reply-to:content-type :content-transfer-encoding; s=default; bh=R8fp2FzA5g3yyYiBypKEBk ruJF0=; b=hSekXJM5xjXb0WtuqIooe/tyEvZ+ZaGsak+oaT0aYE381tH5cdJLzB 0pYBXFSeOdH11/iP8rgKdEintEFHrbHE6cQuT0ZWYqUavRINL3f/lYdkjxQA3nLJ knMxZ94/7gQ3Q0HK591HKLWd9L/t9K7z0aHLM0xTcePtZUENq9Sq4= Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , 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=3.6 required=5.0 tests=AWL,BAYES_00,SPAM_BODY1 autolearn=no version=3.3.2 X-HELO: EXE02-WPP.cisra.canon.com.au Message-ID: <544ED1AB.1060209@cisra.canon.com.au> Date: Tue, 28 Oct 2014 10:13:47 +1100 From: Luke Kendall User-Agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.2.0 MIME-Version: 1.0 To: CC: audit Subject: Re: [ANNOUNCEMENT] TEST RELEASE: Cygwin 1.7.33-0.1 References: <20141023025725 DOT GA9370 AT pixel DOT schutter DOT home> <20141023154358 DOT GE20607 AT calimero DOT vinschen DOT de> <5449F281 DOT 3080701 AT cisra DOT canon DOT com DOT au> <5449F343 DOT 7040304 AT cisra DOT canon DOT com DOT au> <20141024103716 DOT GI20607 AT calimero DOT vinschen DOT de> <544D7582 DOT 5030106 AT cisra DOT canon DOT com DOT au> <20141027123926 DOT GY20607 AT calimero DOT vinschen DOT de> In-Reply-To: <20141027123926.GY20607@calimero.vinschen.de> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes On 27/10/14 23:39, Corinna Vinschen wrote: > On Oct 27 09:28, Luke Kendall wrote: >> On 24/10/14 21:37, Corinna Vinschen wrote: >>> On Oct 24 17:35, Luke Kendall wrote: >>>> On 24/10/14 02:43, Corinna Vinschen wrote: [snip] >> Sure, and I thought you'd prefer the American, but I'm happy to see British >> spelling. > > So, so, it's always fun to wake up people with an unusual word [...] > > And the anwser is, yes, just as on Linux or other UNIXy systems. You > have one primary group ("None" on non-domain machines, default "Domain > Users" on domain machines), and an arbitrary number of supplementary > groups. Have a look into the output of `id'. Thanks! >>>> 'Cygwin process tree, which[ever?] first process' >>> >>> Hmm. Sounds bad, right? >> Um, awkward and not quite clear, yes. >>> 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. >>> >>> Btw. >>> >>> In the document I'm talking of the "first process of a Cygwin process >>> tree" throughout. Is it clear at all what that means? >> >> I think your description is reasonably clear. >> >>> 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? >> >> Hmm. >> >> Well, you open the section by saying: >> >> "The information fetched from file or the Windows account database is cached >> by the process. The cached information is inherited by child processes." >> >> What about if you said: >> >> "The information fetched (from file or from the Windows account database), >> is cached by the first process in the process tree. This cached information >> is inherited by every child process." > > Uh, that wouldn't be quite right. Every process calling getpwuid and > friends caches the account information it got. So if process A starts > B, and B starts C, process C inherits the combined cached account > information from A and B. Ah. >> A little later you say: >> >> "If cygserver is running it will provide passwd and group entry caching for >> all processes in a Cygwin process tree, which first process has been started >> after cygserver." >> >> Maybe: >> >> "If cygserver is running, it will provide passwd and group entry caching for >> all processes in every Cygwin process tree started after cygserver." > > Sounds much better. > >> But what I hadn't realised until I read your reply, above, was that if >> you're not running cygserver, that if a Cygwin process is started from a >> Windows command in a Cygwin process tree, that new Cygwin process is the >> root of a new Cygwin process tree. >> >> I wonder if the opening sentence should therefore say something like: >> >> "The information fetched from file or the Windows account database is cached >> by the process. The cached information is inherited by child /Cygwin/ >> processes. (A Cygwin process invoked from a Windows command, such as >> CMD.exe, will start a fresh process tree unless /cygserver/ is running.)" >> >> BTW, you could say "root of the process tree", but "root" tends to get >> confused with (superuser) root quite easily, so care would be needed. I >> think "first process" is pretty clear. > > Ok, cool. I rephrased the above a bit different: > > The information fetched from the Windows account database or the > /etc/passwd and /etc/group files is cached by the process. The cached > information is inherited by Cygwin child processes. A Cygwin process > invoked from a Windows command, such as CMD.exe, will start a new > Cygwin process tree and the caching starts from scratch (unless > cygserver is running, but read on). > > Is that ok? Yep, it's good and clear IMHO. >>>> 'If both[,] files and db are specified' >>> >>> There is a comma already. Or am I looking into the wrong line? >> >> Sorry, I was too terse: the comma should be removed: >> "If both files and db are specified..." > > Isn't that ambiguous? What I was trying to say is: > > If both settings, "files" and "db" are specified... > > Without the comma, the expression "both files" seems to refer to > the passwd and group files, not the setting I'm talking about, > and then I'm stumbling over the "... and db ...". I hadn't considered parsing it that way, and you're right. But your phrasing 'If both settings, "files" and "db" are specified' is both unambiguous and also reads very naturally. >> I hope the above is of some help. > > Very much so. I'm very happy if you guys really care for the > documentation. As a developer and as a non-native speaker, I'm never > quite sure if my expressions are intelligible enough for non-devs. It's good, and I (and I'm sure many others) appreciate the time and effort you put in. > I updated https://cygwin.com/preliminary-ntsec.html according to > the above. Great! And thanks again. luke > Thanks, > Corinna > -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple