1
0
mirror of https://github.com/samba-team/samba.git synced 2025-10-25 19:33:18 +03:00

r3586: Fix some of the issues with the module init functions.

Both subsystems and modules can now have init functions, which can be
specified in .mk files (INIT_FUNCTION = ...)

The build system will define :
 - SUBSYSTEM_init_static_modules that calls the init functions of all statically compiled modules. Failing to load will generate an error which is not fatal
 - BINARY_init_subsystems that calls the init functions (if defined) for the subsystems the binary depends on

This removes the hack with the "static bool Initialised = " and the
"lazy_init" functions
This commit is contained in:
Jelmer Vernooij
2004-11-06 23:23:15 +00:00
committed by Gerald (Jerry) Carter
parent 9701abfa3a
commit 7a8244761b
49 changed files with 186 additions and 154 deletions

View File

@@ -1165,20 +1165,19 @@ const struct dcesrv_critical_sizes *dcerpc_module_version(void)
/*
initialise the DCERPC subsystem
*/
BOOL subsystem_dcerpc_init(void)
NTSTATUS dcerpc_server_init(void)
{
NTSTATUS status;
status = register_subsystem("dcerpc", dcerpc_register_ep_server);
if (!NT_STATUS_IS_OK(status)) {
return False;
return status;
}
/* FIXME: Perhaps panic if a basic endpoint server, such as EPMAPPER, fails to initialise? */
static_init_dcerpc;
dcerpc_init_static_modules;
DEBUG(3,("DCERPC subsystem version %d initialised\n", DCERPC_MODULE_VERSION));
return True;
return NT_STATUS_OK;
}
static const struct server_service_ops dcesrv_ops = {