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]

PLEASE TEST: Cygwin DLL change to help w/ slow startup


Hi guys,

especially (but not only, so please read on) those of you suffering from
the slow startup problem, I'd like to ask to test the latest snapshot
DLL from https://cygwin.com/snapshots/

It contains a couple of changes to alleviate the slow startup, namely:

- The default settings for db_home, db_shell, and db_gecos in case
  there's no /etc/nsswitch.conf file, or if they are not mentioned 
  in /etc/nsswitch.conf, are now set to just the fallback, which is

    db_home: /home/%U
    db_shell: /bin/bash
    db_gecos: <empty>

  This means, if you don't set these values in /etc/nsswitch.conf,
  there's no reason for Cygwin to access the DC via LDAP.

- Next, I revamped the code fetching values over LDAP to do the actual
  fetching only if it's really required.  So far, the LDAP call was made
  all the time, even if the settings in /etc/nsswitch.conf didn't
  require that.

- Last but not least, the primary group of the current user account is
  not read anymore from the LDAP call, but simply from the current user
  token of the user.

- Group account requests don't access LDAP at all, unless values
  for the UNIX gid <-> Windows SID mapping are required (see
  https://cygwin.com/cygwin-ug-net/ntsec.html#ntsec-mapping-nfs and
  https://cygwin.com/cygwin-ug-net/ntsec.html#ntsec-mapping-samba
  for an explanation).

All in all, that *should* have the desired effect to avoid all LDAP
calls to the DC for the current user account and its primary and
supplementary group accounts in the default case, even if you only
use the "db" setting for passwd and groups in /etc/nsswitch.conf:

  passwd: db
  group: db

The only downside for other scenarios is that the default settings
in /etc/nsswitch.conf don't catch the "cygwin desc" settings for
db_home, db_shell, and db_gecos anymore by default.  If you want to
use them, you now have to tweak /etc/nsswitch.conf, but most more
complex scenarios will require that anyway.

So, again, please test.  If that works as desired, I will update
to 1.7.35 pretty soon.


Thanks,
Corinna

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

Attachment: pgppgzo8HcJHu.pgp
Description: PGP signature


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