lib: modules: Change XXX_init interface from XXX_init(void) to XXX_init(TALLOC_CTX *)
authorJeremy Allison <jra@samba.org>
Thu, 20 Apr 2017 19:24:43 +0000 (12:24 -0700)
committerJeremy Allison <jra@samba.org>
Fri, 21 Apr 2017 23:17:00 +0000 (01:17 +0200)
Not currently used - no logic changes inside.

This will make it possible to pass down a long-lived talloc
context from the loading function for modules to use instead
of having them internally all use talloc_autofree_context()
which is a hidden global.

Updated all known module interface numbers, and added a
WHATSNEW.

Signed-off-by: Jeremy Allison <jra@samba.org>
Signed-off-by: Ralph Böhme <slow@samba.org>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Sat Apr 22 01:17:00 CEST 2017 on sn-devel-144

205 files changed:
WHATSNEW.txt
auth/gensec/external.c
auth/gensec/gensec.h
auth/gensec/gensec_start.c
auth/gensec/ncalrpc.c
auth/gensec/schannel.c
auth/gensec/spnego.c
auth/ntlmssp/ntlmssp.c
auth/ntlmssp/ntlmssp.h
buildtools/wafsamba/samba_patterns.py
docs-xml/Samba3-Developers-Guide/modules.xml
examples/VFS/shadow_copy_test.c
examples/VFS/skel_opaque.c
examples/VFS/skel_transparent.c
examples/auth/auth_skel.c
examples/pdb/test.c
file_server/file_server.c
lib/util/modules.c
lib/util/samba_modules.h
libcli/echo/tests/echo.c
pidl/lib/Parse/Pidl/Samba4/NDR/Server.pm
source3/auth/auth.c
source3/auth/auth_builtin.c
source3/auth/auth_domain.c
source3/auth/auth_sam.c
source3/auth/auth_samba4.c
source3/auth/auth_script.c
source3/auth/auth_unix.c
source3/auth/auth_winbind.c
source3/auth/proto.h
source3/include/auth.h
source3/include/idmap.h
source3/include/nss_info.h
source3/include/passdb.h
source3/include/smb_perfcount.h
source3/include/vfs.h
source3/modules/perfcount_test.c
source3/modules/vfs_acl_tdb.c
source3/modules/vfs_acl_xattr.c
source3/modules/vfs_afsacl.c
source3/modules/vfs_aio_fork.c
source3/modules/vfs_aio_linux.c
source3/modules/vfs_aio_pthread.c
source3/modules/vfs_aixacl.c
source3/modules/vfs_aixacl2.c
source3/modules/vfs_audit.c
source3/modules/vfs_btrfs.c
source3/modules/vfs_cacheprime.c
source3/modules/vfs_cap.c
source3/modules/vfs_catia.c
source3/modules/vfs_ceph.c
source3/modules/vfs_commit.c
source3/modules/vfs_crossrename.c
source3/modules/vfs_default.c
source3/modules/vfs_default_quota.c
source3/modules/vfs_dfs_samba4.c
source3/modules/vfs_dirsort.c
source3/modules/vfs_expand_msdfs.c
source3/modules/vfs_extd_audit.c
source3/modules/vfs_fake_acls.c
source3/modules/vfs_fake_dfq.c
source3/modules/vfs_fake_perms.c
source3/modules/vfs_fileid.c
source3/modules/vfs_fruit.c
source3/modules/vfs_full_audit.c
source3/modules/vfs_glusterfs.c
source3/modules/vfs_gpfs.c
source3/modules/vfs_hpuxacl.c
source3/modules/vfs_linux_xfs_sgid.c
source3/modules/vfs_media_harmony.c
source3/modules/vfs_netatalk.c
source3/modules/vfs_nfs4acl_xattr.c
source3/modules/vfs_offline.c
source3/modules/vfs_posix_eadb.c
source3/modules/vfs_posixacl.c
source3/modules/vfs_posixacl.h
source3/modules/vfs_prealloc.c
source3/modules/vfs_preopen.c
source3/modules/vfs_readahead.c
source3/modules/vfs_readonly.c
source3/modules/vfs_recycle.c
source3/modules/vfs_shadow_copy.c
source3/modules/vfs_shadow_copy2.c
source3/modules/vfs_shell_snap.c
source3/modules/vfs_snapper.c
source3/modules/vfs_solarisacl.c
source3/modules/vfs_streams_depot.c
source3/modules/vfs_streams_xattr.c
source3/modules/vfs_syncops.c
source3/modules/vfs_time_audit.c
source3/modules/vfs_tru64acl.c
source3/modules/vfs_tsmsm.c
source3/modules/vfs_unityed_media.c
source3/modules/vfs_vxfs.c
source3/modules/vfs_worm.c
source3/modules/vfs_xattr_tdb.c
source3/modules/vfs_zfsacl.c
source3/passdb/pdb_interface.c
source3/passdb/pdb_ldap.c
source3/passdb/pdb_ldap.h
source3/passdb/pdb_nds.c
source3/passdb/pdb_nds.h
source3/passdb/pdb_samba_dsdb.c
source3/passdb/pdb_smbpasswd.c
source3/passdb/pdb_smbpasswd.h
source3/passdb/pdb_tdb.c
source3/passdb/pdb_tdb.h
source3/rpc_server/mdssvc/srv_mdssvc_nt.c
source3/rpc_server/rpc_service_setup.c
source3/smbd/vfs.c
source3/winbindd/idmap.c
source3/winbindd/idmap_ad.c
source3/winbindd/idmap_ad_nss.c
source3/winbindd/idmap_autorid.c
source3/winbindd/idmap_hash/idmap_hash.c
source3/winbindd/idmap_ldap.c
source3/winbindd/idmap_nss.c
source3/winbindd/idmap_passdb.c
source3/winbindd/idmap_proto.h
source3/winbindd/idmap_rfc2307.c
source3/winbindd/idmap_rid.c
source3/winbindd/idmap_script.c
source3/winbindd/idmap_tdb.c
source3/winbindd/idmap_tdb2.c
source3/winbindd/nss_info.c
source3/winbindd/nss_info_template.c
source3/wscript
source4/auth/auth.h
source4/auth/gensec/gensec_gssapi.c
source4/auth/gensec/gensec_krb5.c
source4/auth/ntlm/auth.c
source4/auth/ntlm/auth_anonymous.c
source4/auth/ntlm/auth_developer.c
source4/auth/ntlm/auth_sam.c
source4/auth/ntlm/auth_server_service.c
source4/auth/ntlm/auth_unix.c
source4/auth/ntlm/auth_winbind.c
source4/cldap_server/cldap_server.c
source4/dns_server/dns_server.c
source4/dsdb/dns/dns_update.c
source4/dsdb/kcc/kcc_service.c
source4/dsdb/repl/drepl_service.c
source4/echo_server/echo_server.c
source4/kdc/kdc-heimdal.c
source4/ldap_server/ldap_server.c
source4/lib/com/classes/simple.c
source4/lib/http/gensec/basic.c
source4/lib/http/gensec/ntlm.c
source4/nbt_server/nbt_server.c
source4/ntp_signd/ntp_signd.c
source4/ntvfs/cifs/vfs_cifs.c
source4/ntvfs/cifs_posix_cli/vfs_cifs_posix.c
source4/ntvfs/ipc/vfs_ipc.c
source4/ntvfs/nbench/vfs_nbench.c
source4/ntvfs/ntvfs_base.c
source4/ntvfs/posix/pvfs_acl.c
source4/ntvfs/posix/pvfs_acl_nfs4.c
source4/ntvfs/posix/pvfs_acl_xattr.c
source4/ntvfs/posix/vfs_posix.c
source4/ntvfs/print/vfs_print.c
source4/ntvfs/simple/vfs_simple.c
source4/ntvfs/smb2/vfs_smb2.c
source4/ntvfs/sysdep/inotify.c
source4/ntvfs/sysdep/sys_lease.c
source4/ntvfs/sysdep/sys_lease_linux.c
source4/ntvfs/sysdep/sys_notify.c
source4/ntvfs/unixuid/vfs_unixuid.c
source4/param/share.c
source4/param/share_classic.c
source4/param/share_ldb.c
source4/rpc_server/dcerpc_server.c
source4/rpc_server/lsa/dcesrv_lsa.c
source4/rpc_server/service_rpc.c
source4/smb_server/service_smb.c
source4/smbd/process_model.c
source4/smbd/process_single.c
source4/smbd/process_standard.c
source4/smbd/server.c
source4/torture/basic/base.c
source4/torture/dfs/domaindfs.c
source4/torture/dns/dlz_bind9.c
source4/torture/dns/internal_dns.c
source4/torture/drs/drs_init.c
source4/torture/krb5/kdc-heimdal.c
source4/torture/krb5/kdc-mit.c
source4/torture/ldap/common.c
source4/torture/libnet/libnet.c
source4/torture/libnetapi/libnetapi.c
source4/torture/libsmbclient/libsmbclient.c
source4/torture/local/local.c
source4/torture/nbench/nbench.c
source4/torture/nbt/nbt.c
source4/torture/ntp/ntp_signd.c
source4/torture/rap/rap.c
source4/torture/raw/raw.c
source4/torture/rpc/rpc.c
source4/torture/smb2/smb2.c
source4/torture/smbtorture.c
source4/torture/torture.c
source4/torture/unix/unix.c
source4/torture/vfs/vfs.c
source4/torture/winbind/winbind.c
source4/web_server/web_server.c
source4/winbind/winbindd.c
source4/wrepl_server/wrepl_server.c

index 5e6d15947c93f958ce5d1ad47bf4cc4668dc6d4b..d9324e7dbdd04b197c985253a344a805677b6e92 100644 (file)
@@ -60,6 +60,25 @@ was using this call please raise the issue on
 samba-technical@lists.samba.org in order to design a supported
 way of obtaining the same functionality.
 
 samba-technical@lists.samba.org in order to design a supported
 way of obtaining the same functionality.
 
+Change of loadable module interface
+-----------------------------------
+
+The _init function of all loadable modules in Samba has changed
+from:
+
+NTSTATUS _init(void);
+
+to:
+
+NTSTATUS _init(TALLOC_CTX *);
+
+This allows a program loading a module to pass in a long-lived
+talloc context (which must be guaranteed to be alive for the
+lifetime of the module). This allows modules to avoid use of
+the talloc_autofree_context() (which is inherently thread-unsafe)
+and still be valgrind-clean on exit. Modules that don't need to
+free long-lived data on exist should use the NULL talloc context.
+
 KNOWN ISSUES
 ============
 
 KNOWN ISSUES
 ============
 
index 9c17888a31e21848eb41ef34656c10c84c8dfd36..92295bcf03fb66f6f7cbe4d22946d87068c18b99 100644 (file)
@@ -32,7 +32,7 @@
  * layer is already mutually authenticated.
  */
 
  * layer is already mutually authenticated.
  */
 
