diff options
author | Volker Lendecke <vlendec@samba.org> | 2005-03-03 16:52:44 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 10:55:53 -0500 |
commit | 140752fd35bd5701b3078abf695f811d933fe893 (patch) | |
tree | 1b66bc1d681aff4a5d62bc0647c4dd8683545377 /source3/lib | |
parent | 85b094801e3dcabc7aa86360371515c5c471027f (diff) | |
download | samba-140752fd35bd5701b3078abf695f811d933fe893.tar.gz samba-140752fd35bd5701b3078abf695f811d933fe893.tar.bz2 samba-140752fd35bd5701b3078abf695f811d933fe893.zip |
r5647: Caches are good for performance, but you get a consistency problem.
Fix bug # 2401.
Volker
(This used to be commit eb4ef94f244d28fe531d0b9f724a66ed3834b687)
Diffstat (limited to 'source3/lib')
-rw-r--r-- | source3/lib/util_pw.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/source3/lib/util_pw.c b/source3/lib/util_pw.c index 0d7ffe09e9..13349bad34 100644 --- a/source3/lib/util_pw.c +++ b/source3/lib/util_pw.c @@ -70,6 +70,20 @@ static void init_pwnam_cache(void) return; } +void flush_pwnam_cache(void) +{ + int i; + + init_pwnam_cache(); + + for (i=0; i<PWNAMCACHE_SIZE; i++) { + if (pwnam_cache[i] == NULL) + continue; + + passwd_free(&pwnam_cache[i]); + } +} + struct passwd *getpwnam_alloc(const char *name) { int i; |