diff options
author | Andrew Bartlett <abartlet@samba.org> | 2010-05-26 10:48:15 +1000 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2010-05-28 18:08:27 +0200 |
commit | 59422efca9734f7e4248f9c7df8b6b823f17999b (patch) | |
tree | 1a1c098d27af02eee8f7d6e7e7496fc447513852 | |
parent | 6f279de0e672996ff1c142202581e6471ed6e859 (diff) | |
download | samba-59422efca9734f7e4248f9c7df8b6b823f17999b.tar.gz samba-59422efca9734f7e4248f9c7df8b6b823f17999b.tar.bz2 samba-59422efca9734f7e4248f9c7df8b6b823f17999b.zip |
s3:smbd move messaging_context and memcache into globals.c
This helps vfstest, which previously had duplicate copies of these functions.
Signed-off-by: Stefan Metzmacher <metze@samba.org>
-rw-r--r-- | source3/smbd/globals.c | 27 | ||||
-rw-r--r-- | source3/smbd/server.c | 26 | ||||
-rw-r--r-- | source3/torture/vfstest.c | 24 |
3 files changed, 27 insertions, 50 deletions
diff --git a/source3/smbd/globals.c b/source3/smbd/globals.c index 10ee5e81e2..892bc89d08 100644 --- a/source3/smbd/globals.c +++ b/source3/smbd/globals.c @@ -125,6 +125,33 @@ int num_children = 0; struct smbd_server_connection *smbd_server_conn = NULL; +struct messaging_context *smbd_messaging_context(void) +{ + if (smbd_msg_ctx == NULL) { + smbd_msg_ctx = messaging_init(talloc_autofree_context(), + procid_self(), + smbd_event_context()); + } + if (smbd_msg_ctx == NULL) { + DEBUG(0, ("Could not init smbd messaging context.\n")); + } + return smbd_msg_ctx; +} + +struct memcache *smbd_memcache(void) +{ + if (!smbd_memcache_ctx) { + smbd_memcache_ctx = memcache_init(talloc_autofree_context(), + lp_max_stat_cache_size()*1024); + } + if (!smbd_memcache_ctx) { + smb_panic("Could not init smbd memcache"); + } + + return smbd_memcache_ctx; +} + + void smbd_init_globals(void) { ZERO_STRUCT(char_flags); diff --git a/source3/smbd/server.c b/source3/smbd/server.c index 0e3ec1d033..184b613810 100644 --- a/source3/smbd/server.c +++ b/source3/smbd/server.c @@ -58,32 +58,6 @@ struct event_context *smbd_event_context(void) return smbd_event_ctx; } -struct messaging_context *smbd_messaging_context(void) -{ - if (smbd_msg_ctx == NULL) { - smbd_msg_ctx = messaging_init(talloc_autofree_context(), - procid_self(), - smbd_event_context()); - } - if (smbd_msg_ctx == NULL) { - DEBUG(0, ("Could not init smbd messaging context.\n")); - } - return smbd_msg_ctx; -} - -struct memcache *smbd_memcache(void) -{ - if (!smbd_memcache_ctx) { - smbd_memcache_ctx = memcache_init(talloc_autofree_context(), - lp_max_stat_cache_size()*1024); - } - if (!smbd_memcache_ctx) { - smb_panic("Could not init smbd memcache"); - } - - return smbd_memcache_ctx; -} - /******************************************************************* What to do when smb.conf is updated. ********************************************************************/ diff --git a/source3/torture/vfstest.c b/source3/torture/vfstest.c index c885163729..ea18bb395e 100644 --- a/source3/torture/vfstest.c +++ b/source3/torture/vfstest.c @@ -432,30 +432,6 @@ struct event_context *smbd_event_context(void) return ctx; } -struct messaging_context *smbd_messaging_context(void) -{ - static struct messaging_context *ctx; - - if (!ctx && !(ctx = messaging_init(NULL, procid_self(), - smbd_event_context()))) { - smb_panic("Could not init smbd messaging context\n"); - } - return ctx; -} - -struct memcache *smbd_memcache(void) -{ - static struct memcache *cache; - - if (!cache - && !(cache = memcache_init(NULL, - lp_max_stat_cache_size()*1024))) { - - smb_panic("Could not init smbd memcache"); - } - return cache; -} - /* Main function */ int main(int argc, char *argv[]) |