-NTSTATUS gensec_external_init(void);
+NTSTATUS gensec_external_init(TALLOC_CTX *ctx);
 
 static NTSTATUS gensec_external_start(struct gensec_security *gensec_security)
 {
 
 static NTSTATUS gensec_external_start(struct gensec_security *gensec_security)
 {
@@ -111,7 +111,7 @@ static const struct gensec_security_ops gensec_external_ops = {
 };
 
 
 };
 
 
-NTSTATUS gensec_external_init(void)
+NTSTATUS gensec_external_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
 
 {
        NTSTATUS ret;
 
index 6764ee5e46155f35fb50b18a13a651f1bb321734..3924a7ce987063f0cf9744e6630dc6170561a2ee 100644 (file)
@@ -107,7 +107,8 @@ struct gensec_settings {
 struct gensec_security_ops;
 struct gensec_security_ops_wrapper;
 
 struct gensec_security_ops;
 struct gensec_security_ops_wrapper;
 
-#define GENSEC_INTERFACE_VERSION 0
+/* Change to 1, loadable modules now take a TALLOC_CTX * init() parameter. */
+#define GENSEC_INTERFACE_VERSION 1
 
 /* this structure is used by backends to determine the size of some critical types */
 struct gensec_critical_sizes;
 
 /* this structure is used by backends to determine the size of some critical types */
 struct gensec_critical_sizes;
index 31a555957cc917165028290800daf244ba020276..83a86cfd654e8762aaff015c994e42cb5ad4605d 100644 (file)
@@ -956,7 +956,7 @@ bool gensec_setting_bool(struct gensec_settings *settings, const char *mechanism
 _PUBLIC_ NTSTATUS gensec_init(void)
 {
        static bool initialized = false;
 _PUBLIC_ NTSTATUS gensec_init(void)
 {
        static bool initialized = false;
-#define _MODULE_PROTO(init) extern NTSTATUS init(void);
+#define _MODULE_PROTO(init) extern NTSTATUS init(TALLOC_CTX *);
 #ifdef STATIC_gensec_MODULES
        STATIC_gensec_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_gensec_MODULES };
 #ifdef STATIC_gensec_MODULES
        STATIC_gensec_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_gensec_MODULES };
@@ -970,8 +970,8 @@ _PUBLIC_ NTSTATUS gensec_init(void)
 
        shared_init = load_samba_modules(NULL, "gensec");
 
 
        shared_init = load_samba_modules(NULL, "gensec");
 
-       run_init_functions(static_init);
-       run_init_functions(shared_init);
+       run_init_functions(NULL, static_init);
+       run_init_functions(NULL, shared_init);
 
        talloc_free(shared_init);
 
 
        talloc_free(shared_init);
 
index e6f33f3d9dea58d7eb4ccb0eed97a862a52b6846..8916ef5d88a9622169e286ac8bd6114a314477a1 100644 (file)
@@ -30,7 +30,7 @@
 #include "lib/param/param.h"
 #include "tsocket.h"
 
 #include "lib/param/param.h"
 #include "tsocket.h"
 
-_PUBLIC_ NTSTATUS gensec_ncalrpc_as_system_init(void);
+_PUBLIC_ NTSTATUS gensec_ncalrpc_as_system_init(TALLOC_CTX *ctx);
 
 struct gensec_ncalrpc_state {
        enum {
 
 struct gensec_ncalrpc_state {
        enum {
@@ -338,7 +338,7 @@ static const struct gensec_security_ops gensec_ncalrpc_security_ops = {
        .priority       = GENSEC_EXTERNAL,
 };
 
        .priority       = GENSEC_EXTERNAL,
 };
 
-_PUBLIC_ NTSTATUS gensec_ncalrpc_as_system_init(void)
+_PUBLIC_ NTSTATUS gensec_ncalrpc_as_system_init(TALLOC_CTX *ctx)
 {
        NTSTATUS status;
 
 {
        NTSTATUS status;
 
index 1b99bb747aaadc145aa147655a46b27caf7a081a..bf169d4acf120108dc3a0ac85a71a8137fd594b4 100644 (file)
@@ -441,7 +441,7 @@ static NTSTATUS netsec_outgoing_packet(struct schannel_state *state,
        return NT_STATUS_OK;
 }
 
        return NT_STATUS_OK;
 }
 
-_PUBLIC_ NTSTATUS gensec_schannel_init(void);
+_PUBLIC_ NTSTATUS gensec_schannel_init(TALLOC_CTX *ctx);
 
 static size_t schannel_sig_size(struct gensec_security *gensec_security, size_t data_size)
 {
 
 static size_t schannel_sig_size(struct gensec_security *gensec_security, size_t data_size)
 {
@@ -849,7 +849,7 @@ static const struct gensec_security_ops gensec_schannel_security_ops = {
        .priority       = GENSEC_SCHANNEL
 };
 
        .priority       = GENSEC_SCHANNEL
 };
 
-_PUBLIC_ NTSTATUS gensec_schannel_init(void)
+_PUBLIC_ NTSTATUS gensec_schannel_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
        ret = gensec_register(&gensec_schannel_security_ops);
 {
        NTSTATUS ret;
        ret = gensec_register(&gensec_schannel_security_ops);
index 017181a36229a41728fb5d459dc043fc317a66fb..4b3edc686ccf0fbb69abf9407e18b87d372493f5 100644 (file)
@@ -34,7 +34,7 @@
 
 #undef strcasecmp
 
 
 #undef strcasecmp
 
-_PUBLIC_ NTSTATUS gensec_spnego_init(void);
+_PUBLIC_ NTSTATUS gensec_spnego_init(TALLOC_CTX *ctx);
 
 enum spnego_state_position {
        SPNEGO_SERVER_START,
 
 enum spnego_state_position {
        SPNEGO_SERVER_START,
@@ -1694,7 +1694,7 @@ static const struct gensec_security_ops gensec_spnego_security_ops = {
        .priority         = GENSEC_SPNEGO
 };
 
        .priority         = GENSEC_SPNEGO
 };
 
-_PUBLIC_ NTSTATUS gensec_spnego_init(void)
+_PUBLIC_ NTSTATUS gensec_spnego_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
        ret = gensec_register(&gensec_spnego_security_ops);
 {
        NTSTATUS ret;
        ret = gensec_register(&gensec_spnego_security_ops);
index 6f7c089467f1991f00874a5c666688a08b645f9d..ec2f6d931723a7f5f317733b5667794b365cc8b7 100644 (file)
@@ -252,7 +252,7 @@ static const struct gensec_security_ops gensec_ntlmssp_resume_ccache_ops = {
        .priority       = GENSEC_NTLMSSP
 };
 
        .priority       = GENSEC_NTLMSSP
 };
 
-_PUBLIC_ NTSTATUS gensec_ntlmssp_init(void)
+_PUBLIC_ NTSTATUS gensec_ntlmssp_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
 
 {
        NTSTATUS ret;
 
index 2412768631287517b516aa7b1947ef82d76836d3..658d3fa86afe7989006819a43745ba120fc0e4cc 100644 (file)
@@ -145,7 +145,7 @@ bool ntlmssp_blob_matches_magic(const DATA_BLOB *blob);
 
 /* The following definitions come from auth/ntlmssp/gensec_ntlmssp.c  */
 
 
 /* The following definitions come from auth/ntlmssp/gensec_ntlmssp.c  */
 
-NTSTATUS gensec_ntlmssp_init(void);
+NTSTATUS gensec_ntlmssp_init(TALLOC_CTX *ctx);
 
 uint32_t gensec_ntlmssp_neg_flags(struct gensec_security *gensec_security);
 const char *gensec_ntlmssp_server_domain(struct gensec_security *gensec_security);
 
 uint32_t gensec_ntlmssp_neg_flags(struct gensec_security *gensec_security);
 const char *gensec_ntlmssp_server_domain(struct gensec_security *gensec_security);
index ceca2cce5f7462c8347153a2e4bbb7de231940c6..0481520c3b8b9f658af9ea216bfbd0e945f71684 100644 (file)
@@ -178,6 +178,9 @@ def write_build_options(task):
                 keys_header_other.append(key)
             else:
                 keys_option_have.append(key)
                 keys_header_other.append(key)
             else:
                 keys_option_have.append(key)
+        elif key.startswith("static_init_"):
+            l = key.split("(")
+            keys_misc.append(l[0])
         else:
             keys_misc.append(key)
 
         else:
             keys_misc.append(key)
 
index a74c17684438166473c418149bd04245b59a30d2..f0d19f1b8e955cb29a95391403a2be9c1effdd66 100644 (file)
@@ -101,7 +101,7 @@ The prototype for these functions is:
 </para>
 
 <para><programlisting>
 </para>
 
 <para><programlisting>
-NTSTATUS init_module(void);
+NTSTATUS init_module(TALLOC_CTX *);
 </programlisting></para>
 
 <para>This function should call one or more 
 </programlisting></para>
 
 <para>This function should call one or more 
@@ -111,7 +111,7 @@ NT_STATUS_UNSUCCESSFUL or a more useful nt error code on failure.</para>
 <para>For example, pdb_ldap_init() contains: </para>
 
 <para><programlisting>
 <para>For example, pdb_ldap_init() contains: </para>
 
 <para><programlisting>
-NTSTATUS pdb_ldap_init(void)
+NTSTATUS pdb_ldap_init(TALLOC_CTX *)
 {
 smb_register_passdb(PASSDB_INTERFACE_VERSION, "ldapsam", pdb_init_ldapsam);
 smb_register_passdb(PASSDB_INTERFACE_VERSION, "ldapsam_nua", pdb_init_ldapsam_nua);
 {
 smb_register_passdb(PASSDB_INTERFACE_VERSION, "ldapsam", pdb_init_ldapsam);
 smb_register_passdb(PASSDB_INTERFACE_VERSION, "ldapsam_nua", pdb_init_ldapsam_nua);
@@ -119,6 +119,16 @@ smb_register_passdb(PASSDB_INTERFACE_VERSION, "ldapsam_nua", pdb_init_ldapsam_nu
 }
 </programlisting></para>
 
 }
 </programlisting></para>
 
+<para>
+The TALLOC_CTX pointer passed as a parameter must be a long-lived context,
+that will stay around for as long as the program that loads the module
+exists. It allows the caller to taloc_free any long lived data the
+module choses to place on this context on program exit (giving a cleaner
+valgrind trace). It should be used by modules in place of talloc_autofree_context(),
+use of which makes programs thread-unsafe. Modules that don't care about
+free on exist should use the NULL talloc context.
+</para>
+
 <sect2>
 <title>Static/Shared selection in configure.in</title>
 
 <sect2>
 <title>Static/Shared selection in configure.in</title>
 
index 05d6e16042d1af594fdf329487cf422953f9e85f..48bf9d580ffe3a91376ed31e60d14376ffe11ffc 100644 (file)
@@ -84,7 +84,7 @@ static struct vfs_fn_pointers vfs_test_shadow_copy_fns = {
 };
 
 static_decl_vfs;
 };
 
 static_decl_vfs;
-NTSTATUS vfs_shadow_copy_test_init(void)
+NTSTATUS vfs_shadow_copy_test_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "shadow_copy_test",
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "shadow_copy_test",
index 94795957fbdfb264e42415215c94ed539d5e84b2..ffd951c0e2d7033575fbe738b843423d3decc85f 100644 (file)
@@ -994,7 +994,7 @@ struct vfs_fn_pointers skel_opaque_fns = {
 };
 
 static_decl_vfs;
 };
 
 static_decl_vfs;
-NTSTATUS vfs_skel_opaque_init(void)
+NTSTATUS vfs_skel_opaque_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "skel_opaque",
                                &skel_opaque_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "skel_opaque",
                                &skel_opaque_fns);
index f60131257ae9d325709e8de9c16dddce33803a4b..afadbc1a5cde8afc68add76eb84db5209a6fae23 100644 (file)
@@ -1119,7 +1119,7 @@ struct vfs_fn_pointers skel_transparent_fns = {
 };
 
 static_decl_vfs;
 };
 
 static_decl_vfs;
-NTSTATUS vfs_skel_transparent_init(void)
+NTSTATUS vfs_skel_transparent_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "skel_transparent",
                                &skel_transparent_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "skel_transparent",
                                &skel_transparent_fns);
index 3f3379f0e93f9744e5bb0bfcc2cd07463e7e922c..6abd5ad4f7acc87469c003c6ab420eca7296d04b 100644 (file)
@@ -67,8 +67,8 @@ static NTSTATUS auth_init_skel(struct auth_context *auth_context, const char *pa
        return NT_STATUS_OK;
 }
 
        return NT_STATUS_OK;
 }
 
-NTSTATUS auth_skel_init(void);
-NTSTATUS auth_skel_init(void)
+NTSTATUS auth_skel_init(TALLOC_CTX *ctx);
+NTSTATUS auth_skel_init(TALLOC_CTX *ctx)
 {
        return smb_register_auth(AUTH_INTERFACE_VERSION, "skel", auth_init_skel);
 }
 {
        return smb_register_auth(AUTH_INTERFACE_VERSION, "skel", auth_init_skel);
 }
index 6d68d87a929ce433bd6e15b0da919009c7877e1f..a5e7dac4933b3267ddd1052dbffbed18a37fa4ac 100644 (file)
@@ -108,7 +108,7 @@ static NTSTATUS testsam_init(struct pdb_methods **pdb_method, const char *locati
 }
 
 static_decl_pdb;
 }
 
 static_decl_pdb;
-NTSTATUS pdb_test_init(void)
+NTSTATUS pdb_test_init(TALLOC_CTX *ctx)
 {
        return smb_register_passdb(PASSDB_INTERFACE_VERSION, "testsam",
                                   testsam_init);
 {
        return smb_register_passdb(PASSDB_INTERFACE_VERSION, "testsam",
                                   testsam_init);
index aab5f39ac76cf2a5c2919f671e6c1ecfb83df200..72d7de5e20f7630ecc241c35e81a9d3c1f0435ac 100644 (file)
@@ -93,9 +93,9 @@ static void s3fs_task_init(struct task_server *task)
 }
 
 /* called at smbd startup - register ourselves as a server service */
 }
 
 /* called at smbd startup - register ourselves as a server service */
-NTSTATUS server_service_s3fs_init(void);
+NTSTATUS server_service_s3fs_init(TALLOC_CTX *);
 
 
-NTSTATUS server_service_s3fs_init(void)
+NTSTATUS server_service_s3fs_init(TALLOC_CTX *ctx)
 {
        return register_server_service("s3fs", s3fs_task_init);
 }
 {
        return register_server_service("s3fs", s3fs_task_init);
 }
index c7e9f64f4059accdbae5dd5d17bca0ce5d8edda3..c3c05f21f339c11f9820050d3b4d29854fc28538 100644 (file)
@@ -116,7 +116,7 @@ static init_module_fn *load_modules(TALLOC_CTX *mem_ctx, const char *path)
  *
  * @return true if all functions ran successfully, false otherwise
  */
  *
  * @return true if all functions ran successfully, false otherwise
  */
-bool run_init_functions(init_module_fn *fns)
+bool run_init_functions(TALLOC_CTX *ctx, init_module_fn *fns)
 {
        int i;
        bool ret = true;
 {
        int i;
        bool ret = true;
@@ -124,7 +124,7 @@ bool run_init_functions(init_module_fn *fns)
        if (fns == NULL)
                return true;
 
        if (fns == NULL)
                return true;
 
-       for (i = 0; fns[i]; i++) { ret &= (bool)NT_STATUS_IS_OK(fns[i]()); }
+       for (i = 0; fns[i]; i++) { ret &= (bool)NT_STATUS_IS_OK(fns[i](ctx)); }
 
        return ret;
 }
 
        return ret;
 }
@@ -195,7 +195,7 @@ static NTSTATUS do_smb_load_module(const char *subsystem,
 
        DEBUG(2, ("Module '%s' loaded\n", module_name));
 
 
        DEBUG(2, ("Module '%s' loaded\n", module_name));
 
-       status = init();
+       status = init(NULL);
        if (!NT_STATUS_IS_OK(status)) {
                DEBUG(0, ("Module '%s' initialization failed: %s\n",
                          module_name, get_friendly_nt_error_msg(status)));
        if (!NT_STATUS_IS_OK(status)) {
                DEBUG(0, ("Module '%s' initialization failed: %s\n",
                          module_name, get_friendly_nt_error_msg(status)));
index 2f4081192952efa5abaf9b11dcdbdcca3a0fdb46..1ae9c6e0e90c4dea1ed84bb6565f87b85cb57cf8 100644 (file)
@@ -22,9 +22,9 @@
 #define _SAMBA_MODULES_H
 
 /* Module support */
 #define _SAMBA_MODULES_H
 
 /* Module support */
-typedef NTSTATUS (*init_module_fn) (void);
+typedef NTSTATUS (*init_module_fn) (TALLOC_CTX *ctx);
 
 
-NTSTATUS samba_init_module(void);
+NTSTATUS samba_init_module(TALLOC_CTX *ctx);
 
 /* this needs to be a string which is not in the C library. We
    previously used "init_module", but that meant that modules which
 
 /* this needs to be a string which is not in the C library. We
    previously used "init_module", but that meant that modules which
@@ -44,7 +44,7 @@ init_module_fn load_module(const char *path, bool is_probe, void **handle);
  *
  * @return true if all functions ran successfully, false otherwise
  */
  *
  * @return true if all functions ran successfully, false otherwise
  */
-bool run_init_functions(init_module_fn *fns);
+bool run_init_functions(TALLOC_CTX *ctx, init_module_fn *fns);
 
 /**
  * Load the initialization functions from DSO files for a specific subsystem.
 
 /**
  * Load the initialization functions from DSO files for a specific subsystem.
index 6424c8100163544c57a53c8ec2ace1ded49392a0..8e5150403eef855b30770acc761714b0176dbfd5 100644 (file)
@@ -26,7 +26,7 @@
 #include "libcli/util/ntstatus.h"
 #include "libcli/echo/libecho.h"
 
 #include "libcli/util/ntstatus.h"
 #include "libcli/echo/libecho.h"
 
-NTSTATUS torture_libcli_echo_init(void);
+NTSTATUS torture_libcli_echo_init(TALLOC_CTX *);
 
 /* Basic test function that sends an echo request and checks the reply */
 static bool echo_udp_basic(struct torture_context *tctx, const char *address)
 
 /* Basic test function that sends an echo request and checks the reply */
 static bool echo_udp_basic(struct torture_context *tctx, const char *address)
@@ -81,7 +81,7 @@ static bool torture_echo_udp(struct torture_context *tctx)
 }
 
 /* Test suite that bundles all the libecho tests */
 }
 
 /* Test suite that bundles all the libecho tests */
-NTSTATUS torture_libcli_echo_init(void)
+NTSTATUS torture_libcli_echo_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite;
 
 {
        struct torture_suite *suite;
 
index 88c7705c3c21a9f1fd8b052bb2811c620d599842..ad36f000077c6486cc94e8ac66e9589f3ad5e937 100644 (file)
@@ -259,7 +259,7 @@ static bool $name\__op_interface_by_name(struct dcesrv_interface *iface, const c
        return false;
 }
 
        return false;
 }
 
-NTSTATUS dcerpc_server_$name\_init(void)
+NTSTATUS dcerpc_server_$name\_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
        static const struct dcesrv_endpoint_server ep_server = {
 {
        NTSTATUS ret;
        static const struct dcesrv_endpoint_server ep_server = {
@@ -296,7 +296,7 @@ sub ParseInterface($)
        my($interface) = shift;
        my $count = 0;
 
        my($interface) = shift;
        my $count = 0;
 
-       $res .= "NTSTATUS dcerpc_server_$interface->{NAME}\_init(void);\n";
+       $res .= "NTSTATUS dcerpc_server_$interface->{NAME}\_init(TALLOC_CTX *);\n";
        $res .= "\n";
 
        if (!defined $interface->{PROPERTIES}->{uuid}) {
        $res .= "\n";
 
        if (!defined $interface->{PROPERTIES}->{uuid}) {
index ba6245d6210567c026a4060e05f3f965acfbbd15..54e9433c2d3b579469b19dd54fb305e91296623e 100644 (file)
@@ -392,7 +392,7 @@ bool load_auth_module(struct auth_context *auth_context,
 
        /* Initialise static modules if not done so yet */
        if(!initialised_static_modules) {
 
        /* Initialise static modules if not done so yet */
        if(!initialised_static_modules) {
-               static_init_auth;
+               static_init_auth(NULL);
                initialised_static_modules = True;
        }
 
                initialised_static_modules = True;
        }
 
index 74807993cb71ae23bd5be6741a09460a6d48b347..0fa95d9f16dc1e74e9a08c5d4a7bbf76ab1f54f3 100644 (file)
@@ -167,7 +167,7 @@ static NTSTATUS auth_init_name_to_ntstatus(struct auth_context *auth_context, co
 
 #endif /* DEVELOPER */
 
 
 #endif /* DEVELOPER */
 
-NTSTATUS auth_builtin_init(void)
+NTSTATUS auth_builtin_init(TALLOC_CTX *mem_ctx)
 {
        smb_register_auth(AUTH_INTERFACE_VERSION, "guest", auth_init_guest);
 #ifdef DEVELOPER
 {
        smb_register_auth(AUTH_INTERFACE_VERSION, "guest", auth_init_guest);
 #ifdef DEVELOPER
index b3ff51806e37be017cdd8ce7dbf35573ca781bdc..40d717d91a9bed5c4bd00814d987b47765b9d213 100644 (file)
@@ -406,7 +406,7 @@ static NTSTATUS auth_init_trustdomain(struct auth_context *auth_context, const c
        return NT_STATUS_OK;
 }
 
        return NT_STATUS_OK;
 }
 
-NTSTATUS auth_domain_init(void) 
+NTSTATUS auth_domain_init(TALLOC_CTX *mem_ctx)
 {
        smb_register_auth(AUTH_INTERFACE_VERSION, "trustdomain", auth_init_trustdomain);
        smb_register_auth(AUTH_INTERFACE_VERSION, "ntdomain", auth_init_ntdomain);
 {
        smb_register_auth(AUTH_INTERFACE_VERSION, "trustdomain", auth_init_trustdomain);
        smb_register_auth(AUTH_INTERFACE_VERSION, "ntdomain", auth_init_ntdomain);
index 634386f8d6d3a4bb54d19785bf3adbdb24d7d552..4bcb7926c6e6730863a4a2d94f1f25a62b3329e3 100644 (file)
@@ -188,7 +188,7 @@ static NTSTATUS auth_init_sam_netlogon3(struct auth_context *auth_context,
        return NT_STATUS_OK;
 }
 
        return NT_STATUS_OK;
 }
 
-NTSTATUS auth_sam_init(void)
+NTSTATUS auth_sam_init(TALLOC_CTX *mem_ctx)
 {
        smb_register_auth(AUTH_INTERFACE_VERSION, "sam", auth_init_sam);
        smb_register_auth(AUTH_INTERFACE_VERSION, "sam_ignoredomain", auth_init_sam_ignoredomain);
 {
        smb_register_auth(AUTH_INTERFACE_VERSION, "sam", auth_init_sam);
        smb_register_auth(AUTH_INTERFACE_VERSION, "sam_ignoredomain", auth_init_sam_ignoredomain);
index 4c83c2aa823b02decb73c858196470b1141a8fec..46c8f9ffd623bdc3bb295b8164e7ba1e2bcaab59 100644 (file)
@@ -391,8 +391,8 @@ static NTSTATUS auth_init_samba4(struct auth_context *auth_context,
        return NT_STATUS_OK;
 }
 
        return NT_STATUS_OK;
 }
 
-NTSTATUS auth_samba4_init(void);
-NTSTATUS auth_samba4_init(void)
+NTSTATUS auth_samba4_init(TALLOC_CTX *mem_ctx);
+NTSTATUS auth_samba4_init(TALLOC_CTX *mem_ctx)
 {
        smb_register_auth(AUTH_INTERFACE_VERSION, "samba4",
                          auth_init_samba4);
 {
        smb_register_auth(AUTH_INTERFACE_VERSION, "samba4",
                          auth_init_samba4);
index dc8794bf169075b039ccbc86120fc086e306abcf..fae55e98c2423782abb266618617949ee792769f 100644 (file)
@@ -180,8 +180,8 @@ static NTSTATUS auth_init_script(struct auth_context *auth_context, const char *
        return NT_STATUS_OK;
 }
 
        return NT_STATUS_OK;
 }
 
-NTSTATUS auth_script_init(void);
-NTSTATUS auth_script_init(void)
+NTSTATUS auth_script_init(TALLOC_CTX *);
+NTSTATUS auth_script_init(TALLOC_CTX *ctx)
 {
        return smb_register_auth(AUTH_INTERFACE_VERSION, "script", auth_init_script);
 }
 {
        return smb_register_auth(AUTH_INTERFACE_VERSION, "script", auth_init_script);
 }
index a4e5b740bb76104cacc3a100814d5eba4c55335f..08d4e002e3da7482e5c4510f118da6a8db3e9e67 100644 (file)
@@ -98,7 +98,7 @@ static NTSTATUS auth_init_unix(struct auth_context *auth_context, const char* pa
        return NT_STATUS_OK;
 }
 
        return NT_STATUS_OK;
 }
 
-NTSTATUS auth_unix_init(void)
+NTSTATUS auth_unix_init(TALLOC_CTX *mem_ctx)
 {
        return smb_register_auth(AUTH_INTERFACE_VERSION, "unix", auth_init_unix);
 }
 {
        return smb_register_auth(AUTH_INTERFACE_VERSION, "unix", auth_init_unix);
 }
index e6a629658c01aa164253313d85e61005d1ecdd7a..6bf2118037dc350e31f940c585ca4bc2dcfb5083 100644 (file)
@@ -178,7 +178,7 @@ static NTSTATUS auth_init_winbind(struct auth_context *auth_context, const char
        return NT_STATUS_OK;
 }
 
        return NT_STATUS_OK;
 }
 
-NTSTATUS auth_winbind_init(void)
+NTSTATUS auth_winbind_init(TALLOC_CTX *mem_ctx)
 {
        return smb_register_auth(AUTH_INTERFACE_VERSION, "winbind", auth_init_winbind);
 }
 {
        return smb_register_auth(AUTH_INTERFACE_VERSION, "winbind", auth_init_winbind);
 }
index 348b882dc761dab33c24fb147be2f644898f8445..4a1aa24c53cb555c6ae5a272a47e1c777d7662e8 100644 (file)
@@ -95,12 +95,12 @@ NTSTATUS auth_check_ntlm_password(TALLOC_CTX *mem_ctx,
 
 /* The following definitions come from auth/auth_builtin.c  */
 
 
 /* The following definitions come from auth/auth_builtin.c  */
 
-NTSTATUS auth_builtin_init(void);
+NTSTATUS auth_builtin_init(TALLOC_CTX *mem_ctx);
 
 /* The following definitions come from auth/auth_domain.c  */
 
 void attempt_machine_password_change(void);
 
 /* The following definitions come from auth/auth_domain.c  */
 
 void attempt_machine_password_change(void);
-NTSTATUS auth_domain_init(void);
+NTSTATUS auth_domain_init(TALLOC_CTX *mem_ctx);
 
 /* The following definitions come from auth/auth_generic.c  */
 
 
 /* The following definitions come from auth/auth_generic.c  */
 
@@ -149,11 +149,11 @@ NTSTATUS check_sam_security_info3(const DATA_BLOB *challenge,
                                  TALLOC_CTX *mem_ctx,
                                  const struct auth_usersupplied_info *user_info,
                                  struct netr_SamInfo3 **pinfo3);
                                  TALLOC_CTX *mem_ctx,
                                  const struct auth_usersupplied_info *user_info,
                                  struct netr_SamInfo3 **pinfo3);
-NTSTATUS auth_sam_init(void);
+NTSTATUS auth_sam_init(TALLOC_CTX *mem_ctx);
 
 /* The following definitions come from auth/auth_unix.c  */
 
 
 /* The following definitions come from auth/auth_unix.c  */
 
-NTSTATUS auth_unix_init(void);
+NTSTATUS auth_unix_init(TALLOC_CTX *mem_ctx);
 
 /* The following definitions come from auth/auth_util.c  */
 struct tsocket_address;
 
 /* The following definitions come from auth/auth_util.c  */
 struct tsocket_address;
@@ -302,7 +302,7 @@ NTSTATUS do_map_to_guest_server_info(TALLOC_CTX *mem_ctx,
 
 /* The following definitions come from auth/auth_winbind.c  */
 
 
 /* The following definitions come from auth/auth_winbind.c  */
 
-NTSTATUS auth_winbind_init(void);
+NTSTATUS auth_winbind_init(TALLOC_CTX *mem_ctx);
 
 /* The following definitions come from auth/server_info.c  */
 
 
 /* The following definitions come from auth/server_info.c  */
 
@@ -409,6 +409,6 @@ NTSTATUS make_session_info_krb5(TALLOC_CTX *mem_ctx,
 
 /* The following definitions come from auth/auth_samba4.c  */
 
 
 /* The following definitions come from auth/auth_samba4.c  */
 
-NTSTATUS auth_samba4_init(void);
+NTSTATUS auth_samba4_init(TALLOC_CTX *mem_ctx);
 
 #endif /* _AUTH_PROTO_H_ */
 
 #endif /* _AUTH_PROTO_H_ */
index 406c2c5231e0b1c99794aebf5402a28088c226c8..b7223c15036fee6aa58e804b1158c3082d68aa3a 100644 (file)
@@ -140,7 +140,8 @@ enum session_key_use_intent {
 /* Changed from 1 -> 2 to add the logon_parameters field. */
 /* Changed from 2 -> 3 when we reworked many auth structures to use IDL or be in common with Samba4 */
 /* Changed from 3 -> 4 when we reworked added the flags */
 /* Changed from 1 -> 2 to add the logon_parameters field. */
 /* Changed from 2 -> 3 when we reworked many auth structures to use IDL or be in common with Samba4 */
 /* Changed from 3 -> 4 when we reworked added the flags */
-#define AUTH_INTERFACE_VERSION 4
+/* Changed from 4 -> 5 as module init functions now take a TALLOC_CTX * */
+#define AUTH_INTERFACE_VERSION 5
 
 #include "auth/proto.h"
 
 
 #include "auth/proto.h"
 
index c379eba37005011dd0211541ca5f99f0809eeba4..75d2e45b17429d4bad511ddadd4cfa8baf85fdbe 100644 (file)
@@ -27,8 +27,9 @@
 
 /* Updated to 4, completely new interface, SSS */
 /* Updated to 5, simplified interface by Volker */
 
 /* Updated to 4, completely new interface, SSS */
 /* Updated to 5, simplified interface by Volker */
+/* Updated to 6, modules now take TALLOC_CTX * init parameter. */
 
 
-#define SMB_IDMAP_INTERFACE_VERSION 5
+#define SMB_IDMAP_INTERFACE_VERSION 6
 
 #include "librpc/gen_ndr/idmap.h"
 
 
 #include "librpc/gen_ndr/idmap.h"
 
index 54b4399056af1e69e6eb086f786782714c409323..448f8847be906f68a9061e98a8459e177ac057d1 100644 (file)
@@ -90,7 +90,7 @@ NTSTATUS nss_close( const char *parameters );
 
 /* The following definitions come from winbindd/nss_info_template.c  */
 
 
 /* The following definitions come from winbindd/nss_info_template.c  */
 
-NTSTATUS nss_info_template_init( void );
+NTSTATUS nss_info_template_init(TALLOC_CTX *mem_ctx);
 
 #endif /* _IDMAP_NSS_H_ */
 
 
 #endif /* _IDMAP_NSS_H_ */
 
index 8175829b3871089be86dfc8ec312df72177bbf5b..dcf806be8c0f8c866c9220536487dfbddb16f490 100644 (file)
@@ -418,9 +418,10 @@ enum pdb_policy_type {
  * Changed to 23, new idmap control functions
  * Changed to 24, removed uid_to_sid and gid_to_sid, replaced with id_to_sid
  * Leave at 24, add optional get_trusteddom_creds()
  * Changed to 23, new idmap control functions
  * Changed to 24, removed uid_to_sid and gid_to_sid, replaced with id_to_sid
  * Leave at 24, add optional get_trusteddom_creds()
+ * Change to 25, loadable modules now have a TALLOC_CTX * parameter in init.
  */
 
  */
 
-#define PASSDB_INTERFACE_VERSION 24
+#define PASSDB_INTERFACE_VERSION 25
 
 struct pdb_methods 
 {
 
 struct pdb_methods 
 {
index 9c83147d04204e081e5e3454890c98c5be4fade7..efefb3c00b872d733fdf228dd139696c5b588d91 100644 (file)
@@ -20,7 +20,8 @@
 #ifndef _SMB_PERFCOUNT_H_
 #define _SMB_PERFCOUNT_H_
 
 #ifndef _SMB_PERFCOUNT_H_
 #define _SMB_PERFCOUNT_H_
 
-#define SMB_PERFCOUNTER_INTERFACE_VERSION      1
+/* Change to 2, loadable modules now take a TALLOC_CTX * parameter. */
+#define SMB_PERFCOUNTER_INTERFACE_VERSION      2
 
 struct smb_perfcount_data{
        struct smb_perfcount_handlers *handlers;
 
 struct smb_perfcount_data{
        struct smb_perfcount_handlers *handlers;
index 0810fc29fc87a598cd2ed6ea71f2c7394d416b94..f6df93a6acf73daaa310c14d44f1561392e7096d 100644 (file)
 /* Version 35 - Add bool use_ofd_locks to struct files_struct */
 /* Bump to version 36 - Samba 4.6 will ship with that */
 /* Version 36 - Remove is_offline and set_offline */
 /* Version 35 - Add bool use_ofd_locks to struct files_struct */
 /* Bump to version 36 - Samba 4.6 will ship with that */
 /* Version 36 - Remove is_offline and set_offline */
+/* Version 37 - Module init functions now take a TALLOC_CTX * parameter. */
 
 
-#define SMB_VFS_INTERFACE_VERSION 36
+#define SMB_VFS_INTERFACE_VERSION 37
 
 /*
     All intercepted VFS operations must be declared as static functions inside module source
 
 /*
     All intercepted VFS operations must be declared as static functions inside module source
index ccc74dde62e24aeefddc0ce59530ebb7eecec3a3..1e006c34bad745a1bf46222bfdd241107f4bb1cd 100644 (file)
@@ -386,7 +386,7 @@ static struct smb_perfcount_handlers perfcount_test_handlers = {
 };
 
 static_decl_perfcount;
 };
 
 static_decl_perfcount;
-NTSTATUS perfcount_test_init(void)
+NTSTATUS perfcount_test_init(TALLOC_CTX *ctx)
 {
        return smb_register_perfcounter(SMB_PERFCOUNTER_INTERFACE_VERSION,
                                        "pc_test", &perfcount_test_handlers);
 {
        return smb_register_perfcounter(SMB_PERFCOUNTER_INTERFACE_VERSION,
                                        "pc_test", &perfcount_test_handlers);
index a71bfdce5beed73a766b0c7599adc231284aff51..68abc33012ce1f65a4404f0144bc282f998424f0 100644 (file)
@@ -455,7 +455,7 @@ static struct vfs_fn_pointers vfs_acl_tdb_fns = {
 };
 
 static_decl_vfs;
 };
 
 static_decl_vfs;
-NTSTATUS vfs_acl_tdb_init(void)
+NTSTATUS vfs_acl_tdb_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "acl_tdb",
                                &vfs_acl_tdb_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "acl_tdb",
                                &vfs_acl_tdb_fns);
index bb2e565a3e195338e59981ceb2dcf00800471099..96bd0166655bae5d0c74f7248941532af58954b6 100644 (file)
@@ -295,7 +295,7 @@ static struct vfs_fn_pointers vfs_acl_xattr_fns = {
 };
 
 static_decl_vfs;
 };
 
 static_decl_vfs;
-NTSTATUS vfs_acl_xattr_init(void)
+NTSTATUS vfs_acl_xattr_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "acl_xattr",
                                &vfs_acl_xattr_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "acl_xattr",
                                &vfs_acl_xattr_fns);
index 5838fd01c2f1a846d47e0c838630fd97cc7e7c6a..f34495b87bcd4a80c311a4776f2ea287ccd1dbca 100644 (file)
@@ -1107,8 +1107,8 @@ static struct vfs_fn_pointers vfs_afsacl_fns = {
        .sys_acl_blob_get_fd_fn = afsacl_sys_acl_blob_get_fd
 };
 
        .sys_acl_blob_get_fd_fn = afsacl_sys_acl_blob_get_fd
 };
 
-NTSTATUS vfs_afsacl_init(void);
-NTSTATUS vfs_afsacl_init(void)
+NTSTATUS vfs_afsacl_init(TALLOC_CTX *);
+NTSTATUS vfs_afsacl_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "afsacl",
                                &vfs_afsacl_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "afsacl",
                                &vfs_afsacl_fns);
index e9ba4a3791dfd00eaa9ef06831142bf56ed378fa..8e47531ebd1470a8d05f14ea9c5107ef40e954a9 100644 (file)
@@ -919,8 +919,8 @@ static struct vfs_fn_pointers vfs_aio_fork_fns = {
        .fsync_recv_fn = aio_fork_fsync_recv,
 };
 
        .fsync_recv_fn = aio_fork_fsync_recv,
 };
 
-NTSTATUS vfs_aio_fork_init(void);
-NTSTATUS vfs_aio_fork_init(void)
+NTSTATUS vfs_aio_fork_init(TALLOC_CTX *);
+NTSTATUS vfs_aio_fork_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "aio_fork", &vfs_aio_fork_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "aio_fork", &vfs_aio_fork_fns);
index 55ef1df2c8c4f5babef80ca3552a0f5ac7ba701c..e89c2905bad5f71bb929eb73c86ee4487fd1e04d 100644 (file)
@@ -339,7 +339,7 @@ static struct vfs_fn_pointers vfs_aio_linux_fns = {
 };
 
 static_decl_vfs;
 };
 
 static_decl_vfs;
-NTSTATUS vfs_aio_linux_init(void)
+NTSTATUS vfs_aio_linux_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "aio_linux", &vfs_aio_linux_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "aio_linux", &vfs_aio_linux_fns);
index 97ae86f999fc566dfec6c792251764b6597c54c6..1d9346cfb65d29d35e24b678060db3b909053fe9 100644 (file)
@@ -496,8 +496,8 @@ static struct vfs_fn_pointers vfs_aio_pthread_fns = {
 #endif
 };
 
 #endif
 };
 
-NTSTATUS vfs_aio_pthread_init(void);
-NTSTATUS vfs_aio_pthread_init(void)
+NTSTATUS vfs_aio_pthread_init(TALLOC_CTX *);
+NTSTATUS vfs_aio_pthread_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "aio_pthread", &vfs_aio_pthread_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "aio_pthread", &vfs_aio_pthread_fns);
index 459ea6f2979e7c743bc958e3cbf21661d4d1b33f..169058f2afcabedebdc87b45dc1a425533a37741 100644 (file)
@@ -189,8 +189,8 @@ static struct vfs_fn_pointers vfs_aixacl_fns = {
        .sys_acl_delete_def_file_fn = aixacl_sys_acl_delete_def_file,
 };
 
        .sys_acl_delete_def_file_fn = aixacl_sys_acl_delete_def_file,
 };
 
-NTSTATUS vfs_aixacl_init(void);
-NTSTATUS vfs_aixacl_init(void)
+NTSTATUS vfs_aixacl_init(TALLOC_CTX *);
+NTSTATUS vfs_aixacl_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "aixacl",
                                &vfs_aixacl_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "aixacl",
                                &vfs_aixacl_fns);
index c4a026459f333f62837310fc26e8a27125e7bfd9..aaf6e293ec39b39dbe6225808eeaa96d1ca1fb40 100644 (file)
@@ -559,8 +559,8 @@ static struct vfs_fn_pointers vfs_aixacl2_fns = {
        .sys_acl_delete_def_file_fn = aixjfs2_sys_acl_delete_def_file
 };
 
        .sys_acl_delete_def_file_fn = aixjfs2_sys_acl_delete_def_file
 };
 
-NTSTATUS vfs_aixacl2_init(void);
-NTSTATUS vfs_aixacl2_init(void)
+NTSTATUS vfs_aixacl2_init(TALLOC_CTX *);
+NTSTATUS vfs_aixacl2_init(TALLOC_CTX *ctx)
 {
         return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, AIXACL2_MODULE_NAME,
                                &vfs_aixacl2_fns);
 {
         return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, AIXACL2_MODULE_NAME,
                                &vfs_aixacl2_fns);
index cef3bb5ab4f1c5a3ace33b13a258131ece87bbef..12477d5b01f786c70eb36a11c4a2101591ce86b7 100644 (file)
@@ -294,7 +294,7 @@ static struct vfs_fn_pointers vfs_audit_fns = {
 };
 
 static_decl_vfs;
 };
 
 static_decl_vfs;
-NTSTATUS vfs_audit_init(void)
+NTSTATUS vfs_audit_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "audit",
                                &vfs_audit_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "audit",
                                &vfs_audit_fns);
index 154fcc32ba9c4a7217d2d1522e6a5dbd42f455dd..ab4fd99ba2c3e64bd46b8e303e43ba4a52062835 100644 (file)
@@ -676,8 +676,8 @@ static struct vfs_fn_pointers btrfs_fns = {
        .snap_delete_fn = btrfs_snap_delete,
 };
 
        .snap_delete_fn = btrfs_snap_delete,
 };
 
-NTSTATUS vfs_btrfs_init(void);
-NTSTATUS vfs_btrfs_init(void)
+NTSTATUS vfs_btrfs_init(TALLOC_CTX *);
+NTSTATUS vfs_btrfs_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "btrfs", &btrfs_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "btrfs", &btrfs_fns);
index cb8b3280582c81688c90661bdc1ac6f2fa3f47f4..526a0574c5f1612d91de4e82a041564c80b738e7 100644 (file)
@@ -189,8 +189,8 @@ static struct vfs_fn_pointers vfs_cacheprime_fns = {
  * -------------------------------------------------------------------------
  */
 
  * -------------------------------------------------------------------------
  */
 
-NTSTATUS vfs_cacheprime_init(void);
-NTSTATUS vfs_cacheprime_init(void)
+NTSTATUS vfs_cacheprime_init(TALLOC_CTX *);
+NTSTATUS vfs_cacheprime_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, MODULE,
                                &vfs_cacheprime_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, MODULE,
                                &vfs_cacheprime_fns);
index eece1986f90055a3d82b296692fb3f6d72053bc5..03608301bf5deb0f38b4b8671029a79a5b77d353 100644 (file)
@@ -694,8 +694,8 @@ static struct vfs_fn_pointers vfs_cap_fns = {
        .fsetxattr_fn = cap_fsetxattr
 };
 
        .fsetxattr_fn = cap_fsetxattr
 };
 
-NTSTATUS vfs_cap_init(void);
-NTSTATUS vfs_cap_init(void)
+NTSTATUS vfs_cap_init(TALLOC_CTX *);
+NTSTATUS vfs_cap_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "cap",
                                &vfs_cap_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "cap",
                                &vfs_cap_fns);
index 0ee7c36a361c6576472436b2e4ba69b5e1721d87..9a283710fcb0e53f41068fca8a4146bea0ab61dd 100644 (file)
@@ -2427,7 +2427,7 @@ static struct vfs_fn_pointers vfs_catia_fns = {
 };
 
 static_decl_vfs;
 };
 
 static_decl_vfs;
-NTSTATUS vfs_catia_init(void)
+NTSTATUS vfs_catia_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
 
 {
        NTSTATUS ret;
 
index b74c2143e9143c3f7b5d55454adddf8bf2260efa..d819fe18dc35fee26451c4ccf762d05cdb5b51a5 100644 (file)
@@ -1433,8 +1433,8 @@ static struct vfs_fn_pointers ceph_fns = {
        .aio_force_fn = cephwrap_aio_force,
 };
 
        .aio_force_fn = cephwrap_aio_force,
 };
 
-NTSTATUS vfs_ceph_init(void);
-NTSTATUS vfs_ceph_init(void)
+NTSTATUS vfs_ceph_init(TALLOC_CTX *);
+NTSTATUS vfs_ceph_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "ceph", &ceph_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "ceph", &ceph_fns);
index b870eb24fc6dd89cd5881d8d62e3559807e004fe..340276a79004f43359efe14abb5561867ba1b95e 100644 (file)
@@ -403,8 +403,8 @@ static struct vfs_fn_pointers vfs_commit_fns = {
         .ftruncate_fn = commit_ftruncate
 };
 
         .ftruncate_fn = commit_ftruncate
 };
 
-NTSTATUS vfs_commit_init(void);
-NTSTATUS vfs_commit_init(void)
+NTSTATUS vfs_commit_init(TALLOC_CTX *);
+NTSTATUS vfs_commit_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, MODULE,
                                &vfs_commit_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, MODULE,
                                &vfs_commit_fns);
index c7534b43198e7dde563d9ebf2a6c9f6d0ff16a49..4daa82c5e98da2299ba5a163c10d0c8e5c8cad0c 100644 (file)
@@ -198,8 +198,8 @@ static struct vfs_fn_pointers vfs_crossrename_fns = {
        .rename_fn = crossrename_rename
 };
 
        .rename_fn = crossrename_rename
 };
 
-NTSTATUS vfs_crossrename_init(void);
-NTSTATUS vfs_crossrename_init(void)
+NTSTATUS vfs_crossrename_init(TALLOC_CTX *);
+NTSTATUS vfs_crossrename_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, MODULE,
                                &vfs_crossrename_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, MODULE,
                                &vfs_crossrename_fns);
index 73af4f743482a2f618177399f0147df89a710cf1..d660120561024b195f622e142456e55f4cb17dc2 100644 (file)
@@ -2961,8 +2961,8 @@ static struct vfs_fn_pointers vfs_default_fns = {
        .durable_reconnect_fn = vfswrap_durable_reconnect,
 };
 
        .durable_reconnect_fn = vfswrap_durable_reconnect,
 };
 
-NTSTATUS vfs_default_init(void);
-NTSTATUS vfs_default_init(void)
+NTSTATUS vfs_default_init(TALLOC_CTX *);
+NTSTATUS vfs_default_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                DEFAULT_VFS_MODULE_NAME, &vfs_default_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                DEFAULT_VFS_MODULE_NAME, &vfs_default_fns);
index c8d718cb5b906704c8f384e6248af31d5731cb2b..6f1d2a7f619b87c316ae4d34b7506c82018c35d1 100644 (file)
@@ -225,8 +225,8 @@ static struct vfs_fn_pointers vfs_default_quota_fns = {
        .set_quota_fn = default_quota_set_quota
 };
 
        .set_quota_fn = default_quota_set_quota
 };
 
-NTSTATUS vfs_default_quota_init(void);
-NTSTATUS vfs_default_quota_init(void)
+NTSTATUS vfs_default_quota_init(TALLOC_CTX *);
+NTSTATUS vfs_default_quota_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, DEFAULT_QUOTA_NAME,
                                &vfs_default_quota_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, DEFAULT_QUOTA_NAME,
                                &vfs_default_quota_fns);
index e77a993331734442fcb750dd6129bf1b54182969..0bf1a29c8c65833103fa6a5ff8d2f4bab0757627 100644 (file)
@@ -135,8 +135,8 @@ static struct vfs_fn_pointers vfs_dfs_samba4_fns = {
        .get_dfs_referrals_fn = dfs_samba4_get_referrals,
 };
 
        .get_dfs_referrals_fn = dfs_samba4_get_referrals,
 };
 
-NTSTATUS vfs_dfs_samba4_init(void);
-NTSTATUS vfs_dfs_samba4_init(void)
+NTSTATUS vfs_dfs_samba4_init(TALLOC_CTX *);
+NTSTATUS vfs_dfs_samba4_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
 
 {
        NTSTATUS ret;
 
index cd5597a3b401b7d6adf184df602adc2fceb466b6..fc35186a4022933cf64544c74aadc125f4bfa29e 100644 (file)
@@ -379,7 +379,7 @@ static struct vfs_fn_pointers vfs_dirsort_fns = {
 };
 
 static_decl_vfs;
 };
 
 static_decl_vfs;
-NTSTATUS vfs_dirsort_init(void)
+NTSTATUS vfs_dirsort_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "dirsort",
                                &vfs_dirsort_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "dirsort",
                                &vfs_dirsort_fns);
index e42d0098b32b10b792d39b6da596e907f6972903..b0e51987523020290461ae71e8fcf88fe7c1d8a2 100644 (file)
@@ -226,8 +226,8 @@ static struct vfs_fn_pointers vfs_expand_msdfs_fns = {
        .readlink_fn = expand_msdfs_readlink
 };
 
        .readlink_fn = expand_msdfs_readlink
 };
 
-NTSTATUS vfs_expand_msdfs_init(void);
-NTSTATUS vfs_expand_msdfs_init(void)
+NTSTATUS vfs_expand_msdfs_init(TALLOC_CTX *);
+NTSTATUS vfs_expand_msdfs_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "expand_msdfs",
                                &vfs_expand_msdfs_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "expand_msdfs",
                                &vfs_expand_msdfs_fns);
index 0d8ca59732da3c41cf257892ab996476ee685664..7d1fe273978fa4f9452114b47a2b96cdb0592e7c 100644 (file)
@@ -371,7 +371,7 @@ static struct vfs_fn_pointers vfs_extd_audit_fns = {
 };
 
 static_decl_vfs;
 };
 
 static_decl_vfs;
-NTSTATUS vfs_extd_audit_init(void)
+NTSTATUS vfs_extd_audit_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret = smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                        "extd_audit", &vfs_extd_audit_fns);
 {
        NTSTATUS ret = smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                        "extd_audit", &vfs_extd_audit_fns);
index 55ff7db37df31e9c91271bd29c8bce9d5a061fba..62b53b6dd61ecda594226934d10df3136ae85fb8 100644 (file)
@@ -508,8 +508,8 @@ static struct vfs_fn_pointers vfs_fake_acls_fns = {
        
 };
 
        
 };
 
-NTSTATUS vfs_fake_acls_init(void);
-NTSTATUS vfs_fake_acls_init(void)
+NTSTATUS vfs_fake_acls_init(TALLOC_CTX *);
+NTSTATUS vfs_fake_acls_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "fake_acls",
                                &vfs_fake_acls_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "fake_acls",
                                &vfs_fake_acls_fns);
index 51ab7bb46d99723d622f8f1f0e3c04d5016870b3..f13ec7de40ccf1b49629ae15c721569f6e0f8225 100644 (file)
@@ -175,7 +175,7 @@ struct vfs_fn_pointers vfs_fake_dfq_fns = {
 };
 
 static_decl_vfs;
 };
 
 static_decl_vfs;
-NTSTATUS vfs_fake_dfq_init(void)
+NTSTATUS vfs_fake_dfq_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "fake_dfq",
                                &vfs_fake_dfq_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "fake_dfq",
                                &vfs_fake_dfq_fns);
index 8eb6e3c7792ab7d277b70f796f00984f8aa60abd..299bb48ae134fac9b77b4cc97e6d2efab424ccac 100644 (file)
@@ -100,8 +100,8 @@ static struct vfs_fn_pointers vfs_fake_perms_fns = {
        .fstat_fn = fake_perms_fstat
 };
 
        .fstat_fn = fake_perms_fstat
 };
 
