dsdb/mod/extended_dn_out: use faster removal filters
[bbaumbach/samba-autobuild/.git] / source4 / torture / torture.c
index deae65c26598ea10c99f5537777e0d10f90a047c..cc29ffad09af63b2a02f7a7bf50842f237f9726a 100644 (file)
 
 #include "includes.h"
 #include "system/time.h"
-#include "torture/torture.h"
-#include "../lib/util/dlinklist.h"
 #include "param/param.h"
 #include "lib/cmdline/popt_common.h"
 #include "torture/smbtorture.h"
+#include "lib/util/samba_modules.h"
 
 _PUBLIC_ int torture_numops=10;
 _PUBLIC_ int torture_entries=1000;
@@ -34,38 +33,26 @@ _PUBLIC_ int torture_numasync=100;
 
 struct torture_suite *torture_root = NULL;
 
-bool torture_register_suite(struct torture_suite *suite)
+bool torture_register_suite(TALLOC_CTX *mem_ctx, struct torture_suite *suite)
 {
        if (!suite)
                return true;
 
        if (torture_root == NULL)
-               torture_root = talloc_zero(talloc_autofree_context(), struct torture_suite);
+               torture_root = talloc_zero(mem_ctx, struct torture_suite);
 
        return torture_suite_add_suite(torture_root, suite);
 }
 
-
-_PUBLIC_ int torture_init(void)
+_PUBLIC_ int torture_init(TALLOC_CTX *mem_ctx)
 {
-       extern NTSTATUS torture_base_init(void);
-       extern NTSTATUS torture_ldap_init(void);
-       extern NTSTATUS torture_ldb_init(void);
-       extern NTSTATUS torture_local_init(void);
-       extern NTSTATUS torture_nbt_init(void);
-       extern NTSTATUS torture_nbench_init(void);
-       extern NTSTATUS torture_rap_init(void);
-       extern NTSTATUS torture_rpc_init(void);
-       extern NTSTATUS torture_smb2_init(void);
-       extern NTSTATUS torture_net_init(void);
-       extern NTSTATUS torture_raw_init(void);
-       extern NTSTATUS torture_unix_init(void);
-       extern NTSTATUS torture_winbind_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, cmdline_lp_ctx, "smbtorture");
+       init_module_fn *shared_init = load_samba_modules(mem_ctx, "smbtorture");
 
-       run_init_functions(static_init);
-       run_init_functions(shared_init);
+       run_init_functions(mem_ctx, static_init);
+       run_init_functions(mem_ctx, shared_init);
 
        talloc_free(shared_init);