On Jan 15 20:23, Corinna Vinschen via Cygwin wrote:
> On Jan 15 20:14, Takashi Yano via Cygwin wrote:
> > Hi Corinna,
> > 
> > I also could reproduce the issue.
> > [...]
> > Local. In the mintty terminal opened after
> > cygserver is started. In the mintty terminal opened
> > after cygserver is stopped, the gid is as expected.
> > 
> > The terminal already opened at the time cygserver is
> > started/stopped is not affected.
> > [...]
> > > If you stop all Cygwin processes and restart cygserver, is the primary
> > > group still as expected?
> > 
> > No.
> 
> So running cygserver suppresses changing the primary group?  That's
> weird, because the effect seems so arbitrary.
> 
> Did you try to debug that?

I just took a stab and I can reproduce this easily.  It looks like the
culprit is this condition in internal_getlogin():

  if (!cygheap->pg.nss_cygserver_caching ())
     internal_getgroups (0, NULL, &cldap);

This skips the internal_getgroups() call if cygserver is running.

If I just drop the condition and call internal_getgroups() every time,
it works for me even with cygserver running.

I changed this expression to exclude the internal_getgroups() call back
in 2014, and, as was typical at the time, the ChangeLog entry only
explains *what* I was doing, but not *why*.

The result is that I have no idea anymore why I did this.  Dropping the
condition *might* have unfortunate side effects, mainly on the
performance side in scenarios with remote ADs, but, honestly, I don't
know.  And it would only affect cygserver users, all the others would
already have the same performance.  So it might not be a bad idea to
drop it, all things considered.

I can make this change and you can all try the test release and if
this works fine for you, I can release Cygwin 3.6.7 soonish, is that
ok with everyone?


Thanks,
Corinna

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to