-NTSTATUS vfs_fake_perms_init(void);
-NTSTATUS vfs_fake_perms_init(void)
+NTSTATUS vfs_fake_perms_init(TALLOC_CTX *);
+NTSTATUS vfs_fake_perms_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "fake_perms",
                                &vfs_fake_perms_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "fake_perms",
                                &vfs_fake_perms_fns);
index f274059f93f5cfbf24d99a7489f6f023164a4a37..f751486535a141a80c549e1b1b3c7824ae93bb71 100644 (file)
@@ -258,8 +258,8 @@ static struct vfs_fn_pointers vfs_fileid_fns = {
        .file_id_create_fn = fileid_file_id_create
 };
 
        .file_id_create_fn = fileid_file_id_create
 };
 
-NTSTATUS vfs_fileid_init(void);
-NTSTATUS vfs_fileid_init(void)
+NTSTATUS vfs_fileid_init(TALLOC_CTX *);
+NTSTATUS vfs_fileid_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
 
 {
        NTSTATUS ret;
 
index b74714586f6e454317d3e6cb10c1b4ac9aa0256f..1c1b7d76c147635dad0dea0d9474994520f5c942 100644 (file)
@@ -5428,8 +5428,8 @@ static struct vfs_fn_pointers vfs_fruit_fns = {
        .fset_nt_acl_fn = fruit_fset_nt_acl,
 };
 
        .fset_nt_acl_fn = fruit_fset_nt_acl,
 };
 
-NTSTATUS vfs_fruit_init(void);
-NTSTATUS vfs_fruit_init(void)
+NTSTATUS vfs_fruit_init(TALLOC_CTX *);
+NTSTATUS vfs_fruit_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret = smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "fruit",
                                        &vfs_fruit_fns);
 {
        NTSTATUS ret = smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "fruit",
                                        &vfs_fruit_fns);
index 613ce6cc62ad690bcae9c7b0fa73a929ed327154..6614fbba903b5d366a825f432b1a28fdec918581 100644 (file)
@@ -2560,7 +2560,7 @@ static struct vfs_fn_pointers vfs_full_audit_fns = {
 };
 
 static_decl_vfs;
 };
 
 static_decl_vfs;
-NTSTATUS vfs_full_audit_init(void)
+NTSTATUS vfs_full_audit_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
 
 {
        NTSTATUS ret;
 
index 1c9be2d97f1eb74f2f07adeca5b4f03b41537017..628dea7933697c30079bea62b214d668ad385f1f 100644 (file)
@@ -1488,8 +1488,8 @@ static struct vfs_fn_pointers glusterfs_fns = {
        .durable_reconnect_fn = NULL,
 };
 
        .durable_reconnect_fn = NULL,
 };
 
-NTSTATUS vfs_glusterfs_init(void);
-NTSTATUS vfs_glusterfs_init(void)
+NTSTATUS vfs_glusterfs_init(TALLOC_CTX *);
+NTSTATUS vfs_glusterfs_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "glusterfs", &glusterfs_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "glusterfs", &glusterfs_fns);
index f7434c95d820c5d303d8427529c2997a0fed1186..d1d59ce63219c984e2275696df88cc65dc470745 100644 (file)
@@ -2513,8 +2513,8 @@ static struct vfs_fn_pointers vfs_gpfs_fns = {
        .ftruncate_fn = vfs_gpfs_ftruncate
 };
 
        .ftruncate_fn = vfs_gpfs_ftruncate
 };
 
-NTSTATUS vfs_gpfs_init(void);
-NTSTATUS vfs_gpfs_init(void)
+NTSTATUS vfs_gpfs_init(TALLOC_CTX *);
+NTSTATUS vfs_gpfs_init(TALLOC_CTX *ctx)
 {
        int ret;
 
 {
        int ret;
 
index df27c89f948349e328e1f112baf7e6d2a8452dbc..d91657a00a684ce0d08b51bbec9678f54dd8dd1c 100644 (file)
@@ -1165,7 +1165,7 @@ static struct vfs_fn_pointers hpuxacl_fns = {
        .sys_acl_delete_def_file_fn = hpuxacl_sys_acl_delete_def_file,
 };
 
        .sys_acl_delete_def_file_fn = hpuxacl_sys_acl_delete_def_file,
 };
 
-NTSTATUS vfs_hpuxacl_init(void)
+NTSTATUS vfs_hpuxacl_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "hpuxacl",
                                &hpuxacl_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "hpuxacl",
                                &hpuxacl_fns);
index 0c0507b0c5a24eb8432b45507ef35246028d1211..841d7c3c4b1576093b5ef00784c59aad03e20478 100644 (file)
@@ -108,8 +108,8 @@ static struct vfs_fn_pointers linux_xfs_sgid_fns = {
        .chmod_acl_fn = linux_xfs_sgid_chmod_acl,
 };
 
        .chmod_acl_fn = linux_xfs_sgid_chmod_acl,
 };
 
-NTSTATUS vfs_linux_xfs_sgid_init(void);
-NTSTATUS vfs_linux_xfs_sgid_init(void)
+NTSTATUS vfs_linux_xfs_sgid_init(TALLOC_CTX *);
+NTSTATUS vfs_linux_xfs_sgid_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "linux_xfs_sgid", &linux_xfs_sgid_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "linux_xfs_sgid", &linux_xfs_sgid_fns);
index d6a93f8445f4a76fa001e2dcf67a89a8ecaa8e07..794644ed493ee306cc2f76299fb7d75026b2023d 100644 (file)
@@ -2431,8 +2431,8 @@ static struct vfs_fn_pointers vfs_mh_fns = {
        /* aio operations */
 };
 
        /* aio operations */
 };
 
-NTSTATUS vfs_media_harmony_init(void);
-NTSTATUS vfs_media_harmony_init(void)
+NTSTATUS vfs_media_harmony_init(TALLOC_CTX *);
+NTSTATUS vfs_media_harmony_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret = smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "media_harmony", &vfs_mh_fns);
 {
        NTSTATUS ret = smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "media_harmony", &vfs_mh_fns);
