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/include | |
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/include')
-rw-r--r-- | source4/include/dynconfig.h | 1 | ||||
-rw-r--r-- | source4/include/includes.h | 5 | ||||
-rw-r--r-- | source4/include/smb.h | 1 |
3 files changed, 6 insertions, 1 deletions
diff --git a/source4/include/dynconfig.h b/source4/include/dynconfig.h index 303ac1b6a4..8135e53c0b 100644 --- a/source4/include/dynconfig.h +++ b/source4/include/dynconfig.h @@ -31,6 +31,7 @@ extern const char *dyn_NCALRPCDIR; extern const char *dyn_LOGFILEBASE; extern const char *dyn_LMHOSTSFILE; extern const char *dyn_LIBDIR; +extern const char *dyn_MODULESDIR; extern const char *dyn_SHLIBEXT; extern const char *dyn_LOCKDIR; extern const char *dyn_PIDDIR; diff --git a/source4/include/includes.h b/source4/include/includes.h index 9f5679fa80..fdd155b0ee 100644 --- a/source4/include/includes.h +++ b/source4/include/includes.h @@ -23,7 +23,6 @@ #ifndef NO_CONFIG_H /* for some tests */ #include "config.h" -#include "smb_build.h" #endif #include "local.h" @@ -114,6 +113,10 @@ struct ipv4_addr { #include "cli_context.h" #include "auth/credentials/credentials.h" +#ifndef NO_CONFIG_H +#include "smb_build.h" +#endif + /***** automatically generated prototypes *****/ #define _PRINTF_ATTRIBUTE(a1, a2) PRINTF_ATTRIBUTE(a1, a2) #include "include/proto.h" diff --git a/source4/include/smb.h b/source4/include/smb.h index 51e7f666ca..73385d4373 100644 --- a/source4/include/smb.h +++ b/source4/include/smb.h @@ -608,5 +608,6 @@ enum brl_type {READ_LOCK, WRITE_LOCK, PENDING_READ_LOCK, PENDING_WRITE_LOCK}; #define FS_ATTR_ENCRYPTION 0x00020000 #define FS_ATTR_NAMED_STREAMS 0x00040000 +typedef NTSTATUS (*init_module_fn) (void); #endif /* _SMB_H */ |