summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2004-04-19 11:21:50 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:51:19 -0500
commit916fd3ec101e98c62ecc6c6465de79692940f811 (patch)
treedc4570d80fbc699dfd728ed53c248de6d41e06bd
parent8fce9e3c549bcf1433119333ddbbf0a3dc4af8d9 (diff)
downloadsamba-916fd3ec101e98c62ecc6c6465de79692940f811.tar.gz
samba-916fd3ec101e98c62ecc6c6465de79692940f811.tar.bz2
samba-916fd3ec101e98c62ecc6c6465de79692940f811.zip
r277: fix the initialisation of subsystems for process model 'thread' and 'standard'
metze (This used to be commit 3d01cf95ad8b065cd274bc0e544919c7c9336721)
-rw-r--r--source4/smbd/process.c17
-rw-r--r--source4/smbd/server.c4
2 files changed, 15 insertions, 6 deletions
diff --git a/source4/smbd/process.c b/source4/smbd/process.c
index 183f0655da..d06fbf9a44 100644
--- a/source4/smbd/process.c
+++ b/source4/smbd/process.c
@@ -70,6 +70,19 @@ void smbd_process_init(void)
if (!init_change_notify())
exit(1);
+ /* Setup the PASSDB subsystem */
+ if(!initialize_password_db(False))
+ exit(1);
+
+ talloc_destroy(mem_ctx);
+}
+
+void init_subsystems(void)
+{
+ /* Setup the PROCESS_MODEL subsystem */
+ if (!process_model_init())
+ exit(1);
+
/* Setup the AUTH subsystem */
if (!auth_init())
exit(1);
@@ -77,8 +90,6 @@ void smbd_process_init(void)
/* Setup the PASSDB subsystem */
if (!passdb_init())
exit(1);
- if(!initialize_password_db(False))
- exit(1);
/* Setup the NTVFS subsystem */
if (!ntvfs_init())
@@ -88,6 +99,4 @@ void smbd_process_init(void)
if (!dcesrv_init())
exit(1);
- talloc_destroy(mem_ctx);
}
-
diff --git a/source4/smbd/server.c b/source4/smbd/server.c
index 90955ff6cb..f32d6a0702 100644
--- a/source4/smbd/server.c
+++ b/source4/smbd/server.c
@@ -196,8 +196,6 @@ static void setup_process_model(struct event_context *events,
{
const struct model_ops *ops;
- process_model_init();
-
ops = process_model_byname(model);
if (!ops) {
DEBUG(0,("Unknown process model '%s'\n", model));
@@ -343,6 +341,8 @@ static void setup_process_model(struct event_context *events,
register_msg_pool_usage();
register_dmalloc_msgs();
+ init_subsystems();
+
setup_process_model(events, model);
/* wait for events */