index 2b67b913246ad5349f2da2354944c906838d576f..5715c6dd6ac24c49242427f77f1434cb9fe0b2d3 100644 (file)
@@ -480,8 +480,8 @@ static struct vfs_fn_pointers vfs_netatalk_fns = {
        .lchown_fn = atalk_lchown,
 };
 
        .lchown_fn = atalk_lchown,
 };
 
-NTSTATUS vfs_netatalk_init(void);
-NTSTATUS vfs_netatalk_init(void)
+NTSTATUS vfs_netatalk_init(TALLOC_CTX *);
+NTSTATUS vfs_netatalk_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "netatalk",
                                &vfs_netatalk_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "netatalk",
                                &vfs_netatalk_fns);
index 273c9265a351eacfde6cbd87ed71e5d176b038e2..a22ae7fc2848e8a7fecaa73b7cfc22dba7566fe3 100644 (file)
@@ -645,8 +645,8 @@ static struct vfs_fn_pointers nfs4acl_xattr_fns = {
        .fset_nt_acl_fn = nfs4acl_xattr_fset_nt_acl,
 };
 
        .fset_nt_acl_fn = nfs4acl_xattr_fset_nt_acl,
 };
 
-NTSTATUS vfs_nfs4acl_xattr_init(void);
-NTSTATUS vfs_nfs4acl_xattr_init(void)
+NTSTATUS vfs_nfs4acl_xattr_init(TALLOC_CTX *);
+NTSTATUS vfs_nfs4acl_xattr_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "nfs4acl_xattr",
                                &nfs4acl_xattr_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "nfs4acl_xattr",
                                &nfs4acl_xattr_fns);
index e2d66fa930ee74ab4d5f7b89a0a0ff0036b5ecbb..e8cb4394b3c916a49481c1171546b4b8429bb751 100644 (file)
@@ -49,8 +49,8 @@ static struct vfs_fn_pointers offline_fns = {
        .fget_dos_attributes_fn = offline_fget_dos_attributes,
 };
 
        .fget_dos_attributes_fn = offline_fget_dos_attributes,
 };
 
-NTSTATUS vfs_offline_init(void);
-NTSTATUS vfs_offline_init(void)
+NTSTATUS vfs_offline_init(TALLOC_CTX *);
+NTSTATUS vfs_offline_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "offline",
                                &offline_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "offline",
                                &offline_fns);
index 2c7717a508b5f93003ed78465430725816e9e1a3..129f0720d55fb2018e5481a5a96624358b917190 100644 (file)
@@ -434,7 +434,7 @@ static struct vfs_fn_pointers vfs_posix_eadb_fns = {
 };
 
 static_decl_vfs;
 };
 
 static_decl_vfs;
-NTSTATUS vfs_posix_eadb_init(void)
+NTSTATUS vfs_posix_eadb_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "posix_eadb",
                                &vfs_posix_eadb_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "posix_eadb",
                                &vfs_posix_eadb_fns);
index aeadcbcf43da16d1164287bf2707009a79c7c7ec..85d84a578f5977cf0716825c70e93bb16a7ef0c5 100644 (file)
@@ -380,8 +380,8 @@ static struct vfs_fn_pointers posixacl_fns = {
        .sys_acl_delete_def_file_fn = posixacl_sys_acl_delete_def_file,
 };
 
        .sys_acl_delete_def_file_fn = posixacl_sys_acl_delete_def_file,
 };
 
-NTSTATUS vfs_posixacl_init(void);
-NTSTATUS vfs_posixacl_init(void)
+NTSTATUS vfs_posixacl_init(TALLOC_CTX *);
+NTSTATUS vfs_posixacl_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "posixacl",
                                &posixacl_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "posixacl",
                                &posixacl_fns);
index b0fe841e1ba63d41ce732090e192bedefed82111..59d3dc964bd555c4310133eedb904a97c0c0fc40 100644 (file)
@@ -42,7 +42,7 @@ int posixacl_sys_acl_set_fd(vfs_handle_struct *handle,
 int posixacl_sys_acl_delete_def_file(vfs_handle_struct *handle,
                                     const char *path);
 
 int posixacl_sys_acl_delete_def_file(vfs_handle_struct *handle,
                                     const char *path);
 
-NTSTATUS vfs_posixacl_init(void);
+NTSTATUS vfs_posixacl_init(TALLOC_CTX *);
 
 #endif
 
 
 #endif
 
index 7b96d362a35cf31b259907bc845dcda67a92ad7c..cec537c88ef28298523970b25f3831cbebf14604 100644 (file)
@@ -213,8 +213,8 @@ static struct vfs_fn_pointers prealloc_fns = {
        .connect_fn = prealloc_connect,
 };
 
        .connect_fn = prealloc_connect,
 };
 
-NTSTATUS vfs_prealloc_init(void);
-NTSTATUS vfs_prealloc_init(void)
+NTSTATUS vfs_prealloc_init(TALLOC_CTX *);
+NTSTATUS vfs_prealloc_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                MODULE, &prealloc_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                MODULE, &prealloc_fns);
index 8bf30b6745ee11fa2c59443071c2ad9c02046f47..12ec4763a6283dbd1cf91f15b813452184d9886d 100644 (file)
@@ -449,8 +449,8 @@ static struct vfs_fn_pointers vfs_preopen_fns = {
        .open_fn = preopen_open
 };
 
        .open_fn = preopen_open
 };
 
-NTSTATUS vfs_preopen_init(void);
-NTSTATUS vfs_preopen_init(void)
+NTSTATUS vfs_preopen_init(TALLOC_CTX *);
+NTSTATUS vfs_preopen_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "preopen", &vfs_preopen_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "preopen", &vfs_preopen_fns);
index 8cb85c756144a29ca5693fa4750b3e7ea75baf3a..129ac1b33405758cfa4dbf72eff7918390b0aa82 100644 (file)
@@ -178,8 +178,8 @@ static struct vfs_fn_pointers vfs_readahead_fns = {
  Module initialization boilerplate.
 *******************************************************************/
 
  Module initialization boilerplate.
 *******************************************************************/
 
-NTSTATUS vfs_readahead_init(void);
-NTSTATUS vfs_readahead_init(void)
+NTSTATUS vfs_readahead_init(TALLOC_CTX *);
+NTSTATUS vfs_readahead_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "readahead",
                                &vfs_readahead_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "readahead",
                                &vfs_readahead_fns);
index 445f947810353b320e1423ef028cc300fb6078b4..cde8ef973ca158075b227dd5ae07984fc8b52e69 100644 (file)
@@ -105,8 +105,8 @@ static struct vfs_fn_pointers vfs_readonly_fns = {
        .connect_fn = readonly_connect
 };
 
        .connect_fn = readonly_connect
 };
 
-NTSTATUS vfs_readonly_init(void);
-NTSTATUS vfs_readonly_init(void)
+NTSTATUS vfs_readonly_init(TALLOC_CTX *);
+NTSTATUS vfs_readonly_init(TALLOC_CTX *ctx)
 {
   return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, MODULE_NAME,
                          &vfs_readonly_fns);
 {
   return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, MODULE_NAME,
                          &vfs_readonly_fns);
index dfc3b9cc0f352f841c48c3f11d86f73fee191653..5032f269cc046782f19454394850ff9662c90b9d 100644 (file)
@@ -662,8 +662,8 @@ static struct vfs_fn_pointers vfs_recycle_fns = {
        .unlink_fn = recycle_unlink
 };
 
        .unlink_fn = recycle_unlink
 };
 
-NTSTATUS vfs_recycle_init(void);
-NTSTATUS vfs_recycle_init(void)
+NTSTATUS vfs_recycle_init(TALLOC_CTX *);
+NTSTATUS vfs_recycle_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret = smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "recycle",
                                        &vfs_recycle_fns);
 {
        NTSTATUS ret = smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "recycle",
                                        &vfs_recycle_fns);
index dae70f555e565be7c4515e7e2e063b4b2eed19ad..59f9e528f5134b6808f4f8f477afbe6cdd78bb88 100644 (file)
@@ -309,8 +309,8 @@ static struct vfs_fn_pointers vfs_shadow_copy_fns = {
        .get_shadow_copy_data_fn = shadow_copy_get_shadow_copy_data,
 };
 
        .get_shadow_copy_data_fn = shadow_copy_get_shadow_copy_data,
 };
 
-NTSTATUS vfs_shadow_copy_init(void);
-NTSTATUS vfs_shadow_copy_init(void)
+NTSTATUS vfs_shadow_copy_init(TALLOC_CTX *);
+NTSTATUS vfs_shadow_copy_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret = smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                        "shadow_copy", &vfs_shadow_copy_fns);
 {
        NTSTATUS ret = smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                        "shadow_copy", &vfs_shadow_copy_fns);
index 7cacac81c1c970b218ea917456b754e09703b197..6777d7a82085ffcc82fde6bdbca594f1f545b111 100644 (file)
@@ -3104,8 +3104,8 @@ static struct vfs_fn_pointers vfs_shadow_copy2_fns = {
        .connectpath_fn = shadow_copy2_connectpath,
 };
 
        .connectpath_fn = shadow_copy2_connectpath,
 };
 
-NTSTATUS vfs_shadow_copy2_init(void);
-NTSTATUS vfs_shadow_copy2_init(void)
+NTSTATUS vfs_shadow_copy2_init(TALLOC_CTX *);
+NTSTATUS vfs_shadow_copy2_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "shadow_copy2", &vfs_shadow_copy2_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "shadow_copy2", &vfs_shadow_copy2_fns);
index 2273652b360a8520307e3eb007c777260c7733de..97bcf6431132edaac9147033ae656f27158ff1a7 100644 (file)
@@ -193,8 +193,8 @@ static struct vfs_fn_pointers shell_snap_fns = {
        .snap_delete_fn = shell_snap_delete,
 };
 
        .snap_delete_fn = shell_snap_delete,
 };
 
-NTSTATUS vfs_shell_snap_init(void);
-NTSTATUS vfs_shell_snap_init(void)
+NTSTATUS vfs_shell_snap_init(TALLOC_CTX *);
+NTSTATUS vfs_shell_snap_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "shell_snap", &shell_snap_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "shell_snap", &shell_snap_fns);
index a0d3d91e3066b9addbb1cd4ff1109d7d89f802fe..69e2ab90a6222b8ef68c1f63504134e358d59ae8 100644 (file)
@@ -2974,8 +2974,8 @@ static struct vfs_fn_pointers snapper_fns = {
        .get_real_filename_fn = snapper_gmt_get_real_filename,
 };
 
        .get_real_filename_fn = snapper_gmt_get_real_filename,
 };
 
-NTSTATUS vfs_snapper_init(void);
-NTSTATUS vfs_snapper_init(void)
+NTSTATUS vfs_snapper_init(TALLOC_CTX *);
+NTSTATUS vfs_snapper_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "snapper", &snapper_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "snapper", &snapper_fns);
index 6367794d961c7a4271be48f1310d7bd520c8deb2..e5a581c05f815cb6e677af6ce4efb2590c38b530 100644 (file)
@@ -766,8 +766,8 @@ static struct vfs_fn_pointers solarisacl_fns = {
        .sys_acl_delete_def_file_fn = solarisacl_sys_acl_delete_def_file,
 };
 
        .sys_acl_delete_def_file_fn = solarisacl_sys_acl_delete_def_file,
 };
 
-NTSTATUS vfs_solarisacl_init(void);
-NTSTATUS vfs_solarisacl_init(void)
+NTSTATUS vfs_solarisacl_init(TALLOC_CTX *);
+NTSTATUS vfs_solarisacl_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "solarisacl",
                                &solarisacl_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "solarisacl",
                                &solarisacl_fns);
index aa54b8d9a2183e0a248cab2c39ce1f8ad4c27c3d..58d3a06c310ecd5fb5ec694fc59d0e1bb85b7a2f 100644 (file)
@@ -1059,8 +1059,8 @@ static struct vfs_fn_pointers vfs_streams_depot_fns = {
        .streaminfo_fn = streams_depot_streaminfo,
 };
 
        .streaminfo_fn = streams_depot_streaminfo,
 };
 
-NTSTATUS vfs_streams_depot_init(void);
-NTSTATUS vfs_streams_depot_init(void)
+NTSTATUS vfs_streams_depot_init(TALLOC_CTX *);
+NTSTATUS vfs_streams_depot_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "streams_depot",
                                &vfs_streams_depot_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "streams_depot",
                                &vfs_streams_depot_fns);
index 66926367823ebbe6e7102fd7975d4f4a91d0ae4d..2943e521264cc1c01eabd1fc324e49f371c278f9 100644 (file)
@@ -1158,8 +1158,8 @@ static struct vfs_fn_pointers vfs_streams_xattr_fns = {
        .streaminfo_fn = streams_xattr_streaminfo,
 };
 
        .streaminfo_fn = streams_xattr_streaminfo,
 };
 
-NTSTATUS vfs_streams_xattr_init(void);
-NTSTATUS vfs_streams_xattr_init(void)
+NTSTATUS vfs_streams_xattr_init(TALLOC_CTX *);
+NTSTATUS vfs_streams_xattr_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "streams_xattr",
                                &vfs_streams_xattr_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "streams_xattr",
                                &vfs_streams_xattr_fns);
index 8b5d79c63d0214827476cd52b780af799ce62f7d..381b80bf87e7735d77f4141e03758fcf7232aa9d 100644 (file)
@@ -295,7 +295,7 @@ static struct vfs_fn_pointers vfs_syncops_fns = {
 };
 
 static_decl_vfs;
 };
 
 static_decl_vfs;
-NTSTATUS vfs_syncops_init(void)
+NTSTATUS vfs_syncops_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
 
 {
        NTSTATUS ret;
 
index 986fe798d7f8461900634585404e83d30d9043ac..2ac3d97a2008c2af866507c2388c380bbba69e31 100644 (file)
@@ -2680,8 +2680,8 @@ static struct vfs_fn_pointers vfs_time_audit_fns = {
 };
 
 
 };
 
 
-NTSTATUS vfs_time_audit_init(void);
-NTSTATUS vfs_time_audit_init(void)
+NTSTATUS vfs_time_audit_init(TALLOC_CTX *);
+NTSTATUS vfs_time_audit_init(TALLOC_CTX *ctx)
 {
        smb_vfs_assert_all_fns(&vfs_time_audit_fns, "time_audit");
 
 {
        smb_vfs_assert_all_fns(&vfs_time_audit_fns, "time_audit");
 
index 97f4d5c30bc228d61f595e4d35035f73a1586c25..83edc15205edef8681254d0a5fd177be4ca55833 100644 (file)
@@ -480,8 +480,8 @@ static struct vfs_fn_pointers tru64acl_fns = {
        .sys_acl_delete_def_file_fn = tru64acl_sys_acl_delete_def_file,
 };
 
        .sys_acl_delete_def_file_fn = tru64acl_sys_acl_delete_def_file,
 };
 
-NTSTATUS vfs_tru64acl_init(void);
-NTSTATUS vfs_tru64acl_init(void)
+NTSTATUS vfs_tru64acl_init(TALLOC_CTX *);
+NTSTATUS vfs_tru64acl_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "tru64acl",
                                &tru64acl_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "tru64acl",
                                &tru64acl_fns);
index eba19ff71f5ec2b6beebf9591959cdedaa7c89e3..b3493e7512d0d67c7eb0a125d58dcefc7ed63d8d 100644 (file)
@@ -608,8 +608,8 @@ static struct vfs_fn_pointers tsmsm_fns = {
        .fget_dos_attributes_fn = tsmsm_fget_dos_attributes,
 };
 
        .fget_dos_attributes_fn = tsmsm_fget_dos_attributes,
 };
 
-NTSTATUS vfs_tsmsm_init(void);
-NTSTATUS vfs_tsmsm_init(void)
+NTSTATUS vfs_tsmsm_init(TALLOC_CTX *);
+NTSTATUS vfs_tsmsm_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "tsmsm", &tsmsm_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                "tsmsm", &tsmsm_fns);
index d8191e115996f8f905f657fe244c88139ccd5e78..ccafb882df70b572059917cbefe4d189f7a255d8 100644 (file)
@@ -1905,8 +1905,8 @@ static struct vfs_fn_pointers vfs_um_fns = {
        .setxattr_fn = um_setxattr,
 };
 
        .setxattr_fn = um_setxattr,
 };
 
-NTSTATUS vfs_unityed_media_init(void);
-NTSTATUS vfs_unityed_media_init(void)
+NTSTATUS vfs_unityed_media_init(TALLOC_CTX *);
+NTSTATUS vfs_unityed_media_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret = smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                        "unityed_media", &vfs_um_fns);
 {
        NTSTATUS ret = smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
                                        "unityed_media", &vfs_um_fns);
index feb3d49a3e66f05e415f072262c2d20d5f53c5e2..f8b0dfa82c5f6f325d0d5bd454a65a59cd649818 100644 (file)
@@ -826,8 +826,8 @@ static struct vfs_fn_pointers vfs_vxfs_fns = {
        .fsetxattr_fn = vxfs_fset_xattr,
 };
 
        .fsetxattr_fn = vxfs_fset_xattr,
 };
 
-NTSTATUS vfs_vxfs_init(void);
-NTSTATUS vfs_vxfs_init(void)
+NTSTATUS vfs_vxfs_init(TALLOC_CTX *);
+NTSTATUS vfs_vxfs_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "vxfs",
                                &vfs_vxfs_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "vxfs",
                                &vfs_vxfs_fns);
index 9638d96053484e66dc472a921d9b1d858b284aee..f7dfe734b86d417233cf29f24c918eccb23f0c47 100644 (file)
@@ -86,8 +86,8 @@ static struct vfs_fn_pointers vfs_worm_fns = {
        .create_file_fn = vfs_worm_create_file,
 };
 
        .create_file_fn = vfs_worm_create_file,
 };
 
-NTSTATUS vfs_worm_init(void);
-NTSTATUS vfs_worm_init(void)
+NTSTATUS vfs_worm_init(TALLOC_CTX *);
+NTSTATUS vfs_worm_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
 
 {
        NTSTATUS ret;
 
index 58acf446d2e6e571d579429a2f507c87975e8e58..12ccbca59200671fa583ab055ebc807f3b76a2c0 100644 (file)
@@ -608,8 +608,8 @@ static struct vfs_fn_pointers vfs_xattr_tdb_fns = {
        .connect_fn = xattr_tdb_connect,
 };
 
        .connect_fn = xattr_tdb_connect,
 };
 
-NTSTATUS vfs_xattr_tdb_init(void);
-NTSTATUS vfs_xattr_tdb_init(void)
+NTSTATUS vfs_xattr_tdb_init(TALLOC_CTX *);
+NTSTATUS vfs_xattr_tdb_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "xattr_tdb",
                                &vfs_xattr_tdb_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "xattr_tdb",
                                &vfs_xattr_tdb_fns);
index a0993fff79c0a58668ac3b917a2fae2e14a1b1f4..6eadf42e600e4e468e0483ea79f336f9bf1ba395 100644 (file)
@@ -344,8 +344,8 @@ static struct vfs_fn_pointers zfsacl_fns = {
        .fset_nt_acl_fn = zfsacl_fset_nt_acl,
 };
 
        .fset_nt_acl_fn = zfsacl_fset_nt_acl,
 };
 
-NTSTATUS vfs_zfsacl_init(void);
-NTSTATUS vfs_zfsacl_init(void)
+NTSTATUS vfs_zfsacl_init(TALLOC_CTX *);
+NTSTATUS vfs_zfsacl_init(TALLOC_CTX *ctx)
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "zfsacl",
                                &zfsacl_fns);
 {
        return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "zfsacl",
                                &zfsacl_fns);
index 36ae576eb206b9e4e9e1e5168f79ab0a289bf6cb..49752dde659169d4ec08df90caccebd3fad435f2 100644 (file)
@@ -51,7 +51,7 @@ static void lazy_initialize_passdb(void)
        if(initialized) {
                return;
        }
        if(initialized) {
                return;
        }
-       static_init_pdb;
+       static_init_pdb(NULL);
        initialized = True;
 }
 
        initialized = True;
 }
 
index 951417583bc78ea4008c8aa4399a93fae6f65a47..c495448dcc57ef3314cd87ba7ac3ef13f8d92786 100644 (file)
@@ -6726,7 +6726,7 @@ NTSTATUS pdb_ldapsam_init_common(struct pdb_methods **pdb_method,
        return NT_STATUS_OK;
 }
 
        return NT_STATUS_OK;
 }
 
-NTSTATUS pdb_ldapsam_init(void)
+NTSTATUS pdb_ldapsam_init(TALLOC_CTX *ctx)
 {
        NTSTATUS nt_status;
 
 {
        NTSTATUS nt_status;
 
@@ -6738,7 +6738,7 @@ NTSTATUS pdb_ldapsam_init(void)
        }
 
        /* Let pdb_nds register backends */
        }
 
        /* Let pdb_nds register backends */
-       pdb_nds_init();
+       pdb_nds_init(ctx);
 
        return NT_STATUS_OK;
 }
 
        return NT_STATUS_OK;
 }
