This is the mail archive of the
cygwin-developers@cygwin.com
mailing list for the Cygwin project.
Re: Proposal: check and read /etc/{passwd,group} less frequently.
On Fri, Sep 14, 2001 at 09:25:05PM +0900, Kazuhiro Fujieda wrote:
> >>> On 14 Sep 2001 16:33:05 +0900
> >>> Kazuhiro Fujieda <fujieda@jaist.ac.jp> said:
>
> > > How often is internal_getlogin called relative to get(p|g)w*?
> >
> > It is in set{g,u}id and uinfo_init. At the user's point of view,
> > the cache is updated only when they execute another command.
>
> Oops, I've told a lie. it's a nonsense that internal_getlogin
> invokes read_etc{passwd,group}. I tested it and found it
> couldn't work as I intended.
>
> I'd like to change the proposal. Checking and reading
> /etc/{passwd,group} should be held in uinfo_init.
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).
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Developer mailto:cygwin@cygwin.com
Red Hat, Inc.