summaryrefslogtreecommitdiff
path: root/source3/smbd/globals.c
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2010-05-26 10:48:15 +1000
committerStefan Metzmacher <metze@samba.org>2010-05-28 18:08:27 +0200
commit59422efca9734f7e4248f9c7df8b6b823f17999b (patch)
tree1a1c098d27af02eee8f7d6e7e7496fc447513852 /source3/smbd/globals.c
parent6f279de0e672996ff1c142202581e6471ed6e859 (diff)
downloadsamba-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>
Diffstat (limited to 'source3/smbd/globals.c')
-rw-r--r--source3/smbd/globals.c27
1 files changed, 27 insertions, 0 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);