index e55b0a461b51f73be479f8a0ea4a1bde24f08ed0..d83c2afbbba9d593993e479ffbf8937a8a0b1ebb 100644 (file)
@@ -60,7 +60,7 @@ struct ldapsam_privates {
 
 const char** get_userattr_list( TALLOC_CTX *mem_ctx, int schema_ver );
 NTSTATUS pdb_ldapsam_init_common(struct pdb_methods **pdb_method, const char *location);
 
 const char** get_userattr_list( TALLOC_CTX *mem_ctx, int schema_ver );
 NTSTATUS pdb_ldapsam_init_common(struct pdb_methods **pdb_method, const char *location);
-NTSTATUS pdb_ldapsam_init(void);
+NTSTATUS pdb_ldapsam_init(TALLOC_CTX *);
 int ldapsam_search_suffix_by_name(struct ldapsam_privates *ldap_state,
                                   const char *user,
                                   LDAPMessage ** result,
 int ldapsam_search_suffix_by_name(struct ldapsam_privates *ldap_state,
                                   const char *user,
                                   LDAPMessage ** result,
index 6d1637376de02e88ada154999c75b7759eba39ef..6245ecbae2db497eb8d39303cb8ff03368b33317 100644 (file)
@@ -893,7 +893,7 @@ static NTSTATUS pdb_init_NDS_ldapsam(struct pdb_methods **pdb_method, const char
        return nt_status;
 }
 
        return nt_status;
 }
 
-NTSTATUS pdb_nds_init(void)
+NTSTATUS pdb_nds_init(TALLOC_CTX *ctx)
 {
        NTSTATUS nt_status;
        if (!NT_STATUS_IS_OK(nt_status = smb_register_passdb(PASSDB_INTERFACE_VERSION, "NDS_ldapsam", pdb_init_NDS_ldapsam)))
 {
        NTSTATUS nt_status;
        if (!NT_STATUS_IS_OK(nt_status = smb_register_passdb(PASSDB_INTERFACE_VERSION, "NDS_ldapsam", pdb_init_NDS_ldapsam)))
index e73a3ba42b6925b548dd323d0800b59f10545fd6..66d8319afed7f437d59743ab9183962d7399d0d0 100644 (file)
@@ -34,6 +34,6 @@ int pdb_nds_set_password(
        struct smbldap_state *ldap_state,
        char *object_dn,
        const char *pwd );
        struct smbldap_state *ldap_state,
        char *object_dn,
        const char *pwd );
-NTSTATUS pdb_nds_init(void);
+NTSTATUS pdb_nds_init(TALLOC_CTX *);
 
 #endif /* _PASSDB_PDB_NDS_H_ */
 
 #endif /* _PASSDB_PDB_NDS_H_ */
index 97c05c6224ea055c268cb56ffa5b06e1ac3808f3..cfa492b442ab099cbe7f2841c416902ddadba843 100644 (file)
@@ -3090,8 +3090,8 @@ fail:
        return status;
 }
 
        return status;
 }
 
-NTSTATUS pdb_samba_dsdb_init(void);
-NTSTATUS pdb_samba_dsdb_init(void)
+NTSTATUS pdb_samba_dsdb_init(TALLOC_CTX *);
+NTSTATUS pdb_samba_dsdb_init(TALLOC_CTX *ctx)
 {
        NTSTATUS status = smb_register_passdb(PASSDB_INTERFACE_VERSION, "samba_dsdb",
                                              pdb_init_samba_dsdb);
 {
        NTSTATUS status = smb_register_passdb(PASSDB_INTERFACE_VERSION, "samba_dsdb",
                                              pdb_init_samba_dsdb);
index 8a75fde644e1c8e5e78e276652ed6d3684bf795e..9c381471ddae384328541af58f401568f0a2f9e6 100644 (file)
@@ -1720,7 +1720,7 @@ static NTSTATUS pdb_init_smbpasswd( struct pdb_methods **pdb_method, const char
        return NT_STATUS_OK;
 }
 
        return NT_STATUS_OK;
 }
 
-NTSTATUS pdb_smbpasswd_init(void
+NTSTATUS pdb_smbpasswd_init(TALLOC_CTX *ctx
 {
        return smb_register_passdb(PASSDB_INTERFACE_VERSION, "smbpasswd", pdb_init_smbpasswd);
 }
 {
        return smb_register_passdb(PASSDB_INTERFACE_VERSION, "smbpasswd", pdb_init_smbpasswd);
 }
index ccabd38eda7ddbd26b2642354f01e9a15928e197..5dd7c8cc54b8e6bca6f752eb542771dbe44d3172 100644 (file)
@@ -25,6 +25,6 @@
 
 /* The following definitions come from passdb/pdb_smbpasswd.c  */
 
 
 /* The following definitions come from passdb/pdb_smbpasswd.c  */
 
-NTSTATUS pdb_smbpasswd_init(void) ;
+NTSTATUS pdb_smbpasswd_init(TALLOC_CTX *) ;
 
 #endif /* _PASSDB_PDB_SMBPASSWD_H_ */
 
 #endif /* _PASSDB_PDB_SMBPASSWD_H_ */
index 6453c9f48b994a45697e9e9bbf0ca7aa9899f4b3..6f3dda6e2291965dda4c98f36660c1016e92c8db 100644 (file)
@@ -1348,7 +1348,7 @@ static NTSTATUS pdb_init_tdbsam(struct pdb_methods **pdb_method, const char *loc
        return NT_STATUS_OK;
 }
 
        return NT_STATUS_OK;
 }
 
-NTSTATUS pdb_tdbsam_init(void)
+NTSTATUS pdb_tdbsam_init(TALLOC_CTX *ctx)
 {
        return smb_register_passdb(PASSDB_INTERFACE_VERSION, "tdbsam", pdb_init_tdbsam);
 }
 {
        return smb_register_passdb(PASSDB_INTERFACE_VERSION, "tdbsam", pdb_init_tdbsam);
 }
index e2ecfb20f77915dcf660dddcd37b0a04ca7c3717..b90beb7019fc70e6dcb5a27a5e567610defc4153 100644 (file)
@@ -27,6 +27,6 @@
 #ifndef _PASSDB_PDB_TDB_H_
 #define _PASSDB_PDB_TDB_H_
 
 #ifndef _PASSDB_PDB_TDB_H_
 #define _PASSDB_PDB_TDB_H_
 
-NTSTATUS pdb_tdbsam_init(void);
+NTSTATUS pdb_tdbsam_init(TALLOC_CTX *);
 
 #endif /* _PASSDB_PDB_TDB_H_ */
 
 #endif /* _PASSDB_PDB_TDB_H_ */
index 37b13e79a0bbee8af8975bfe114efd3646eccb72..c2770a2ec6c8373aa44a5a80464cc567c3c3ba91 100644 (file)
@@ -86,7 +86,7 @@ static struct rpc_module_fns rpc_module_mdssvc_fns = {
 };
 
 static_decl_rpc;
 };
 
 static_decl_rpc;
-NTSTATUS rpc_mdssvc_module_init(void)
+NTSTATUS rpc_mdssvc_module_init(TALLOC_CTX *mem_ctx)
 {
        DBG_DEBUG("Registering mdsvc RPC service\n");
 
 {
        DBG_DEBUG("Registering mdsvc RPC service\n");
 
index 751a6387fb6c6b59d8e9e0b156e439ec61ae7988..9c755e672c837a67a7f1b05a315d2a08c82aa900 100644 (file)
@@ -531,7 +531,7 @@ bool dcesrv_ep_setup(struct tevent_context *ev_ctx,
        }
 
        /* Initialize static subsystems */
        }
 
        /* Initialize static subsystems */
-       static_init_rpc;
+       static_init_rpc(NULL);
 
        /* Initialize shared modules */
        mod_init_fns = load_samba_modules(tmp_ctx, "rpc");
 
        /* Initialize shared modules */
        mod_init_fns = load_samba_modules(tmp_ctx, "rpc");
@@ -547,7 +547,7 @@ bool dcesrv_ep_setup(struct tevent_context *ev_ctx,
                goto done;
        }
 
                goto done;
        }
 
-       ok = run_init_functions(mod_init_fns);
+       ok = run_init_functions(NULL, mod_init_fns);
        if (!ok) {
                DBG_ERR("Initializing shared RPC modules failed\n");
                goto done;
        if (!ok) {
                DBG_ERR("Initializing shared RPC modules failed\n");
                goto done;
index b7364b7c7bd81ad9b7384bd493bed759a91ed7be..f75172a45cfa41120016b83bd66edc922da49666 100644 (file)
@@ -133,7 +133,7 @@ bool vfs_init_custom(connection_struct *conn, const char *vfs_object)
        }
 
        if(!backends) {
        }
 
        if(!backends) {
-               static_init_vfs;
+               static_init_vfs(NULL);
        }
 
        DEBUG(3, ("Initialising custom vfs hooks from [%s]\n", vfs_object));
        }
 
        DEBUG(3, ("Initialising custom vfs hooks from [%s]\n", vfs_object));
index dda8d0a4ba162e3af2cf044b56014e7bf626594f..70f35aeee07bf70756d55771e4622467ff3ad6ad 100644 (file)
@@ -143,7 +143,7 @@ static bool idmap_init(void)
 
        DEBUG(10, ("idmap_init(): calling static_init_idmap\n"));
 
 
        DEBUG(10, ("idmap_init(): calling static_init_idmap\n"));
 
-       static_init_idmap;
+       static_init_idmap(NULL);
 
        initialized = true;
 
 
        initialized = true;
 
index 1dbc3e467843dff247ab6f0ea773d5f302ac8d8e..8c9e97bffc47106e2c6f2231f85aaaf7413fb782 100644 (file)
@@ -931,7 +931,7 @@ static struct idmap_methods ad_methods = {
 };
 
 static_decl_idmap;
 };
 
 static_decl_idmap;
-NTSTATUS idmap_ad_init(void)
+NTSTATUS idmap_ad_init(TALLOC_CTX *ctx)
 {
        NTSTATUS status;
 
 {
        NTSTATUS status;
 
@@ -941,7 +941,7 @@ NTSTATUS idmap_ad_init(void)
                return status;
        }
 
                return status;
        }
 
-       status = idmap_ad_nss_init();
+       status = idmap_ad_nss_init(ctx);
        if (!NT_STATUS_IS_OK(status)) {
                return status;
        }
        if (!NT_STATUS_IS_OK(status)) {
                return status;
        }
index 8b27b36b2caab492a2a2c6f69170c8ca1c8939b0..87c78149656fdbed96452cef6f6bca904816f21a 100644 (file)
@@ -394,7 +394,7 @@ static struct nss_info_methods nss_sfu20_methods = {
  Initialize the plugins
  ***********************************************************************/
 
  Initialize the plugins
  ***********************************************************************/
 
-NTSTATUS idmap_ad_nss_init(void)
+NTSTATUS idmap_ad_nss_init(TALLOC_CTX *mem_ctx)
 {
        NTSTATUS status;
 
 {
        NTSTATUS status;
 
index 9793bfe5472e06ab877d6d357f27825f5c660ea7..5748c8077c9dabf1bd08486a241425e36534301c 100644 (file)
@@ -924,7 +924,7 @@ static struct idmap_methods autorid_methods = {
 };
 
 static_decl_idmap;
 };
 
 static_decl_idmap;
-NTSTATUS idmap_autorid_init(void)
+NTSTATUS idmap_autorid_init(TALLOC_CTX *ctx)
 {
        return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION,
                                  "autorid", &autorid_methods);
 {
        return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION,
                                  "autorid", &autorid_methods);
index 36cc0f1e354f66e2d782cff64f9ad598a1e8f1ac..589027154d4fcc78c0a531dbc2528d4a3b7ea5ef 100644 (file)
@@ -350,7 +350,7 @@ static struct nss_info_methods hash_nss_methods = {
  **********************************************************************/
 
 static_decl_idmap;
  **********************************************************************/
 
 static_decl_idmap;
-NTSTATUS idmap_hash_init(void)
+NTSTATUS idmap_hash_init(TALLOC_CTX *ctx)
 {
        static NTSTATUS idmap_status = NT_STATUS_UNSUCCESSFUL;
        static NTSTATUS nss_status = NT_STATUS_UNSUCCESSFUL;
 {
        static NTSTATUS idmap_status = NT_STATUS_UNSUCCESSFUL;
        static NTSTATUS nss_status = NT_STATUS_UNSUCCESSFUL;
index 4b896c22190e2fc3952a745c68724df514a287cc..39aa8330735d23648aeea69aa5b676f0bb4590cd 100644 (file)
@@ -1074,8 +1074,8 @@ static struct idmap_methods idmap_ldap_methods = {
        .allocate_id = idmap_ldap_allocate_id,
 };
 
        .allocate_id = idmap_ldap_allocate_id,
 };
 
-NTSTATUS idmap_ldap_init(void);
-NTSTATUS idmap_ldap_init(void)
+NTSTATUS idmap_ldap_init(TALLOC_CTX *);
+NTSTATUS idmap_ldap_init(TALLOC_CTX *ctx)
 {
        return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "ldap",
                                  &idmap_ldap_methods);
 {
        return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "ldap",
                                  &idmap_ldap_methods);
index 24f8217860810ed51336c791e0572db62f46df55..3fe98cbc729666e4442565febede3132e922ee06 100644 (file)
@@ -202,7 +202,7 @@ static struct idmap_methods nss_methods = {
        .sids_to_unixids = idmap_nss_sids_to_unixids,
 };
 
        .sids_to_unixids = idmap_nss_sids_to_unixids,
 };
 
-NTSTATUS idmap_nss_init(void)
+NTSTATUS idmap_nss_init(TALLOC_CTX *mem_ctx)
 {
        return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "nss", &nss_methods);
 }
 {
        return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "nss", &nss_methods);
 }
index cf8ad7446cebbbe37806f3bf40fde90fba3b8dcb..75fc732cca052223caa608db1d252a2db415dada 100644 (file)
@@ -86,7 +86,7 @@ static struct idmap_methods passdb_methods = {
        .sids_to_unixids = idmap_pdb_sids_to_unixids,
 };
 
        .sids_to_unixids = idmap_pdb_sids_to_unixids,
 };
 
-NTSTATUS idmap_passdb_init(void)
+NTSTATUS idmap_passdb_init(TALLOC_CTX *mem_ctx)
 {
        return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "passdb", &passdb_methods);
 }
 {
        return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "passdb", &passdb_methods);
 }
index 0e25963f209ec4d83baf872ad92bbdd5c70631ab..596c22f6060247dc9678b9d385a74b2090b19847 100644 (file)
@@ -40,15 +40,15 @@ struct idmap_domain *idmap_find_domain(const char *domname);
 
 /* The following definitions come from winbindd/idmap_nss.c  */
 
 
 /* The following definitions come from winbindd/idmap_nss.c  */
 
-NTSTATUS idmap_nss_init(void);
+NTSTATUS idmap_nss_init(TALLOC_CTX *mem_ctx);
 
 /* The following definitions come from winbindd/idmap_passdb.c  */
 
 
 /* The following definitions come from winbindd/idmap_passdb.c  */
 
-NTSTATUS idmap_passdb_init(void);
+NTSTATUS idmap_passdb_init(TALLOC_CTX *mem_ctx);
 
 /* The following definitions come from winbindd/idmap_tdb.c  */
 
 
 /* The following definitions come from winbindd/idmap_tdb.c  */
 
-NTSTATUS idmap_tdb_init(void);
+NTSTATUS idmap_tdb_init(TALLOC_CTX *mem_ctx);
 
 /* The following definitions come from winbindd/idmap_util.c  */
 
 
 /* The following definitions come from winbindd/idmap_util.c  */
 
@@ -64,6 +64,6 @@ struct id_map **id_map_ptrs_init(TALLOC_CTX *mem_ctx, size_t num_ids);
 /* max number of ids requested per LDAP batch query */
 #define IDMAP_LDAP_MAX_IDS 30
 
 /* max number of ids requested per LDAP batch query */
 #define IDMAP_LDAP_MAX_IDS 30
 
-NTSTATUS idmap_ad_nss_init(void);
+NTSTATUS idmap_ad_nss_init(TALLOC_CTX *mem_ctx);
 
 #endif /* _WINBINDD_IDMAP_PROTO_H_ */
 
 #endif /* _WINBINDD_IDMAP_PROTO_H_ */
index ff8bf52ce81f66fafd041a21756315ce33b2f82c..deb25cc70c85632c7a7fe281ff87503d8a9d0c0b 100644 (file)
@@ -843,7 +843,7 @@ static struct idmap_methods rfc2307_methods = {
 };
 
 static_decl_idmap;
 };
 
 static_decl_idmap;
-NTSTATUS idmap_rfc2307_init(void)
+NTSTATUS idmap_rfc2307_init(TALLOC_CTX *ctx)
 {
        return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "rfc2307",
                                  &rfc2307_methods);
 {
        return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "rfc2307",
                                  &rfc2307_methods);
index 8cf1f033391aed3414b72eff852a94b3e3c833d0..10088b5a27ad83ed307ad2d893218f20f92553dd 100644 (file)
@@ -174,7 +174,7 @@ static struct idmap_methods rid_methods = {
 };
 
 static_decl_idmap;
 };
 
 static_decl_idmap;
-NTSTATUS idmap_rid_init(void)
+NTSTATUS idmap_rid_init(TALLOC_CTX *ctx)
 {
        return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "rid", &rid_methods);
 }
 {
        return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "rid", &rid_methods);
 }
index 4faf2d593b658a25e803d4a7605f30f604c3a9db..7b7f8844c36c7301ed0948225dc73268f6a72045 100644 (file)
@@ -628,7 +628,7 @@ static struct idmap_methods db_methods = {
 };
 
 static_decl_idmap;
 };
 
 static_decl_idmap;
-NTSTATUS idmap_script_init(void)
+NTSTATUS idmap_script_init(TALLOC_CTX *ctx)
 {
        return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "script", &db_methods);
 }
 {
        return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "script", &db_methods);
 }
index a04295f3abbf57d09b78050b9d283d8e1508473b..24ef11836e1107865b3aca579aa45f37f6d69a60 100644 (file)
@@ -434,7 +434,7 @@ static struct idmap_methods db_methods = {
        .allocate_id = idmap_tdb_common_get_new_id,
 };
 
        .allocate_id = idmap_tdb_common_get_new_id,
 };
 
-NTSTATUS idmap_tdb_init(void)
+NTSTATUS idmap_tdb_init(TALLOC_CTX *mem_ctx)
 {
        DEBUG(10, ("calling idmap_tdb_init\n"));
 
 {
        DEBUG(10, ("calling idmap_tdb_init\n"));
 
index 72c5b9e1ad8a3a6ff2c27aed1deda4bc4d4afed7..4d423907ae31db314649686d349e1df94a3f507d 100644 (file)
@@ -606,7 +606,7 @@ static struct idmap_methods db_methods = {
 };
 
 static_decl_idmap;
 };
 
 static_decl_idmap;
-NTSTATUS idmap_tdb2_init(void)
+NTSTATUS idmap_tdb2_init(TALLOC_CTX *ctx)
 {
        return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "tdb2", &db_methods);
 }
 {
        return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "tdb2", &db_methods);
 }
