diff options
author | Jeremy Allison <jra@samba.org> | 2002-01-19 20:21:29 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2002-01-19 20:21:29 +0000 |
commit | 95501cf1ba7dbbd2ae5d28bc1e66158d41592c65 (patch) | |
tree | a1dd5af349397c3d6737e111c56d66fd99641d8a | |
parent | 7019bfe546912397e7f4d37a44a510ce17a7febb (diff) | |
download | samba-95501cf1ba7dbbd2ae5d28bc1e66158d41592c65.tar.gz samba-95501cf1ba7dbbd2ae5d28bc1e66158d41592c65.tar.bz2 samba-95501cf1ba7dbbd2ae5d28bc1e66158d41592c65.zip |
Fix to close winbindd_idmap on exit. Pointed out by Alexander Bokovoy.
Jeremy.
(This used to be commit 1bd96b3094b530c3426b22b6f891c7fc055e7033)
-rw-r--r-- | source3/nsswitch/winbindd.c | 2 | ||||
-rw-r--r-- | source3/nsswitch/winbindd_idmap.c | 7 | ||||
-rw-r--r-- | source3/nsswitch/winbindd_proto.h | 1 |
3 files changed, 10 insertions, 0 deletions
diff --git a/source3/nsswitch/winbindd.c b/source3/nsswitch/winbindd.c index 25b69cee6d..ee373c7101 100644 --- a/source3/nsswitch/winbindd.c +++ b/source3/nsswitch/winbindd.c @@ -154,6 +154,8 @@ static void flush_caches(void) static void terminate(void) { pstring path; + + winbindd_idmap_close(); /* Remove socket file */ snprintf(path, sizeof(path), "%s/%s", diff --git a/source3/nsswitch/winbindd_idmap.c b/source3/nsswitch/winbindd_idmap.c index a96111a608..06d442c565 100644 --- a/source3/nsswitch/winbindd_idmap.c +++ b/source3/nsswitch/winbindd_idmap.c @@ -240,6 +240,13 @@ BOOL winbindd_idmap_init(void) return True; } +BOOL winbindd_idmap_close(void) +{ + if (idmap_tdb) + return (tdb_close(idmap_tdb) == 0); + return True; +} + /* Dump status information to log file. Display different stuff based on the debug level: diff --git a/source3/nsswitch/winbindd_proto.h b/source3/nsswitch/winbindd_proto.h index 565c08f549..cc936642ed 100644 --- a/source3/nsswitch/winbindd_proto.h +++ b/source3/nsswitch/winbindd_proto.h @@ -61,6 +61,7 @@ BOOL winbindd_idmap_get_rid_from_uid(uid_t uid, uint32 *user_rid, BOOL winbindd_idmap_get_rid_from_gid(gid_t gid, uint32 *group_rid, struct winbindd_domain **domain); BOOL winbindd_idmap_init(void); +BOOL winbindd_idmap_close(void); void winbindd_idmap_status(void); /* The following definitions come from nsswitch/winbindd_misc.c */ |