From: Andrew Bartlett Date: Mon, 4 Feb 2008 06:48:51 +0000 (+1100) Subject: Rework service init functions to pass down service name. This is X-Git-Tag: samba-4.0.0alpha3~428 X-Git-Url: http://git.samba.org/samba.git/?p=ira%2Fwip.git;a=commitdiff_plain;h=0d830580e3539c96da3aa6c72fafe6eacd7a74a0 Rework service init functions to pass down service name. This is needed to change prefork behaviour based on what service is being started. Andrew Bartlett and David Disseldorp --- diff --git a/source/cldap_server/cldap_server.c b/source/cldap_server/cldap_server.c index d68637104db..944d679a2d5 100644 --- a/source/cldap_server/cldap_server.c +++ b/source/cldap_server/cldap_server.c @@ -209,7 +209,7 @@ static void cldapd_task_init(struct task_server *task) */ static NTSTATUS cldapd_init(struct event_context *event_ctx, struct loadparm_context *lp_ctx, const struct model_ops *model_ops) { - return task_server_startup(event_ctx, lp_ctx, model_ops, cldapd_task_init); + return task_server_startup(event_ctx, lp_ctx, "cldap", model_ops, cldapd_task_init); } diff --git a/source/dsdb/repl/drepl_service.c b/source/dsdb/repl/drepl_service.c index e212407e240..246309e16f4 100644 --- a/source/dsdb/repl/drepl_service.c +++ b/source/dsdb/repl/drepl_service.c @@ -185,7 +185,7 @@ static void dreplsrv_task_init(struct task_server *task) */ static NTSTATUS dreplsrv_init(struct event_context *event_ctx, struct loadparm_context *lp_ctx, const struct model_ops *model_ops) { - return task_server_startup(event_ctx, lp_ctx, model_ops, dreplsrv_task_init); + return task_server_startup(event_ctx, lp_ctx, "drepl", model_ops, dreplsrv_task_init); } /* diff --git a/source/kdc/kdc.c b/source/kdc/kdc.c index 04e7ddd2ff1..d820f0abe97 100644 --- a/source/kdc/kdc.c +++ b/source/kdc/kdc.c @@ -667,7 +667,7 @@ static NTSTATUS kdc_init(struct event_context *event_ctx, struct loadparm_context *lp_ctx, const struct model_ops *model_ops) { - return task_server_startup(event_ctx, lp_ctx, model_ops, kdc_task_init); + return task_server_startup(event_ctx, lp_ctx, "kdc", model_ops, kdc_task_init); } /* called at smbd startup - register ourselves as a server service */ diff --git a/source/ldap_server/ldap_server.c b/source/ldap_server/ldap_server.c index 8380775c287..f9c763eec78 100644 --- a/source/ldap_server/ldap_server.c +++ b/source/ldap_server/ldap_server.c @@ -584,7 +584,7 @@ static NTSTATUS ldapsrv_init(struct event_context *event_context, struct loadparm_context *lp_ctx, const struct model_ops *model_ops) { - return task_server_startup(event_context, lp_ctx, model_ops, + return task_server_startup(event_context, lp_ctx, "ldap", model_ops, ldapsrv_task_init); } diff --git a/source/nbt_server/nbt_server.c b/source/nbt_server/nbt_server.c index 1718ef7f2e0..bcdc63e984d 100644 --- a/source/nbt_server/nbt_server.c +++ b/source/nbt_server/nbt_server.c @@ -93,7 +93,7 @@ static void nbtd_task_init(struct task_server *task) */ static NTSTATUS nbtd_init(struct event_context *event_ctx, struct loadparm_context *lp_ctx, const struct model_ops *model_ops) { - return task_server_startup(event_ctx, lp_ctx, + return task_server_startup(event_ctx, lp_ctx, "nbt", model_ops, nbtd_task_init); } diff --git a/source/rpc_server/service_rpc.c b/source/rpc_server/service_rpc.c index 46916135f9a..855e120cede 100644 --- a/source/rpc_server/service_rpc.c +++ b/source/rpc_server/service_rpc.c @@ -465,7 +465,7 @@ static NTSTATUS dcesrv_init(struct event_context *event_context, struct loadparm_context *lp_ctx, const struct model_ops *model_ops) { - return task_server_startup(event_context, lp_ctx, + return task_server_startup(event_context, lp_ctx, "rpc", model_ops, dcesrv_task_init); } diff --git a/source/smb_server/smb_server.c b/source/smb_server/smb_server.c index cbff585e21a..866ae26fa46 100644 --- a/source/smb_server/smb_server.c +++ b/source/smb_server/smb_server.c @@ -258,7 +258,7 @@ static NTSTATUS smbsrv_init(struct event_context *event_context, struct loadparm_context *lp_ctx, const struct model_ops *model_ops) { - return task_server_startup(event_context, lp_ctx, + return task_server_startup(event_context, lp_ctx, "smb", model_ops, smbsrv_task_init); } diff --git a/source/smbd/service_task.c b/source/smbd/service_task.c index 08588464cc8..22746850590 100644 --- a/source/smbd/service_task.c +++ b/source/smbd/service_task.c @@ -85,6 +85,7 @@ static void task_server_callback(struct event_context *event_ctx, */ NTSTATUS task_server_startup(struct event_context *event_ctx, struct loadparm_context *lp_ctx, + const char *service_name, const struct model_ops *model_ops, void (*task_init)(struct task_server *)) { @@ -96,7 +97,7 @@ NTSTATUS task_server_startup(struct event_context *event_ctx, state->task_init = task_init; state->model_ops = model_ops; - model_ops->new_task(event_ctx, lp_ctx, task_server_callback, state); + model_ops->new_task(event_ctx, lp_ctx, service_name, task_server_callback, state); return NT_STATUS_OK; } diff --git a/source/web_server/web_server.c b/source/web_server/web_server.c index 9ff67f78f30..bd212cff7d2 100644 --- a/source/web_server/web_server.c +++ b/source/web_server/web_server.c @@ -298,7 +298,7 @@ static NTSTATUS websrv_init(struct event_context *event_context, struct loadparm_context *lp_ctx, const struct model_ops *model_ops) { - return task_server_startup(event_context, lp_ctx, + return task_server_startup(event_context, lp_ctx, "web", model_ops, websrv_task_init); } diff --git a/source/winbind/wb_server.c b/source/winbind/wb_server.c index eaba6609f30..9acde4a557c 100644 --- a/source/winbind/wb_server.c +++ b/source/winbind/wb_server.c @@ -208,7 +208,7 @@ static NTSTATUS winbind_init(struct event_context *event_ctx, struct loadparm_context *lp_ctx, const struct model_ops *model_ops) { - return task_server_startup(event_ctx, lp_ctx, + return task_server_startup(event_ctx, lp_ctx, "winbind", model_ops, winbind_task_init); } diff --git a/source/wrepl_server/wrepl_server.c b/source/wrepl_server/wrepl_server.c index 50ef7e8550d..d13482dd98d 100644 --- a/source/wrepl_server/wrepl_server.c +++ b/source/wrepl_server/wrepl_server.c @@ -510,7 +510,7 @@ static NTSTATUS wreplsrv_init(struct event_context *event_ctx, struct loadparm_c return NT_STATUS_OK; } - return task_server_startup(event_ctx, lp_ctx, + return task_server_startup(event_ctx, lp_ctx, "wrepl", model_ops, wreplsrv_task_init); }