index 2c6bb01aded2e81f417c0761ac0dc270363344dc..9ef7e20b987a7579aa73c88af089489d9a42533e 100644 (file)
@@ -173,7 +173,7 @@ static NTSTATUS nss_init(const char **nss_list)
 
        nss_backend = nss_get_backend("template");
        if (nss_backend == NULL) {
 
        nss_backend = nss_get_backend("template");
        if (nss_backend == NULL) {
-               static_init_nss_info;
+               static_init_nss_info(NULL);
        }
 
        /* Create the list of nss_domains (loading any shared plugins
        }
 
        /* Create the list of nss_domains (loading any shared plugins
index 53159b6c02e5517b6ca6f049fefe40535faf5172..c58a7fcc8f86ad84a12161c3aa8260f613546633 100644 (file)
@@ -71,7 +71,7 @@ static struct nss_info_methods nss_template_methods = {
        .close_fn       = nss_template_close
 };
 
        .close_fn       = nss_template_close
 };
 
-NTSTATUS nss_info_template_init( void )
+NTSTATUS nss_info_template_init(TALLOC_CTX *mem_ctx)
 {
        return smb_register_idmap_nss(SMB_NSS_INFO_INTERFACE_VERSION, 
                                      "template", 
 {
        return smb_register_idmap_nss(SMB_NSS_INFO_INTERFACE_VERSION, 
                                      "template", 
index c526fc56a363296b3ad79741bafe97de8a4e7a08..e9705b9b83167ad9cb7a30fde7076df1e459c158 100644 (file)
@@ -1857,14 +1857,14 @@ main() {
         if p in static_list:
             decl_list=""
             for entry in static_list[p]:
         if p in static_list:
             decl_list=""
             for entry in static_list[p]:
-                decl_list += "extern NTSTATUS %s_init(void); " % entry
+                decl_list += "extern NTSTATUS %s_init(TALLOC_CTX *mem_ctx); " % entry
                 conf.env[static_env].append('%s' % entry)
             decl_list = decl_list.rstrip()
             conf.DEFINE('static_decl_%s' % p, decl_list)
                 conf.env[static_env].append('%s' % entry)
             decl_list = decl_list.rstrip()
             conf.DEFINE('static_decl_%s' % p, decl_list)
-            conf.DEFINE('static_init_%s' % p, '{ %s_init(); }' % '_init();  '.join(static_list[p]))
+            conf.DEFINE('static_init_%s(mem_ctx)' % p, '{ %s_init((mem_ctx)); }' % '_init((mem_ctx));  '.join(static_list[p]))
         else:
             conf.DEFINE('static_decl_%s' % p, '')
         else:
             conf.DEFINE('static_decl_%s' % p, '')
-            conf.DEFINE('static_init_%s' % p, '{}')
+            conf.DEFINE('static_init_%s(mem_ctx)' % p, '{}')
         if p in shared_list:
             for entry in shared_list[p]:
                 conf.DEFINE('%s_init' % entry, 'samba_init_module')
         if p in shared_list:
             for entry in shared_list[p]:
                 conf.DEFINE('%s_init' % entry, 'samba_init_module')
index a97cfb811d53e6ee047db4afe2d27297ded5bda3..0a691cf57a21ab77386691c653b7ffc622f47574 100644 (file)
@@ -157,7 +157,7 @@ NTSTATUS auth_check_password(struct auth4_context *auth_ctx,
                             uint8_t *pauthoritative);
 NTSTATUS auth4_init(void);
 NTSTATUS auth_register(const struct auth_operations *ops);
                             uint8_t *pauthoritative);
 NTSTATUS auth4_init(void);
 NTSTATUS auth_register(const struct auth_operations *ops);
-NTSTATUS server_service_auth_init(void);
+NTSTATUS server_service_auth_init(TALLOC_CTX *ctx);
 NTSTATUS authenticate_ldap_simple_bind(TALLOC_CTX *mem_ctx,
                                       struct tevent_context *ev,
                                       struct imessaging_context *msg,
 NTSTATUS authenticate_ldap_simple_bind(TALLOC_CTX *mem_ctx,
                                       struct tevent_context *ev,
                                       struct imessaging_context *msg,
index e2755b3d2283ccf2cf160f841bb65ebac77e753e..73a08f1ab58186c821ea3dbb5f14f0a83a91fc71 100644 (file)
@@ -50,7 +50,7 @@ gss_OID_desc spnego_mech_oid_desc =
 #define gss_mech_spnego (&spnego_mech_oid_desc)
 #endif
 
 #define gss_mech_spnego (&spnego_mech_oid_desc)
 #endif
 
-_PUBLIC_ NTSTATUS gensec_gssapi_init(void);
+_PUBLIC_ NTSTATUS gensec_gssapi_init(TALLOC_CTX *);
 
 static size_t gensec_gssapi_max_input_size(struct gensec_security *gensec_security);
 static size_t gensec_gssapi_max_wrapped_size(struct gensec_security *gensec_security);
 
 static size_t gensec_gssapi_max_input_size(struct gensec_security *gensec_security);
 static size_t gensec_gssapi_max_wrapped_size(struct gensec_security *gensec_security);
@@ -1640,7 +1640,7 @@ static const struct gensec_security_ops gensec_gssapi_sasl_krb5_security_ops = {
        .priority         = GENSEC_GSSAPI
 };
 
        .priority         = GENSEC_GSSAPI
 };
 
-_PUBLIC_ NTSTATUS gensec_gssapi_init(void)
+_PUBLIC_ NTSTATUS gensec_gssapi_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
 
 {
        NTSTATUS ret;
 
index 494692989642c1460cf52fa09f2f8c3b19a5fb5e..4756c8482d250d6cee26ea0f7d12921f302e25c5 100644 (file)
@@ -43,7 +43,7 @@
 #include "auth/kerberos/pac_utils.h"
 #include "gensec_krb5.h"
 
 #include "auth/kerberos/pac_utils.h"
 #include "gensec_krb5.h"
 
-_PUBLIC_ NTSTATUS gensec_krb5_init(void);
+_PUBLIC_ NTSTATUS gensec_krb5_init(TALLOC_CTX *);
 
 enum GENSEC_KRB5_STATE {
        GENSEC_KRB5_SERVER_START,
 
 enum GENSEC_KRB5_STATE {
        GENSEC_KRB5_SERVER_START,
@@ -1082,7 +1082,7 @@ static const struct gensec_security_ops gensec_krb5_security_ops = {
        .priority       = GENSEC_KRB5
 };
 
        .priority       = GENSEC_KRB5
 };
 
-_PUBLIC_ NTSTATUS gensec_krb5_init(void)
+_PUBLIC_ NTSTATUS gensec_krb5_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
 
 {
        NTSTATUS ret;
 
index 56676bbcdacc6188aa5e79ee47f004109476ed43..2f2cdc1a4ff72208818bb5f31c2e23ef0c667801 100644 (file)
@@ -832,14 +832,14 @@ const struct auth_critical_sizes *auth_interface_version(void)
 _PUBLIC_ NTSTATUS auth4_init(void)
 {
        static bool initialized = false;
 _PUBLIC_ NTSTATUS auth4_init(void)
 {
        static bool initialized = false;
-#define _MODULE_PROTO(init) extern NTSTATUS init(void);
+#define _MODULE_PROTO(init) extern NTSTATUS init(TALLOC_CTX *);
        STATIC_auth4_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_auth4_MODULES };
        
        if (initialized) return NT_STATUS_OK;
        initialized = true;
        
        STATIC_auth4_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_auth4_MODULES };
        
        if (initialized) return NT_STATUS_OK;
        initialized = true;
        
-       run_init_functions(static_init);
+       run_init_functions(NULL, static_init);
        
        return NT_STATUS_OK;    
 }
        
        return NT_STATUS_OK;    
 }
index ab1aac2693fbce7514f50443c91501f3170c7f9b..9bdcf0cbcb4075b5a855259c11fd81b16c50b53f 100644 (file)
@@ -24,7 +24,7 @@
 #include "auth/ntlm/auth_proto.h"
 #include "param/param.h"
 
 #include "auth/ntlm/auth_proto.h"
 #include "param/param.h"
 
-_PUBLIC_ NTSTATUS auth4_anonymous_init(void);
+_PUBLIC_ NTSTATUS auth4_anonymous_init(TALLOC_CTX *);
 
 /**
  * Return a anonymous logon for anonymous users (username = "")
 
 /**
  * Return a anonymous logon for anonymous users (username = "")
@@ -95,7 +95,7 @@ static const struct auth_operations anonymous_auth_ops = {
        .check_password = anonymous_check_password
 };
 
        .check_password = anonymous_check_password
 };
 
-_PUBLIC_ NTSTATUS auth4_anonymous_init(void)
+_PUBLIC_ NTSTATUS auth4_anonymous_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
 
 {
        NTSTATUS ret;
 
index 58ccc2db28904335c1ae7cce6230f9477c314705..93a073b125d69d3da0dfcec5876801cca100f26e 100644 (file)
@@ -24,7 +24,7 @@
 #include "auth/ntlm/auth_proto.h"
 #include "libcli/security/security.h"
 
 #include "auth/ntlm/auth_proto.h"
 #include "libcli/security/security.h"
 
-_PUBLIC_ NTSTATUS auth4_developer_init(void);
+_PUBLIC_ NTSTATUS auth4_developer_init(TALLOC_CTX *);
 
 static NTSTATUS name_to_ntstatus_want_check(struct auth_method_context *ctx,
                                            TALLOC_CTX *mem_ctx,
 
 static NTSTATUS name_to_ntstatus_want_check(struct auth_method_context *ctx,
                                            TALLOC_CTX *mem_ctx,
@@ -137,7 +137,7 @@ static const struct auth_operations name_to_ntstatus_auth_ops = {
        .check_password = name_to_ntstatus_check_password
 };
 
        .check_password = name_to_ntstatus_check_password
 };
 
-_PUBLIC_ NTSTATUS auth4_developer_init(void)
+_PUBLIC_ NTSTATUS auth4_developer_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
 
 {
        NTSTATUS ret;
 
index 1c7fd9071470c5f841433d9e59360b1e1527fc20..305fdc5d2813893aedd523d38d7eb5a5475d5959 100644 (file)
@@ -923,8 +923,8 @@ static const struct auth_operations sam_failtrusts_ops = {
        .check_password            = authsam_failtrusts_check_password,
 };
 
        .check_password            = authsam_failtrusts_check_password,
 };
 
-_PUBLIC_ NTSTATUS auth4_sam_init(void);
-_PUBLIC_ NTSTATUS auth4_sam_init(void)
+_PUBLIC_ NTSTATUS auth4_sam_init(TALLOC_CTX *);
+_PUBLIC_ NTSTATUS auth4_sam_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
 
 {
        NTSTATUS ret;
 
index 65b9dc2e4502d4de23e69c0ba59e152fc2b42253..9ac080a4817c43a0ea5b6f5320431e3984603f8b 100644 (file)
@@ -20,7 +20,7 @@
 #include "includes.h"
 #include "auth/auth.h"
 
 #include "includes.h"
 #include "auth/auth.h"
 
-NTSTATUS server_service_auth_init(void)
+NTSTATUS server_service_auth_init(TALLOC_CTX *ctx)
 {
        return auth4_init();
 }
 {
        return auth4_init();
 }
index 46e82f46112494534ab4e51535c1e9f3227873c8..5fb8b4f5dde61b42069312d4d7d2bfc97d0878aa 100644 (file)
@@ -28,7 +28,7 @@
 #include "../libcli/auth/pam_errors.h"
 #include "param/param.h"
 
 #include "../libcli/auth/pam_errors.h"
 #include "param/param.h"
 
-_PUBLIC_ NTSTATUS auth4_unix_init(void);
+_PUBLIC_ NTSTATUS auth4_unix_init(TALLOC_CTX *);
 
 /* TODO: look at how to best fill in parms retrieveing a struct passwd info
  * except in case USER_INFO_DONT_CHECK_UNIX_ACCOUNT is set
 
 /* TODO: look at how to best fill in parms retrieveing a struct passwd info
  * except in case USER_INFO_DONT_CHECK_UNIX_ACCOUNT is set
@@ -751,7 +751,7 @@ static const struct auth_operations unix_ops = {
        .check_password = authunix_check_password
 };
 
        .check_password = authunix_check_password
 };
 
-_PUBLIC_ NTSTATUS auth4_unix_init(void)
+_PUBLIC_ NTSTATUS auth4_unix_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
 
 {
        NTSTATUS ret;
 
index 82a71f3bd133f541e824b02be7a0f40f44a28a30..d5bf5ad268521aed0cde821299913f89d575344c 100644 (file)
@@ -32,7 +32,7 @@
 #include "libcli/security/security.h"
 #include "dsdb/samdb/samdb.h"
 
 #include "libcli/security/security.h"
 #include "dsdb/samdb/samdb.h"
 
-_PUBLIC_ NTSTATUS auth4_winbind_init(void);
+_PUBLIC_ NTSTATUS auth4_winbind_init(TALLOC_CTX *);
 
 static NTSTATUS winbind_want_check(struct auth_method_context *ctx,
                                   TALLOC_CTX *mem_ctx,
 
 static NTSTATUS winbind_want_check(struct auth_method_context *ctx,
                                   TALLOC_CTX *mem_ctx,
@@ -313,7 +313,7 @@ static const struct auth_operations winbind_wbclient_ops = {
        .check_password = winbind_check_password_wbclient
 };
 
        .check_password = winbind_check_password_wbclient
 };
 
-_PUBLIC_ NTSTATUS auth4_winbind_init(void)
+_PUBLIC_ NTSTATUS auth4_winbind_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
 
 {
        NTSTATUS ret;
 
index ced2a2088f255ba3a8500c67eb5d06e46ce15341..de8bc4eeef004be1d5dfafd468503d12c45f83fa 100644 (file)
@@ -36,7 +36,7 @@
 #include "../lib/tsocket/tsocket.h"
 #include "libds/common/roles.h"
 
 #include "../lib/tsocket/tsocket.h"
 #include "libds/common/roles.h"
 
-NTSTATUS server_service_cldapd_init(void);
+NTSTATUS server_service_cldapd_init(TALLOC_CTX *);
 
 /*
   handle incoming cldap requests
 
 /*
   handle incoming cldap requests
@@ -241,7 +241,7 @@ static void cldapd_task_init(struct task_server *task)
 /*
   register ourselves as a available server
 */
 /*
   register ourselves as a available server
 */
-NTSTATUS server_service_cldapd_init(void)
+NTSTATUS server_service_cldapd_init(TALLOC_CTX *ctx)
 {
        return register_server_service("cldap", cldapd_task_init);
 }
 {
        return register_server_service("cldap", cldapd_task_init);
 }
index 86776b063355a3f31b6738736cdf768597e255f6..d467cca3e43999b2af982d1f2735103f62ac5d12 100644 (file)
@@ -52,7 +52,7 @@
 #undef DBGC_CLASS
 #define DBGC_CLASS DBGC_DNS
 
 #undef DBGC_CLASS
 #define DBGC_CLASS DBGC_DNS
 
-NTSTATUS server_service_dns_init(void);
+NTSTATUS server_service_dns_init(TALLOC_CTX *);
 
 /* hold information about one dns socket */
 struct dns_socket {
 
 /* hold information about one dns socket */
 struct dns_socket {
@@ -927,7 +927,7 @@ static void dns_task_init(struct task_server *task)
        }
 }
 
        }
 }
 
-NTSTATUS server_service_dns_init(void)
+NTSTATUS server_service_dns_init(TALLOC_CTX *ctx)
 {
        return register_server_service("dns", dns_task_init);
 }
 {
        return register_server_service("dns", dns_task_init);
 }
index 8962b085f61ca7e83d9516b986112abd1b33858a..d2e34669aea1109eefc97910e17ddd7e52322acf 100644 (file)
@@ -41,7 +41,7 @@
 #include "librpc/gen_ndr/ndr_irpc.h"
 #include "libds/common/roles.h"
 
 #include "librpc/gen_ndr/ndr_irpc.h"
 #include "libds/common/roles.h"
 
