diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2004-11-06 23:23:15 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:05:36 -0500 |
commit | 71db46ea665606384f2be1be708c74c97c9adfb2 (patch) | |
tree | 24c84e12f4fc925f3ec1e69348493d7222df1e44 /source4/librpc | |
parent | b012ab557b8f8a2f58dfbbe8b7818f3e6d8cf38f (diff) | |
download | samba-71db46ea665606384f2be1be708c74c97c9adfb2.tar.gz samba-71db46ea665606384f2be1be708c74c97c9adfb2.tar.bz2 samba-71db46ea665606384f2be1be708c74c97c9adfb2.zip |
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 used to be commit 7a8244761bfdfdfb48f8264d76951ebdfbf7bd8a)
Diffstat (limited to 'source4/librpc')
-rw-r--r-- | source4/librpc/config.mk | 1 | ||||
-rw-r--r-- | source4/librpc/rpc/dcerpc.c | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/source4/librpc/config.mk b/source4/librpc/config.mk index a359f13f54..09e2a278c4 100644 --- a/source4/librpc/config.mk +++ b/source4/librpc/config.mk @@ -30,6 +30,7 @@ ADD_OBJ_FILES = \ ################################################ # Start SUBSYSTEM LIBNDR_GEN [SUBSYSTEM::LIBNDR_GEN] +INIT_FUNCTION = librpc_init INIT_OBJ_FILES = \ librpc/gen_ndr/tables.o ADD_OBJ_FILES = \ diff --git a/source4/librpc/rpc/dcerpc.c b/source4/librpc/rpc/dcerpc.c index 3c05c303af..27292bc8c3 100644 --- a/source4/librpc/rpc/dcerpc.c +++ b/source4/librpc/rpc/dcerpc.c @@ -24,6 +24,12 @@ #include "dlinklist.h" #include "librpc/gen_ndr/ndr_epmapper.h" +NTSTATUS librpc_init(void) +{ + /* FIXME: Register module registration function here */ + return NT_STATUS_OK; +} + /* initialise a dcerpc pipe. */ struct dcerpc_pipe *dcerpc_pipe_init(void) { |