This is the mail archive of the cygwin-developers@cygwin.com 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]

Re: Proposal: check and read /etc/{passwd,group} less frequently.


>>> On Fri, 14 Sep 2001 15:01:07 +0200
>>> Corinna Vinschen <vinschen@redhat.com> said:

> What about a long running server process e.g. started from cygrunsrv?
> It runs uinfo_init() just once at the beginning.  It would never get
> the changes to /etc/passwd and /etc/group since it needs that info
> _before_ changing the user context (which would call internal_getlogin()
> directly from seteuid(), btw. -- no uinfo_init() at all).

There is no problem in regard to inetd because it spawns real
servers which refer /etc/{passwd,group}.

Sshd can't have the chance to get the changes.  But it less help
sshd to check and read /etc/{passwd,group} in internal_getlogin(),
because it calls getpwnam() before seteuid().

I don't hate to restart sshd so much. I feel it much more
comfortable and reasonable than the previous way, that is,
I must terminate all Cygwin processes to get changes to
/etc/{passwd,group}.

Anyway, I implemented my idea and got benchmarks on Win98 SE and
WinNT 4.0 SP6a via compiling bash. The code became much simpler,
but I couldn't observe any performance improvement on both
platforms. So I withdraw my proposal.
____
  | AIST      Kazuhiro Fujieda <fujieda@jaist.ac.jp>
  | HOKURIKU  Center for Information Science
o_/ 1990      Japan Advanced Institute of Science and Technology


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