-NTSTATUS server_service_dnsupdate_init(void);
+NTSTATUS server_service_dnsupdate_init(TALLOC_CTX *);
 
 struct dnsupdate_service {
        struct task_server *task;
 
 struct dnsupdate_service {
        struct task_server *task;
@@ -665,7 +665,7 @@ static void dnsupdate_task_init(struct task_server *task)
 /*
   register ourselves as a available server
 */
 /*
   register ourselves as a available server
 */
-NTSTATUS server_service_dnsupdate_init(void)
+NTSTATUS server_service_dnsupdate_init(TALLOC_CTX *ctx)
 {
        return register_server_service("dnsupdate", dnsupdate_task_init);
 }
 {
        return register_server_service("dnsupdate", dnsupdate_task_init);
 }
index 9266e75d2cdfc918b1303c3fb342808ba4b29316..000206f98b758dcc5db8de1c383eff796429b069 100644 (file)
@@ -345,7 +345,7 @@ static void kccsrv_task_init(struct task_server *task)
 /*
   register ourselves as a available server
 */
 /*
   register ourselves as a available server
 */
-NTSTATUS server_service_kcc_init(void)
+NTSTATUS server_service_kcc_init(TALLOC_CTX *ctx)
 {
        return register_server_service("kcc", kccsrv_task_init);
 }
 {
        return register_server_service("kcc", kccsrv_task_init);
 }
index c0ea1f2ba23ffa7eea626d78a5985b508e1ce268..787f2d79138ccbc580d00e38c3dfa8e3067dd535 100644 (file)
@@ -514,7 +514,7 @@ static void dreplsrv_task_init(struct task_server *task)
 /*
   register ourselves as a available server
 */
 /*
   register ourselves as a available server
 */
-NTSTATUS server_service_drepl_init(void)
+NTSTATUS server_service_drepl_init(TALLOC_CTX *ctx)
 {
        return register_server_service("drepl", dreplsrv_task_init);
 }
 {
        return register_server_service("drepl", dreplsrv_task_init);
 }
index a3e69741b77b0289d27131a4cde7d0077ae10769..a934b5b431c3f2a37fc4d6d6e82263bbe745f876 100644 (file)
@@ -33,7 +33,7 @@
 #include "lib/tsocket/tsocket.h"
 #include "libds/common/roles.h"
 
 #include "lib/tsocket/tsocket.h"
 #include "libds/common/roles.h"
 
-NTSTATUS server_service_echo_init(void);
+NTSTATUS server_service_echo_init(TALLOC_CTX *);
 
 /* Structure to hold an echo server socket */
 struct echo_socket {
 
 /* Structure to hold an echo server socket */
 struct echo_socket {
@@ -341,7 +341,7 @@ static void echo_task_init(struct task_server *task)
  * This is the function you need to put into the wscript_build file as
  * init_function. All the real work happens in "echo_task_init" above.
  */
  * This is the function you need to put into the wscript_build file as
  * init_function. All the real work happens in "echo_task_init" above.
  */
-NTSTATUS server_service_echo_init(void)
+NTSTATUS server_service_echo_init(TALLOC_CTX *ctx)
 {
        return register_server_service("echo", echo_task_init);
 }
 {
        return register_server_service("echo", echo_task_init);
 }
index 25bb3916038595c5c048e1849559388cd1f70469..fd48114edf821d09e2c47284d2f19a6a2eb9d907 100644 (file)
@@ -40,7 +40,7 @@
 #include <kdc.h>
 #include <hdb.h>
 
 #include <kdc.h>
 #include <hdb.h>
 
-NTSTATUS server_service_kdc_init(void);
+NTSTATUS server_service_kdc_init(TALLOC_CTX *);
 
 extern struct krb5plugin_windc_ftable windc_plugin_table;
 
 
 extern struct krb5plugin_windc_ftable windc_plugin_table;
 
@@ -466,7 +466,7 @@ static void kdc_task_init(struct task_server *task)
 
 
 /* called at smbd startup - register ourselves as a server service */
 
 
 /* called at smbd startup - register ourselves as a server service */
-NTSTATUS server_service_kdc_init(void)
+NTSTATUS server_service_kdc_init(TALLOC_CTX *ctx)
 {
        return register_server_service("kdc", kdc_task_init);
 }
 {
        return register_server_service("kdc", kdc_task_init);
 }
index 96df39c5313764e8912c5bf4fe7aefa0fa0ef446..747e25dde22876ab9f1d48d28b9fb9f6fcdda5c6 100644 (file)
@@ -1182,7 +1182,7 @@ failed:
 }
 
 
 }
 
 
-NTSTATUS server_service_ldap_init(void)
+NTSTATUS server_service_ldap_init(TALLOC_CTX *ctx)
 {
        return register_server_service("ldap", ldapsrv_task_init);
 }
 {
        return register_server_service("ldap", ldapsrv_task_init);
 }
index 367ce9d6319bc991fb92028bb3aa35e9c61a9829..28f5d848de5b66593fc69e4b5d09582f6ea9a61d 100644 (file)
@@ -22,7 +22,7 @@
 #include "lib/com/com.h"
 #include "librpc/gen_ndr/com_dcom.h"
 
 #include "lib/com/com.h"
 #include "librpc/gen_ndr/com_dcom.h"
 
-NTSTATUS com_simple_init(void);
+NTSTATUS com_simple_init(TALLOC_CTX *);
 
 static struct IClassFactory_vtable simple_classobject_vtable;
 static struct IStream_vtable simple_IStream_vtable;
 
 static struct IClassFactory_vtable simple_classobject_vtable;
 static struct IStream_vtable simple_IStream_vtable;
@@ -107,7 +107,7 @@ static struct IStream_vtable simple_IStream_vtable = {
        simple_IStream_Write
 };
 
        simple_IStream_Write
 };
 
-NTSTATUS com_simple_init(void)
+NTSTATUS com_simple_init(TALLOC_CTX *ctx)
 {
        struct GUID clsid;
        struct IUnknown *class_object = talloc(talloc_autofree_context(), struct IUnknown);
 {
        struct GUID clsid;
        struct IUnknown *class_object = talloc(talloc_autofree_context(), struct IUnknown);
index 4a488a34bfa4aeac79fe1338a3b66e226bf3dc63..64778638b66d611e3a94908339ed1888d088889b 100644 (file)
@@ -26,7 +26,7 @@
 #include "auth/credentials/credentials.h"
 #include "lib/util/base64.h"
 
 #include "auth/credentials/credentials.h"
 #include "lib/util/base64.h"
 
-_PUBLIC_ NTSTATUS gensec_http_basic_init(void);
+_PUBLIC_ NTSTATUS gensec_http_basic_init(TALLOC_CTX *);
 
 struct gensec_http_basic_state {
        enum {
 
 struct gensec_http_basic_state {
        enum {
@@ -123,7 +123,7 @@ static const struct gensec_security_ops gensec_http_basic_security_ops = {
        .priority       = GENSEC_EXTERNAL,
 };
 
        .priority       = GENSEC_EXTERNAL,
 };
 
-_PUBLIC_ NTSTATUS gensec_http_basic_init(void)
+_PUBLIC_ NTSTATUS gensec_http_basic_init(TALLOC_CTX *ctx)
 {
        NTSTATUS status;
 
 {
        NTSTATUS status;
 
index 8afb275dafe4c10f7b68f107b6396420040fa2f6..391f99fef0fef89475b77fb286c87b60b7647294 100644 (file)
@@ -25,7 +25,7 @@
 #include "auth/gensec/gensec_internal.h"
 #include "lib/util/base64.h"
 
 #include "auth/gensec/gensec_internal.h"
 #include "lib/util/base64.h"
 
-_PUBLIC_ NTSTATUS gensec_http_ntlm_init(void);
+_PUBLIC_ NTSTATUS gensec_http_ntlm_init(TALLOC_CTX *);
 
 struct gensec_http_ntlm_state {
        struct gensec_security *sub;
 
 struct gensec_http_ntlm_state {
        struct gensec_security *sub;
@@ -106,7 +106,7 @@ static const struct gensec_security_ops gensec_http_ntlm_security_ops = {
        .priority       = GENSEC_EXTERNAL,
 };
 
        .priority       = GENSEC_EXTERNAL,
 };
 
-_PUBLIC_ NTSTATUS gensec_http_ntlm_init(void)
+_PUBLIC_ NTSTATUS gensec_http_ntlm_init(TALLOC_CTX *ctx)
 {
        NTSTATUS status;
 
 {
        NTSTATUS status;
 
index 232fb9de13ad07b7cc2340776d5e1558c774bb3d..2c20c10c18e1969363eddb142e1c47b34200a23a 100644 (file)
@@ -30,7 +30,7 @@
 #include "dsdb/samdb/samdb.h"
 #include "param/param.h"
 
 #include "dsdb/samdb/samdb.h"
 #include "param/param.h"
 
-NTSTATUS server_service_nbtd_init(void);
+NTSTATUS server_service_nbtd_init(TALLOC_CTX *);
 
 /*
   startup the nbtd task
 
 /*
   startup the nbtd task
@@ -98,7 +98,7 @@ static void nbtd_task_init(struct task_server *task)
 /*
   register ourselves as a available server
 */
 /*
   register ourselves as a available server
 */
-NTSTATUS server_service_nbtd_init(void)
+NTSTATUS server_service_nbtd_init(TALLOC_CTX *ctx)
 {
        return register_server_service("nbt", nbtd_task_init);
 }
 {
        return register_server_service("nbt", nbtd_task_init);
 }
index 53c34edab7e36c57adab63d42abb5706712c3650..ddd38c1e30359a1de27aeab6a497e755a40aeae3 100644 (file)
@@ -41,7 +41,7 @@
 #include "system/network.h"
 #include "system/passwd.h"
 
 #include "system/network.h"
 #include "system/passwd.h"
 
-NTSTATUS server_service_ntp_signd_init(void);
+NTSTATUS server_service_ntp_signd_init(TALLOC_CTX *);
 
 /*
   top level context structure for the ntp_signd server
 
 /*
   top level context structure for the ntp_signd server
@@ -552,7 +552,7 @@ static void ntp_signd_task_init(struct task_server *task)
 
 
 /* called at smbd startup - register ourselves as a server service */
 
 
 /* called at smbd startup - register ourselves as a server service */
-NTSTATUS server_service_ntp_signd_init(void)
+NTSTATUS server_service_ntp_signd_init(TALLOC_CTX *ctx)
 {
        return register_server_service("ntp_signd", ntp_signd_task_init);
 }
 {
        return register_server_service("ntp_signd", ntp_signd_task_init);
 }
index 355b0bd58d158a8d9bdf85f387f54895b2e800ab..478428e324651d14f00f86141b382f06693e3a2d 100644 (file)
@@ -64,7 +64,7 @@ struct async_info {
        void *parms;
 };
 
        void *parms;
 };
 
-NTSTATUS ntvfs_cifs_init(void);
+NTSTATUS ntvfs_cifs_init(TALLOC_CTX *);
 
 #define CHECK_UPSTREAM_OPEN do { \
        if (!smbXcli_conn_is_connected(p->transport->conn)) { \
 
 #define CHECK_UPSTREAM_OPEN do { \
        if (!smbXcli_conn_is_connected(p->transport->conn)) { \
@@ -1201,7 +1201,7 @@ static NTSTATUS cvfs_notify(struct ntvfs_module_context *ntvfs,
 /*
   initialise the CIFS->CIFS backend, registering ourselves with the ntvfs subsystem
  */
 /*
   initialise the CIFS->CIFS backend, registering ourselves with the ntvfs subsystem
  */
-NTSTATUS ntvfs_cifs_init(void)
+NTSTATUS ntvfs_cifs_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
index 9c1e6f6ab23c411a074be26948be7e4c33b3c67a..83f02c0e8772433996d367c6b725f1f1be1bfd66 100644 (file)
@@ -1055,7 +1055,7 @@ static NTSTATUS cifspsx_trans(struct ntvfs_module_context *ntvfs,
 /*
   initialialise the POSIX disk backend, registering ourselves with the ntvfs subsystem
  */
 /*
   initialialise the POSIX disk backend, registering ourselves with the ntvfs subsystem
  */
-NTSTATUS ntvfs_cifs_posix_init(void)
+NTSTATUS ntvfs_cifs_posix_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
index 88ac0c1b23116023b8f8188222734fe963953782..ff45aafd67643427ee87b0171d52604a33eb64d4 100644 (file)
@@ -1297,7 +1297,7 @@ static NTSTATUS ipc_ioctl(struct ntvfs_module_context *ntvfs,
 /*
   initialialise the IPC backend, registering ourselves with the ntvfs subsystem
  */
 /*
   initialialise the IPC backend, registering ourselves with the ntvfs subsystem
  */
-NTSTATUS ntvfs_ipc_init(void)
+NTSTATUS ntvfs_ipc_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
index c3e0a4257cf1456a1874e541c328515e4348e607..0b2ccf2cb567e31e7a2de69d55c572bd1031663b 100644 (file)
@@ -28,7 +28,7 @@
 #include "system/filesys.h"
 #include "lib/util/sys_rw.h"
 
 #include "system/filesys.h"
 #include "lib/util/sys_rw.h"
 
-NTSTATUS ntvfs_nbench_init(void);
+NTSTATUS ntvfs_nbench_init(TALLOC_CTX *);
 
 /* this is stored in ntvfs_private */
 struct nbench_private {
 
 /* this is stored in ntvfs_private */
 struct nbench_private {
@@ -923,7 +923,7 @@ static NTSTATUS nbench_trans(struct ntvfs_module_context *ntvfs,
 /*
   initialise the nbench backend, registering ourselves with the ntvfs subsystem
  */
 /*
   initialise the nbench backend, registering ourselves with the ntvfs subsystem
  */
-NTSTATUS ntvfs_nbench_init(void)
+NTSTATUS ntvfs_nbench_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
index d037a0ea377bb96df3900a7a6db65416bd906524..5c438bbd5a2192f51d91927f635823d6ef09f484 100644 (file)
@@ -228,7 +228,7 @@ static NTSTATUS ntvfs_add_ipc_share(struct loadparm_context *lp_ctx)
 NTSTATUS ntvfs_init(struct loadparm_context *lp_ctx)
 {
        static bool initialized = false;
 NTSTATUS ntvfs_init(struct loadparm_context *lp_ctx)
 {
        static bool initialized = false;
-#define _MODULE_PROTO(init) extern NTSTATUS init(void);
+#define _MODULE_PROTO(init) extern NTSTATUS init(TALLOC_CTX *);
        STATIC_ntvfs_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_ntvfs_MODULES };
        init_module_fn *shared_init;
        STATIC_ntvfs_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_ntvfs_MODULES };
        init_module_fn *shared_init;
@@ -238,8 +238,8 @@ NTSTATUS ntvfs_init(struct loadparm_context *lp_ctx)
        
        shared_init = load_samba_modules(NULL, "ntvfs");
 
        
        shared_init = load_samba_modules(NULL, "ntvfs");
 
-       run_init_functions(static_init);
-       run_init_functions(shared_init);
+       run_init_functions(NULL, static_init);
+       run_init_functions(NULL, shared_init);
 
        talloc_free(shared_init);
 
 
        talloc_free(shared_init);
 
index b2987645128e90357b3dff72287672b68d13482e..9a110caf236f9f5b81da5011b7086ad8132b423d 100644 (file)
@@ -85,7 +85,7 @@ const struct pvfs_acl_ops *pvfs_acl_backend_byname(const char *name)
 NTSTATUS pvfs_acl_init(void)
 {
        static bool initialized = false;
 NTSTATUS pvfs_acl_init(void)
 {
        static bool initialized = false;
-#define _MODULE_PROTO(init) extern NTSTATUS init(void);
+#define _MODULE_PROTO(init) extern NTSTATUS init(TALLOC_CTX *);
        STATIC_pvfs_acl_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_pvfs_acl_MODULES };
        init_module_fn *shared_init;
        STATIC_pvfs_acl_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_pvfs_acl_MODULES };
        init_module_fn *shared_init;
@@ -95,8 +95,8 @@ NTSTATUS pvfs_acl_init(void)
 
        shared_init = load_samba_modules(NULL, "pvfs_acl");
 
 
        shared_init = load_samba_modules(NULL, "pvfs_acl");
 
-       run_init_functions(static_init);
-       run_init_functions(shared_init);
+       run_init_functions(NULL, static_init);
+       run_init_functions(NULL, shared_init);
 
        talloc_free(shared_init);
 
 
        talloc_free(shared_init);
 
index bd00794763df196895e20f4e981501ee4cae93a1..392dc92fe1229480a50ac92b6259814c8f4dc5f6 100644 (file)
@@ -26,7 +26,7 @@
 #include "librpc/gen_ndr/ndr_nfs4acl.h"
 #include "libcli/security/security.h"
 
 #include "librpc/gen_ndr/ndr_nfs4acl.h"
 #include "libcli/security/security.h"
 
-NTSTATUS pvfs_acl_nfs4_init(void);
+NTSTATUS pvfs_acl_nfs4_init(TALLOC_CTX *);
 
 #define ACE4_IDENTIFIER_GROUP 0x40
 
 
 #define ACE4_IDENTIFIER_GROUP 0x40
 
@@ -188,7 +188,7 @@ static NTSTATUS pvfs_acl_save_nfs4(struct pvfs_state *pvfs, struct pvfs_filename
 /*
   initialise pvfs acl NFS4 backend
 */
 /*
   initialise pvfs acl NFS4 backend
 */
-NTSTATUS pvfs_acl_nfs4_init(void)
+NTSTATUS pvfs_acl_nfs4_init(TALLOC_CTX *ctx)
 {
        struct pvfs_acl_ops ops = {
                .name = "nfs4acl",
 {
        struct pvfs_acl_ops ops = {
                .name = "nfs4acl",
index d9cceef1bc30c3e3660132db7035083fafc2d9fc..648c459dadd7ab4a74a4e67ebd378c15f3351440 100644 (file)
@@ -24,7 +24,7 @@
 #include "../lib/util/unix_privs.h"
 #include "librpc/gen_ndr/ndr_xattr.h"
 
 #include "../lib/util/unix_privs.h"
 #include "librpc/gen_ndr/ndr_xattr.h"
 
-NTSTATUS pvfs_acl_xattr_init(void);
+NTSTATUS pvfs_acl_xattr_init(TALLOC_CTX *);
 
 /*
   load the current ACL from extended attributes
 
 /*
   load the current ACL from extended attributes
@@ -93,7 +93,7 @@ static NTSTATUS pvfs_acl_save_xattr(struct pvfs_state *pvfs, struct pvfs_filenam
 /*
   initialise pvfs acl xattr backend
 */
 /*
   initialise pvfs acl xattr backend
 */
-NTSTATUS pvfs_acl_xattr_init(void)
+NTSTATUS pvfs_acl_xattr_init(TALLOC_CTX *ctx)
 {
        struct pvfs_acl_ops ops = {
                .name = "xattr",
 {
        struct pvfs_acl_ops ops = {
                .name = "xattr",
index 7d1fea549fac24098669f7c2d144de5eada0cd97..4133723c50a78cac8f1ed9f2f4e66f3b2915cdbb 100644 (file)
@@ -359,7 +359,7 @@ static NTSTATUS pvfs_trans(struct ntvfs_module_context *ntvfs,
 /*
   initialialise the POSIX disk backend, registering ourselves with the ntvfs subsystem
  */
 /*
   initialialise the POSIX disk backend, registering ourselves with the ntvfs subsystem
  */
-NTSTATUS ntvfs_posix_init(void)
+NTSTATUS ntvfs_posix_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
index 829fa7877ec0204f2addf52ea99f8a32aa6c2870..3578f002c31e2948e1a206c8d150a5bcccbbdcb3 100644 (file)
@@ -26,7 +26,7 @@
 #include "ntvfs/ntvfs.h"
 #include "param/param.h"
 
 #include "ntvfs/ntvfs.h"
 #include "param/param.h"
 
-NTSTATUS ntvfs_print_init(void);
+NTSTATUS ntvfs_print_init(TALLOC_CTX *);
 
 /*
   connect to a share - used when a tree_connect operation comes
 
 /*
   connect to a share - used when a tree_connect operation comes
@@ -102,7 +102,7 @@ static NTSTATUS print_ioctl(struct ntvfs_module_context *ntvfs,
 /*
   initialialise the print backend, registering ourselves with the ntvfs subsystem
  */
 /*
   initialialise the print backend, registering ourselves with the ntvfs subsystem
  */
-NTSTATUS ntvfs_print_init(void)
+NTSTATUS ntvfs_print_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
index abd76d25c8816e618f03a365b2221977a888d282..2fe208448212402cc0a34207849575c957014595 100644 (file)
@@ -1055,7 +1055,7 @@ static NTSTATUS svfs_trans(struct ntvfs_module_context *ntvfs,
 /*
   initialialise the POSIX disk backend, registering ourselves with the ntvfs subsystem
  */
 /*
   initialialise the POSIX disk backend, registering ourselves with the ntvfs subsystem
  */
-NTSTATUS ntvfs_simple_init(void)
+NTSTATUS ntvfs_simple_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
index dbb76b3dc12695b5223256cc2db56ddae8bc6ef4..b2b61f0b7eac8edf2a7eb9df3f10846ebabf4b74 100644 (file)
@@ -41,7 +41,7 @@
 #include "libcli/smb2/smb2.h"
 #include "libcli/smb2/smb2_calls.h"
 
 #include "libcli/smb2/smb2.h"
 #include "libcli/smb2/smb2_calls.h"
 
-NTSTATUS ntvfs_smb2_init(void);
+NTSTATUS ntvfs_smb2_init(TALLOC_CTX *);
 
 struct cvfs_file {
        struct cvfs_file *prev, *next;
 
 struct cvfs_file {
        struct cvfs_file *prev, *next;
@@ -847,7 +847,7 @@ static NTSTATUS cvfs_notify(struct ntvfs_module_context *ntvfs,
 /*
   initialise the CIFS->CIFS backend, registering ourselves with the ntvfs subsystem
  */
 /*
   initialise the CIFS->CIFS backend, registering ourselves with the ntvfs subsystem
  */
-NTSTATUS ntvfs_smb2_init(void)
+NTSTATUS ntvfs_smb2_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
index 091ca1da2834c2ae9719ba931861c225d24fb374..c769618cf42e8320902fedc741a94f50ea116765 100644 (file)
@@ -390,8 +390,8 @@ static struct sys_notify_backend inotify = {
 /*
   initialialise the inotify module
  */
 /*
   initialialise the inotify module
  */
-NTSTATUS sys_notify_inotify_init(void);
-NTSTATUS sys_notify_inotify_init(void)
+NTSTATUS sys_notify_inotify_init(TALLOC_CTX *);
+NTSTATUS sys_notify_inotify_init(TALLOC_CTX *ctx)
 {
        /* register ourselves as a system inotify module */
        return sys_notify_register(&inotify);
 {
        /* register ourselves as a system inotify module */
        return sys_notify_register(&inotify);
index 1c8c33f3cf1736a5318f0dd5d5576060c967e706..3db67030a1fb32e9b30090b24fbb5dfcef1cf869 100644 (file)
@@ -118,14 +118,14 @@ _PUBLIC_ NTSTATUS sys_lease_register(const struct sys_lease_ops *backend)
 _PUBLIC_ NTSTATUS sys_lease_init(void)
 {
        static bool initialized = false;
 _PUBLIC_ NTSTATUS sys_lease_init(void)
 {
        static bool initialized = false;
-#define _MODULE_PROTO(init) extern NTSTATUS init(void);
+#define _MODULE_PROTO(init) extern NTSTATUS init(TALLOC_CTX *);
        STATIC_sys_lease_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_sys_lease_MODULES };
 
        if (initialized) return NT_STATUS_OK;
        initialized = true;
 
        STATIC_sys_lease_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_sys_lease_MODULES };
 
        if (initialized) return NT_STATUS_OK;
        initialized = true;
 
-       run_init_functions(static_init);
+       run_init_functions(NULL, static_init);
 
        return NT_STATUS_OK;
 }
 
        return NT_STATUS_OK;
 }
index 3b0605b73b9b860b88ccd9f2d181e745c6ffa499..1c70f4e1a6f97e571ee45cf3b361e609c2fc6baa 100644 (file)
@@ -30,7 +30,7 @@
 #include "../lib/util/dlinklist.h"
 #include "cluster/cluster.h"
 
 #include "../lib/util/dlinklist.h"
 #include "cluster/cluster.h"
 
-NTSTATUS sys_lease_linux_init(void);
+NTSTATUS sys_lease_linux_init(TALLOC_CTX *);
 
 #define LINUX_LEASE_RT_SIGNAL (SIGRTMIN+1)
 
 
 #define LINUX_LEASE_RT_SIGNAL (SIGRTMIN+1)
 
@@ -208,7 +208,7 @@ static struct sys_lease_ops linux_lease_ops = {
 /*
   initialialise the linux lease module
  */
 /*
   initialialise the linux lease module
  */
-NTSTATUS sys_lease_linux_init(void)
+NTSTATUS sys_lease_linux_init(TALLOC_CTX *ctx)
 {
        /* register ourselves as a system lease module */
        return sys_lease_register(&linux_lease_ops);
 {
        /* register ourselves as a system lease module */
        return sys_lease_register(&linux_lease_ops);
index dee3295de80fee8353212fcfebf2b3513c0c36b0..aad3b900dd17c9014798f1e98d42d498670f7882 100644 (file)
@@ -135,14 +135,14 @@ _PUBLIC_ NTSTATUS sys_notify_register(struct sys_notify_backend *backend)
 _PUBLIC_ NTSTATUS sys_notify_init(void)
 {
        static bool initialized = false;
 _PUBLIC_ NTSTATUS sys_notify_init(void)
 {
        static bool initialized = false;
-#define _MODULE_PROTO(init) extern NTSTATUS init(void);
+#define _MODULE_PROTO(init) extern NTSTATUS init(TALLOC_CTX *);
        STATIC_sys_notify_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_sys_notify_MODULES };
 
        if (initialized) return NT_STATUS_OK;
        initialized = true;
 
        STATIC_sys_notify_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_sys_notify_MODULES };
 
        if (initialized) return NT_STATUS_OK;
        initialized = true;
 
-       run_init_functions(static_init);
+       run_init_functions(NULL, static_init);
        
        return NT_STATUS_OK;
 }
        
        return NT_STATUS_OK;
 }
index ce7abfca638a840a8f1877420effa3d2363cad51..40ccd4ae7a956dd29c223e4026f85a91af6d81a8 100644 (file)
@@ -30,7 +30,7 @@
 #include <tevent.h>
 #include "../lib/util/setid.h"
 
 #include <tevent.h>
 #include "../lib/util/setid.h"
 
-NTSTATUS ntvfs_unixuid_init(void);
+NTSTATUS ntvfs_unixuid_init(TALLOC_CTX *);
 
 struct unixuid_private {
        struct security_unix_token *last_sec_ctx;
 
 struct unixuid_private {
        struct security_unix_token *last_sec_ctx;
@@ -665,7 +665,7 @@ static NTSTATUS unixuid_trans(struct ntvfs_module_context *ntvfs,
 /*
   initialise the unixuid backend, registering ourselves with the ntvfs subsystem
  */
 /*
   initialise the unixuid backend, registering ourselves with the ntvfs subsystem
  */
-NTSTATUS ntvfs_unixuid_init(void)
+NTSTATUS ntvfs_unixuid_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
 {
        NTSTATUS ret;
        struct ntvfs_ops ops;
index 2bf4b89c23cc25ffdac544b82095b29185f8ee15..7a57151081269ffe4dba1fa9f419a03ba728d845 100644 (file)
@@ -147,11 +147,11 @@ NTSTATUS share_get_context_by_name(TALLOC_CTX *mem_ctx, const char *backend_name
 */
 NTSTATUS share_init(void)
 {
 */
 NTSTATUS share_init(void)
 {
-#define _MODULE_PROTO(init) extern NTSTATUS init(void);
+#define _MODULE_PROTO(init) extern NTSTATUS init(TALLOC_CTX *);
        STATIC_share_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_share_MODULES };
 
        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;
 }
 
        return NT_STATUS_OK;
 }
index 67ea392824fb8fe3f2e1f77365df10c9b2280bb2..d938cb29f55c25051021a0be9e62e4901593966f 100644 (file)
@@ -23,7 +23,7 @@
 #include "param/share.h"
 #include "param/param.h"
 
 #include "param/share.h"
 #include "param/param.h"
 
-NTSTATUS share_classic_init(void);
+NTSTATUS share_classic_init(TALLOC_CTX *);
 
 static NTSTATUS sclassic_init(TALLOC_CTX *mem_ctx, 
                              const struct share_ops *ops, 
 
 static NTSTATUS sclassic_init(TALLOC_CTX *mem_ctx, 
                              const struct share_ops *ops, 
@@ -383,7 +383,7 @@ static const struct share_ops ops = {
        .get_config = sclassic_get_config
 };
 
        .get_config = sclassic_get_config
 };
 
-NTSTATUS share_classic_init(void)
+NTSTATUS share_classic_init(TALLOC_CTX *ctx)
 {
        return share_register(&ops);
 }
 {
        return share_register(&ops);
 }
index cf8c5bb3d4f3ed73d7e08b24471131930cb95b65..f8b1a3f5d977eb8b1d1f6bfe3d8ddb9bd5de0192 100644 (file)
@@ -27,7 +27,7 @@
 #include "param/share.h"
 #include "param/param.h"
 
 #include "param/share.h"
 #include "param/param.h"
 
-NTSTATUS share_ldb_init(void);
+NTSTATUS share_ldb_init(TALLOC_CTX *);
 
 static NTSTATUS sldb_init(TALLOC_CTX *mem_ctx, const struct share_ops *ops, 
                          struct tevent_context *ev_ctx,
 
 static NTSTATUS sldb_init(TALLOC_CTX *mem_ctx, const struct share_ops *ops, 
                          struct tevent_context *ev_ctx,
@@ -598,7 +598,7 @@ static const struct share_ops ops = {
        .remove = sldb_remove
 };
 
        .remove = sldb_remove
 };
 
-NTSTATUS share_ldb_init(void)
+NTSTATUS share_ldb_init(TALLOC_CTX *ctx)
 {
        return share_register(&ops);
 }
 {
        return share_register(&ops);
 }
index 3663a2b4be43f6391211073fbd9b23ae07d45f59..9f62c115b5f98191eb243a74e88252deea36a1d4 100644 (file)
@@ -2112,7 +2112,7 @@ const struct dcesrv_endpoint_server *dcesrv_ep_server_byname(const char *name)
 void dcerpc_server_init(struct loadparm_context *lp_ctx)
 {
        static bool initialized;
 void dcerpc_server_init(struct loadparm_context *lp_ctx)
 {
        static bool initialized;
-#define _MODULE_PROTO(init) extern NTSTATUS init(void);
+#define _MODULE_PROTO(init) extern NTSTATUS init(TALLOC_CTX *);
        STATIC_dcerpc_server_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_dcerpc_server_MODULES };
        init_module_fn *shared_init;
        STATIC_dcerpc_server_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_dcerpc_server_MODULES };
        init_module_fn *shared_init;
@@ -2124,8 +2124,8 @@ void dcerpc_server_init(struct loadparm_context *lp_ctx)
 
        shared_init = load_samba_modules(NULL, "dcerpc_server");
 
 
        shared_init = load_samba_modules(NULL, "dcerpc_server");
 
-       run_init_functions(static_init);
-       run_init_functions(shared_init);
+       run_init_functions(NULL, static_init);
+       run_init_functions(NULL, shared_init);
 
        talloc_free(shared_init);
 }
 
        talloc_free(shared_init);
 }
index 2aa700619d6763b3eb0f5f6b3f53171bfdd7897d..f013d99580bc288319ca9e5bbb4bc1ca4ab554bb 100644 (file)
@@ -4771,15 +4771,15 @@ static WERROR dcesrv_dssetup_DsRoleAbortDownlevelServerUpgrade(struct dcesrv_cal
 /* include the generated boilerplate */
 #include "librpc/gen_ndr/ndr_dssetup_s.c"
 
 /* include the generated boilerplate */
 #include "librpc/gen_ndr/ndr_dssetup_s.c"
 
-NTSTATUS dcerpc_server_lsa_init(void)
+NTSTATUS dcerpc_server_lsa_init(TALLOC_CTX *ctx)
 {
        NTSTATUS ret;
 
 {
        NTSTATUS ret;
 
-       ret = dcerpc_server_dssetup_init();
+       ret = dcerpc_server_dssetup_init(ctx);
        if (!NT_STATUS_IS_OK(ret)) {
                return ret;
        }
        if (!NT_STATUS_IS_OK(ret)) {
                return ret;
        }
-       ret = dcerpc_server_lsarpc_init();
+       ret = dcerpc_server_lsarpc_init(ctx);
        if (!NT_STATUS_IS_OK(ret)) {
                return ret;
        }
        if (!NT_STATUS_IS_OK(ret)) {
                return ret;
        }
index 8fb8332ef0f939331ffa20f6c40d8f91551723f9..f6b1ac9f82134890e4fc7de8a8804ea119b859b9 100644 (file)
@@ -39,7 +39,7 @@
 #include "../libcli/named_pipe_auth/npa_tstream.h"
 #include "smbd/process_model.h"
 
 #include "../libcli/named_pipe_auth/npa_tstream.h"
 #include "smbd/process_model.h"
 
-NTSTATUS server_service_rpc_init(void);
+NTSTATUS server_service_rpc_init(TALLOC_CTX *);
 
 /*
   open the dcerpc server sockets
 
 /*
   open the dcerpc server sockets
@@ -124,7 +124,7 @@ failed:
        task_server_terminate(task, "Failed to startup dcerpc server task", true);      
 }
 
        task_server_terminate(task, "Failed to startup dcerpc server task", true);      
 }
 
-NTSTATUS server_service_rpc_init(void)
+NTSTATUS server_service_rpc_init(TALLOC_CTX *ctx)
 {
        return register_server_service("rpc", dcesrv_task_init);
 }
 {
        return register_server_service("rpc", dcesrv_task_init);
 }
index 05004b009c9754b6f8bd995349f1f9b13e9d14c9..1a830d0e32287dfe64bd877dab1b4f8f94692251 100644 (file)
@@ -85,7 +85,7 @@ failed:
 }
 
 /* called at smbd startup - register ourselves as a server service */
 }
 
 /* called at smbd startup - register ourselves as a server service */
-NTSTATUS server_service_smb_init(void)
+NTSTATUS server_service_smb_init(TALLOC_CTX *ctx)
 {
        ntvfs_init(cmdline_lp_ctx);
        share_init();
 {
        ntvfs_init(cmdline_lp_ctx);
        share_init();
index bbcbe3b6acc789369efdcda80dab7b794c71b9df..20a130b70c3d5dcd735a40f899269741cdc9db31 100644 (file)
@@ -101,7 +101,7 @@ _PUBLIC_ NTSTATUS register_process_model(const struct model_ops *ops)
 
 _PUBLIC_ NTSTATUS process_model_init(struct loadparm_context *lp_ctx)
 {
 
 _PUBLIC_ NTSTATUS process_model_init(struct loadparm_context *lp_ctx)
 {
-#define _MODULE_PROTO(init) extern NTSTATUS init(void);
+#define _MODULE_PROTO(init) extern NTSTATUS init(TALLOC_CTX *);
        STATIC_process_model_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_process_model_MODULES };
        init_module_fn *shared_init;
        STATIC_process_model_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_process_model_MODULES };
        init_module_fn *shared_init;
@@ -114,8 +114,8 @@ _PUBLIC_ NTSTATUS process_model_init(struct loadparm_context *lp_ctx)
 
        shared_init = load_samba_modules(NULL, "process_model");
        
 
        shared_init = load_samba_modules(NULL, "process_model");
        
-       run_init_functions(static_init);
-       run_init_functions(shared_init);
+       run_init_functions(NULL, static_init);
+       run_init_functions(NULL, shared_init);
 
        talloc_free(shared_init);
 
 
        talloc_free(shared_init);
 
index a1b785ee41b712463f7c417bddc641e3d797842d..f483e000be7c8f8a9bbef80a6330e994d9560918 100644 (file)
@@ -26,7 +26,7 @@
 #include "system/filesys.h"
 #include "cluster/cluster.h"
 
 #include "system/filesys.h"
 #include "cluster/cluster.h"
 
-NTSTATUS process_model_single_init(void);
+NTSTATUS process_model_single_init(TALLOC_CTX *);
 
 /*
   called when the process model is selected
 
 /*
   called when the process model is selected
@@ -132,7 +132,7 @@ const struct model_ops single_ops = {
   initialise the single process model, registering ourselves with the
   process model subsystem
  */
   initialise the single process model, registering ourselves with the
   process model subsystem
  */
-NTSTATUS process_model_single_init(void)
+NTSTATUS process_model_single_init(TALLOC_CTX *ctx)
 {
        return register_process_model(&single_ops);
 }
 {
        return register_process_model(&single_ops);
 }
index 92f07add42c40666805828ce9d99ba35c3e1cca5..967b06468d155d0dab743e5cd73b5f6d3018b501 100644 (file)
@@ -39,7 +39,7 @@ struct standard_child_state {
        struct tevent_fd *from_child_fde;
 };
 
        struct tevent_fd *from_child_fde;
 };
 
-NTSTATUS process_model_standard_init(void);
+NTSTATUS process_model_standard_init(TALLOC_CTX *);
 
 /* we hold a pipe open in the parent, and the any child
    processes wait for EOF on that pipe. This ensures that
 
 /* we hold a pipe open in the parent, and the any child
    processes wait for EOF on that pipe. This ensures that
@@ -502,7 +502,7 @@ static const struct model_ops standard_ops = {
 /*
   initialise the standard process model, registering ourselves with the process model subsystem
  */
 /*
   initialise the standard process model, registering ourselves with the process model subsystem
  */
-NTSTATUS process_model_standard_init(void)
+NTSTATUS process_model_standard_init(TALLOC_CTX *ctx)
 {
        return register_process_model(&standard_ops);
 }
 {
        return register_process_model(&standard_ops);
 }
index fdc36dec1291d8cc97d38fa79bcb2295dbec56cb..a8bad06bed352a270c395e45de017c7b0eb74405 100644 (file)
@@ -343,7 +343,7 @@ static int binary_smbd_main(const char *binary_name,
        bool opt_interactive = false;
        int opt;
        poptContext pc;
        bool opt_interactive = false;
        int opt;
        poptContext pc;
-#define _MODULE_PROTO(init) extern NTSTATUS init(void);
+#define _MODULE_PROTO(init) extern NTSTATUS init(TALLOC_CTX *);
        STATIC_service_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_service_MODULES };
        init_module_fn *shared_init;
        STATIC_service_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_service_MODULES };
        init_module_fn *shared_init;
@@ -484,8 +484,8 @@ static int binary_smbd_main(const char *binary_name,
 
        shared_init = load_samba_modules(NULL, "service");
 
 
        shared_init = load_samba_modules(NULL, "service");
 
-       run_init_functions(static_init);
-       run_init_functions(shared_init);
+       run_init_functions(NULL, static_init);
+       run_init_functions(NULL, shared_init);
 
        talloc_free(shared_init);
 
 
        talloc_free(shared_init);
 
index 737c799358f778cbd62a632f94c8f2ccfc912aad..f5ee966eac86490eaa641c4d433bec96ca975f0a 100644 (file)
@@ -1935,7 +1935,7 @@ static bool run_birthtimetest(struct torture_context *tctx,
 }
 
 
 }
 
 
-NTSTATUS torture_base_init(void)
+NTSTATUS torture_base_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "base");
 
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "base");
 
index ee884f1860ee81a58c40139d0c4a29b6bb1cb3d3..82e6843bbcfb66a4826e11a9bfbcb14c3b3dd59f 100644 (file)
@@ -501,7 +501,7 @@ static bool test_low_referral_level(struct torture_context *tctx,
        return true;
 }
 
        return true;
 }
 
-NTSTATUS torture_dfs_init(void)
+NTSTATUS torture_dfs_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "dfs");
        struct torture_suite *suite_basic = torture_suite_create(suite, "domain");
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "dfs");
        struct torture_suite *suite_basic = torture_suite_create(suite, "domain");
index d7f4c9914291ecf33023fb0d7d905b932f17a44c..7a01ec0ec286c4516381a3328074cb2b0b8dcae5 100644 (file)
@@ -1080,8 +1080,8 @@ static struct torture_suite *dlz_bind9_suite(TALLOC_CTX *ctx)
 /**
  * DNS torture module initialization
  */
 /**
  * DNS torture module initialization
  */
-NTSTATUS torture_bind_dns_init(void);
-NTSTATUS torture_bind_dns_init(void)
+NTSTATUS torture_bind_dns_init(TALLOC_CTX *);
+NTSTATUS torture_bind_dns_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite;
        TALLOC_CTX *mem_ctx = talloc_autofree_context();
 {
        struct torture_suite *suite;
        TALLOC_CTX *mem_ctx = talloc_autofree_context();
index b1cb9672e8b4ed986a8592a27bdc2ef2cf88c9cd..ac234e1b38b790c91fcfbfe7ab058ff67d7cc8a3 100644 (file)
@@ -171,12 +171,12 @@ static struct torture_suite *internal_dns_suite(TALLOC_CTX *ctx)
 
 
 /* Silence silly compiler warning */
 
 
 /* Silence silly compiler warning */
-NTSTATUS torture_internal_dns_init(void);
+NTSTATUS torture_internal_dns_init(TALLOC_CTX *);
 
 /**
  * DNS torture module initialization
  */
 
 /**
  * DNS torture module initialization
  */
-NTSTATUS torture_internal_dns_init(void)
+NTSTATUS torture_internal_dns_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite;
        TALLOC_CTX *mem_ctx = talloc_autofree_context();
 {
        struct torture_suite *suite;
        TALLOC_CTX *mem_ctx = talloc_autofree_context();
index b0aeb411da561a68a6a072eb376c19775dd5c855..2dcb6f1b56db1e2acbb9104506bae6fb793686fd 100644 (file)
@@ -62,7 +62,7 @@ static struct torture_suite * torture_drs_unit_suite(TALLOC_CTX *mem_ctx,
 /**
  * DRSUAPI torture module initialization
  */
 /**
  * DRSUAPI torture module initialization
  */
-NTSTATUS torture_drs_init(void)
+NTSTATUS torture_drs_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite;
        TALLOC_CTX *mem_ctx = talloc_autofree_context();
 {
        struct torture_suite *suite;
        TALLOC_CTX *mem_ctx = talloc_autofree_context();
index 70fcc32df177ad3324cc4f7056fc9d8f70366bce..b6c811724bc0eac38364109a36f2374660f75629 100644 (file)
@@ -685,7 +685,7 @@ static bool torture_krb5_as_req_aes_rc4(struct torture_context *tctx)
                                         TORTURE_KRB5_TEST_AES_RC4);
 }
 
                                         TORTURE_KRB5_TEST_AES_RC4);
 }
 
-NTSTATUS torture_krb5_init(void)
+NTSTATUS torture_krb5_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "krb5");
        struct torture_suite *kdc_suite = torture_suite_create(suite, "kdc");
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "krb5");
        struct torture_suite *kdc_suite = torture_suite_create(suite, "kdc");
index 88bff0b0ee44e206e7adee2cf733daed76d6f086..882627eb6f319bd826c5e10e9c42931cc96112d2 100644 (file)
@@ -38,7 +38,7 @@ static bool test_skip(struct torture_context *tctx)
        return true;
 }
 
        return true;
 }
 
-NTSTATUS torture_krb5_init(void)
+NTSTATUS torture_krb5_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite =
                torture_suite_create(talloc_autofree_context(), "krb5");
 {
        struct torture_suite *suite =
                torture_suite_create(talloc_autofree_context(), "krb5");
index a37af68e1fd78bcaba79c7be5e5a3f494830e89e..50c5e033cb5dd0567f7a1c76b78bdc8444d56e39 100644 (file)
@@ -129,7 +129,7 @@ NTSTATUS torture_ldap_close(struct ldap_connection *conn)
        return NT_STATUS_OK;
 }
 
        return NT_STATUS_OK;
 }
 
-NTSTATUS torture_ldap_init(void)
+NTSTATUS torture_ldap_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "ldap");
        torture_suite_add_simple_test(suite, "bench-cldap", torture_bench_cldap);
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "ldap");
        torture_suite_add_simple_test(suite, "bench-cldap", torture_bench_cldap);
index 3b9548cec90d987fa7e386fd636c6bc47bceccf1..7b9c31a6daa330224dbe86ff991435578e3161c3 100644 (file)
@@ -24,7 +24,7 @@
 #include "libnet/libnet.h"
 #include "torture/libnet/proto.h"
 
 #include "libnet/libnet.h"
 #include "torture/libnet/proto.h"
 
-NTSTATUS torture_net_init(void)
+NTSTATUS torture_net_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite = torture_suite_create(
                talloc_autofree_context(), "net");
 {
        struct torture_suite *suite = torture_suite_create(
                talloc_autofree_context(), "net");
index 5e316ac25595cbfba400869e06cb3740ea4a7ea8..856b2c8f997b3c7e79f4490621f45b4daef60a1c 100644 (file)
@@ -80,7 +80,7 @@ static bool torture_libnetapi_initialize(struct torture_context *tctx)
        return true;
 }
 
        return true;
 }
 
-NTSTATUS torture_libnetapi_init(void)
+NTSTATUS torture_libnetapi_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite;
 
 {
        struct torture_suite *suite;
 
index 2e78c3a40200eaabcf24191331362052492e0058..c714a975c7697e1e317ef6c0d07c56636af9a963 100644 (file)
@@ -201,7 +201,7 @@ bool torture_libsmbclient_options(struct torture_context *tctx)
        return true;
 }
 
        return true;
 }
 
-NTSTATUS torture_libsmbclient_init(void)
+NTSTATUS torture_libsmbclient_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite;
 
 {
        struct torture_suite *suite;
 
index 353cc270fa4a37bcae7dd3847f6afeaa828a1756..e7231524a5167e51170664ab4e554af77bfdc922 100644 (file)
@@ -79,7 +79,7 @@
        NULL
 };
 
        NULL
 };
 
-NTSTATUS torture_local_init(void)
+NTSTATUS torture_local_init(TALLOC_CTX *ctx)
 {
        int i;
        struct torture_suite *suite = torture_suite_create(
 {
        int i;
        struct torture_suite *suite = torture_suite_create(
index 2f1043590a74b67ed3cbe5c976ca70f381023c22..979f16e566680d60f0995d70d533948c803b0225 100644 (file)
@@ -284,7 +284,7 @@ bool torture_nbench(struct torture_context *torture)
        return correct;
 }
 
        return correct;
 }
 
-NTSTATUS torture_nbench_init(void)
+NTSTATUS torture_nbench_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite = torture_suite_create(
                                                   talloc_autofree_context(), "bench");
 {
        struct torture_suite *suite = torture_suite_create(
                                                   talloc_autofree_context(), "bench");
index 1b7fe49cf84d100e0709863a63e3301dad170209..ac53c9167c57c90039b8f8ebd711f43efa9aba00 100644 (file)
@@ -48,7 +48,7 @@ bool torture_nbt_get_name(struct torture_context *tctx,
        return true;
 }
 
        return true;
 }
 
-NTSTATUS torture_nbt_init(void)
+NTSTATUS torture_nbt_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite = torture_suite_create(
                talloc_autofree_context(), "nbt");
 {
        struct torture_suite *suite = torture_suite_create(
                talloc_autofree_context(), "nbt");
index 18ac1428550c47997215fb2eb46ab6f2de0e57b0..1963e5732461d44fef3dbba8000623c8d95bc2c6 100644 (file)
@@ -284,7 +284,7 @@ static bool test_ntp_signd(struct torture_context *tctx,
        return true;
 }
 
        return true;
 }
 
-NTSTATUS torture_ntp_init(void)
+NTSTATUS torture_ntp_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "ntp");
        struct torture_rpc_tcase *tcase;
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "ntp");
        struct torture_rpc_tcase *tcase;
index ee37158a43165b60f2c8c66e9e7998e4b0c26677..043154b46211b436e6eef2751a0f7f2502f903c4 100644 (file)
@@ -241,7 +241,7 @@ bool torture_rap_scan(struct torture_context *torture, struct smbcli_state *cli)
        return true;
 }
 
        return true;
 }
 
-NTSTATUS torture_rap_init(void)
+NTSTATUS torture_rap_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "rap");
        struct torture_suite *suite_basic = torture_suite_create(suite, "basic");
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "rap");
        struct torture_suite *suite_basic = torture_suite_create(suite, "basic");
index bda463b8a7239e598b89e073cdd941d493178640..5b237d32ebfbea5e15adc38f486dbb21c315a790 100644 (file)
@@ -23,7 +23,7 @@
 #include "torture/smbtorture.h"
 #include "torture/raw/proto.h"
 
 #include "torture/smbtorture.h"
 #include "torture/raw/proto.h"
 
-NTSTATUS torture_raw_init(void)
+NTSTATUS torture_raw_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite = torture_suite_create(
                talloc_autofree_context(), "raw");
 {
        struct torture_suite *suite = torture_suite_create(
                talloc_autofree_context(), "raw");
index 4c9f75f05d4bd15ebaa004a1db2d7e67d80177fa..12dcced1e2afda7399f3a161d8ad8f20b80fe19f 100644 (file)
@@ -482,7 +482,7 @@ _PUBLIC_ struct torture_test *torture_rpc_tcase_add_test_ex(
        return test;
 }
 
        return test;
 }
 
-NTSTATUS torture_rpc_init(void)
+NTSTATUS torture_rpc_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "rpc");
 
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "rpc");
 
index d8e3a066cedb3dafc162d4d5b75785fbfdc0d376..3c3c22a43f3b3ab6a28426fd8dfdb6a531139545 100644 (file)
@@ -143,7 +143,7 @@ struct torture_test *torture_suite_add_2smb2_test(struct torture_suite *suite,
        return test;
 }
 
        return test;
 }
 
-NTSTATUS torture_smb2_init(void)
+NTSTATUS torture_smb2_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "smb2");
        torture_suite_add_simple_test(suite, "connect", torture_smb2_connect);
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "smb2");
        torture_suite_add_simple_test(suite, "connect", torture_smb2_connect);
index fc50436933f8d20bc6ebb7a2a100a489ba776e8a..1595786c2b3c89017a063a8e4c81fb716f5d888d 100644 (file)
@@ -560,7 +560,7 @@ int main(int argc, const char *argv[])
                if (fn == NULL) 
                        d_printf("Unable to load module from %s\n", poptGetOptArg(pc));
                else {
                if (fn == NULL) 
                        d_printf("Unable to load module from %s\n", poptGetOptArg(pc));
                else {
-                       status = fn();
+                       status = fn(NULL);
                        if (NT_STATUS_IS_ERR(status)) {
                                d_printf("Error initializing module %s: %s\n", 
                                        poptGetOptArg(pc), nt_errstr(status));
                        if (NT_STATUS_IS_ERR(status)) {
                                d_printf("Error initializing module %s: %s\n", 
                                        poptGetOptArg(pc), nt_errstr(status));
index b066d3e1ac612b302de21326c2c5d09966026388..01089219b876cbea9938580fcc188ee5cf9e461f 100644 (file)
@@ -46,13 +46,13 @@ bool torture_register_suite(struct torture_suite *suite)
 
 _PUBLIC_ int torture_init(void)
 {
 
 _PUBLIC_ int torture_init(void)
 {
-#define _MODULE_PROTO(init) extern NTSTATUS init(void);
+#define _MODULE_PROTO(init) extern NTSTATUS init(TALLOC_CTX *);
        STATIC_smbtorture_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_smbtorture_MODULES };
        init_module_fn *shared_init = load_samba_modules(NULL, "smbtorture");
 
        STATIC_smbtorture_MODULES_PROTO;
        init_module_fn static_init[] = { STATIC_smbtorture_MODULES };
        init_module_fn *shared_init = load_samba_modules(NULL, "smbtorture");
 
-       run_init_functions(static_init);
-       run_init_functions(shared_init);
+       run_init_functions(NULL, static_init);
+       run_init_functions(NULL, shared_init);
 
        talloc_free(shared_init);
 
 
        talloc_free(shared_init);
 
index ec8afef279a3fe41a044c3226e2e0e27d4051b3a..0ea1b51f9bcad42fa546d065d21648f837e72a4d 100644 (file)
@@ -21,7 +21,7 @@
 #include "torture/smbtorture.h"
 #include "torture/unix/proto.h"
 
 #include "torture/smbtorture.h"
 #include "torture/unix/proto.h"
 
-NTSTATUS torture_unix_init(void)
+NTSTATUS torture_unix_init(TALLOC_CTX *ctx)
 {
         struct torture_suite *suite =
                 torture_suite_create(talloc_autofree_context(), "unix");
 {
         struct torture_suite *suite =
                 torture_suite_create(talloc_autofree_context(), "unix");
index 710e93bf2efbecdba976bd363daeb3ca190ea6b8..8c1f1ff6f40178569528841de3cc930a1c9ce379 100644 (file)
@@ -101,7 +101,7 @@ struct torture_test *torture_suite_add_2ns_smb2_test(struct torture_suite *suite
        return test;
 }
 
        return test;
 }
 
-NTSTATUS torture_vfs_init(void)
+NTSTATUS torture_vfs_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite = torture_suite_create(
                talloc_autofree_context(), "vfs");
 {
        struct torture_suite *suite = torture_suite_create(
                talloc_autofree_context(), "vfs");
index 29ef5dbaaf070d59ac0aeca357f230f051f61f4c..74de381972296a013c2094d51a5def90ccbedda5 100644 (file)
@@ -290,7 +290,7 @@ static bool torture_winbind_pac_krb5(struct torture_context *tctx)
        return torture_winbind_pac(tctx, NULL, "krb5");
 }      
 
        return torture_winbind_pac(tctx, NULL, "krb5");
 }      
 
-NTSTATUS torture_winbind_init(void)
+NTSTATUS torture_winbind_init(TALLOC_CTX *ctx)
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "winbind");
        struct torture_suite *pac_suite;
 {
        struct torture_suite *suite = torture_suite_create(talloc_autofree_context(), "winbind");
        struct torture_suite *pac_suite;
index d83b35a5429fb90c1d3518762a4116754f9309b2..02f24609cc50ed7c71e4c4132b2e2a22af40913a 100644 (file)
@@ -28,7 +28,7 @@
 #include "lib/socket/netif.h"
 #include "param/param.h"
 
 #include "lib/socket/netif.h"
 #include "param/param.h"
 
-NTSTATUS server_service_web_init(void);
+NTSTATUS server_service_web_init(TALLOC_CTX *);
 
 /* don't allow connections to hang around forever */
 #define HTTP_TIMEOUT 120
 
 /* don't allow connections to hang around forever */
 #define HTTP_TIMEOUT 120
@@ -370,7 +370,7 @@ failed:
 
 
 /* called at smbd startup - register ourselves as a server service */
 
 
 /* called at smbd startup - register ourselves as a server service */
-NTSTATUS server_service_web_init(void)
+NTSTATUS server_service_web_init(TALLOC_CTX *ctx)
 {
        return register_server_service("web", websrv_task_init);
 }
 {
        return register_server_service("web", websrv_task_init);
 }
index 80abd7a3105b00aecfee7b3a466a10ee561b353a..6e6f262cf7a509eef3e62803baf8dbca07e2f8fb 100644 (file)
@@ -86,9 +86,9 @@ static void winbindd_task_init(struct task_server *task)
 }
 
 /* called at winbindd startup - register ourselves as a server service */
 }
 
 /* called at winbindd startup - register ourselves as a server service */
-NTSTATUS server_service_winbindd_init(void);
+NTSTATUS server_service_winbindd_init(TALLOC_CTX *);
 
 
-NTSTATUS server_service_winbindd_init(void)
+NTSTATUS server_service_winbindd_init(TALLOC_CTX *ctx)
 {
        NTSTATUS status = register_server_service("winbindd", winbindd_task_init);
        if (!NT_STATUS_IS_OK(status)) {
 {
        NTSTATUS status = register_server_service("winbindd", winbindd_task_init);
        if (!NT_STATUS_IS_OK(status)) {
index 75a927aaac9b375c986724b2d2f1337af68b5c1e..d054a222cad630ba8d2d4306f1374776cf100f6d 100644 (file)
@@ -506,7 +506,7 @@ static void wreplsrv_task_init(struct task_server *task)
 /*
   register ourselves as a available server
 */
 /*
   register ourselves as a available server
 */
-NTSTATUS server_service_wrepl_init(void)
+NTSTATUS server_service_wrepl_init(TALLOC_CTX *ctx)
 {
        return register_server_service("wrepl", wreplsrv_task_init);
 }
 {
        return register_server_service("wrepl", wreplsrv_task_init);
 }