From 448483199fb436309735f5203b3282fca2c517ec Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Mon, 26 Dec 2005 16:46:55 +0000 Subject: 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) --- source4/include/dynconfig.h | 1 + source4/include/includes.h | 5 ++++- source4/include/smb.h | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) (limited to 'source4/include') 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 */ -- cgit