* passwd.cc (pwdgrp::read_passwd): linebuf *must* be static (from Pierre
Humblet). * pwdgrp.h (pwdgrp::refresh): Avoid calling read function if we already have lock since that means we are in the process of reading the file.
This commit is contained in:
parent
485d85bfa7
commit
949c3da11a
@ -1,3 +1,10 @@
|
|||||||
|
2003-01-31 Christopher Faylor <cgf@redhat.com>
|
||||||
|
|
||||||
|
* passwd.cc (pwdgrp::read_passwd): linebuf *must* be static (from
|
||||||
|
Pierre Humblet).
|
||||||
|
* pwdgrp.h (pwdgrp::refresh): Avoid calling read function if we already
|
||||||
|
have lock since that means we are in the process of reading the file.
|
||||||
|
|
||||||
2003-01-31 Jason Tishler <jason@tishler.net>
|
2003-01-31 Jason Tishler <jason@tishler.net>
|
||||||
|
|
||||||
* shared.cc (shared_info::heap_chunk_size): Use correct variable when
|
* shared.cc (shared_info::heap_chunk_size): Use correct variable when
|
||||||
|
@ -66,6 +66,7 @@ pwdgrp::read_passwd ()
|
|||||||
|
|
||||||
if (wincap.has_security ())
|
if (wincap.has_security ())
|
||||||
{
|
{
|
||||||
|
/* must be static */
|
||||||
static char NO_COPY pretty_ls[] = "????????:*:-1:-1:";
|
static char NO_COPY pretty_ls[] = "????????:*:-1:-1:";
|
||||||
add_line (pretty_ls);
|
add_line (pretty_ls);
|
||||||
cygsid tu = cygheap->user.sid ();
|
cygsid tu = cygheap->user.sid ();
|
||||||
@ -81,7 +82,7 @@ pwdgrp::read_passwd ()
|
|||||||
myself->uid != (__uid32_t) pw->pw_uid &&
|
myself->uid != (__uid32_t) pw->pw_uid &&
|
||||||
!internal_getpwuid (myself->uid))))
|
!internal_getpwuid (myself->uid))))
|
||||||
{
|
{
|
||||||
char linebuf[1024];
|
static char NO_COPY linebuf[1024]; // must be static
|
||||||
(void) cygheap->user.ontherange (CH_HOME, NULL);
|
(void) cygheap->user.ontherange (CH_HOME, NULL);
|
||||||
snprintf (linebuf, sizeof (linebuf), "%s:*:%lu:%lu:,%s:%s:/bin/sh",
|
snprintf (linebuf, sizeof (linebuf), "%s:*:%lu:%lu:,%s:%s:/bin/sh",
|
||||||
cygheap->user.name (),
|
cygheap->user.name (),
|
||||||
|
@ -71,9 +71,9 @@ public:
|
|||||||
{
|
{
|
||||||
if (!check && initialized)
|
if (!check && initialized)
|
||||||
return;
|
return;
|
||||||
pglock->acquire ();
|
if (pglock->acquire () == 1 &&
|
||||||
if (!initialized || (check && etc::file_changed (etc_ix)))
|
(!initialized || (check && etc::file_changed (etc_ix))))
|
||||||
(this->*read) ();
|
(this->*read) ();
|
||||||
pglock->release ();
|
pglock->release ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user