lib: modules: Change XXX_init interface from XXX_init(void) to XXX_init(TALLOC_CTX *)
[metze/samba-autobuild/.git] / source4 / param / share.c
index 2ada9999ea834ef0c67f8ba486af597f332cfdfb..7a57151081269ffe4dba1fa9f419a03ba728d845 100644 (file)
@@ -1,7 +1,7 @@
 /* 
    Unix SMB/CIFS implementation.
    
-   Modular services configuration system
+   Modular shares configuration system
    
    Copyright (C) Simo Sorce    2006
    
 
 #include "includes.h"
 #include "param/share.h"
-#include "build.h"
 #include "param/param.h"
+#include "lib/util/samba_modules.h"
 
-const char *share_string_option(struct share_config *scfg, const char *opt_name, const char *defval)
+char *share_string_option(TALLOC_CTX *mem_ctx, struct share_config *scfg, const char *opt_name, const char *defval)
 {
-       return scfg->ctx->ops->string_option(scfg, opt_name, defval);
+       return scfg->ctx->ops->string_option(mem_ctx, scfg, opt_name, defval);
 }
 
 int share_int_option(struct share_config *scfg, const char *opt_name, int defval)
@@ -127,6 +127,7 @@ NTSTATUS share_register(const struct share_ops *ops)
 }
 
 NTSTATUS share_get_context_by_name(TALLOC_CTX *mem_ctx, const char *backend_name,
+                                  struct tevent_context *event_ctx, 
                                   struct loadparm_context *lp_ctx,
                                   struct share_context **ctx)
 {
@@ -138,7 +139,7 @@ NTSTATUS share_get_context_by_name(TALLOC_CTX *mem_ctx, const char *backend_name
                return NT_STATUS_INTERNAL_ERROR;
        }
 
-       return ops->init(mem_ctx, ops, lp_ctx, ctx);
+       return ops->init(mem_ctx, ops, event_ctx, lp_ctx, ctx);
 }
 
 /*
@@ -146,9 +147,11 @@ NTSTATUS share_get_context_by_name(TALLOC_CTX *mem_ctx, const char *backend_name
 */
 NTSTATUS share_init(void)
 {
-       init_module_fn static_init[] = STATIC_share_MODULES;
+#define _MODULE_PROTO(init) extern NTSTATUS init(TALLOC_CTX *);
+       STATIC_share_MODULES_PROTO;
+       init_module_fn static_init[] = { STATIC_share_MODULES };
 
-       run_init_functions(static_init);
+       run_init_functions(NULL, static_init);
 
        return NT_STATUS_OK;
 }