diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2005-12-26 16:46:55 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:47:45 -0500 |
commit | 448483199fb436309735f5203b3282fca2c517ec (patch) | |
tree | fcd663e46d0eac19b98037008a435bdd57ca7f8e /source4/ntptr | |
parent | ee10fb1a12391a76fe81e6e7a92d282ef885bc30 (diff) | |
download | samba-448483199fb436309735f5203b3282fca2c517ec.tar.gz samba-448483199fb436309735f5203b3282fca2c517ec.tar.bz2 samba-448483199fb436309735f5203b3282fca2c517ec.zip |
r12494: Support loading modules from .so files for most subsystems.
We now use a different system for initializing the modules for a subsystem.
Most subsystems now have an init function that looks something like this:
init_module_fn static_init[] = STATIC_AUTH_MODULES;
init_module_fn *shared_init = load_samba_modules(NULL, "auth");
run_init_functions(static_init);
run_init_functions(shared_init);
talloc_free(shared_init);
I hope to eliminate the other init functions later on (the
init_programname_subsystems; defines).
(This used to be commit b6d2ad4ce0a91c4be790dd258820c492ff1787ea)
Diffstat (limited to 'source4/ntptr')
-rw-r--r-- | source4/ntptr/config.mk | 1 | ||||
-rw-r--r-- | source4/ntptr/ntptr_base.c | 13 |
2 files changed, 14 insertions, 0 deletions
diff --git a/source4/ntptr/config.mk b/source4/ntptr/config.mk index cbce1d66bd..37150211fc 100644 --- a/source4/ntptr/config.mk +++ b/source4/ntptr/config.mk @@ -15,6 +15,7 @@ REQUIRED_SUBSYSTEMS = \ ################################################ # Start SUBSYSTEM NTPTR [SUBSYSTEM::NTPTR] +INIT_FUNCTION = ntptr_init INIT_OBJ_FILES = \ ntptr_base.o ADD_OBJ_FILES = \ diff --git a/source4/ntptr/ntptr_base.c b/source4/ntptr/ntptr_base.c index f12a58cb4e..9f07ae597b 100644 --- a/source4/ntptr/ntptr_base.c +++ b/source4/ntptr/ntptr_base.c @@ -69,6 +69,19 @@ NTSTATUS ntptr_register(const void *_ops) return NT_STATUS_OK; } +NTSTATUS ntptr_init(void) +{ + init_module_fn static_init[] = STATIC_NTPTR_MODULES; + init_module_fn *shared_init = load_samba_modules(NULL, "ntptr"); + + run_init_functions(static_init); + run_init_functions(shared_init); + + talloc_free(shared_init); + + return NT_STATUS_OK; +} + /* return the operations structure for a named backend |