www.delorie.com/archives/browse.cgi | search |
>>> On Fri, 14 Sep 2001 15:01:07 +0200 >>> Corinna Vinschen <vinschen AT redhat DOT 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 AT jaist DOT ac DOT jp> | HOKURIKU Center for Information Science o_/ 1990 Japan Advanced Institute of Science and Technology
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |