Revert "Remove copy of torture file."
authorJelmer Vernooij <jelmer@samba.org>
Sat, 10 May 2008 21:38:56 +0000 (23:38 +0200)
committerJelmer Vernooij <jelmer@samba.org>
Sat, 10 May 2008 21:38:56 +0000 (23:38 +0200)
This reverts commit 89bfca2da2b614e979a20c9a293b798ed7ae15ae.
(This used to be commit c6c4349c44cb6479fa7aa129931ff9ac88068ba6)

source4/torture/config.mk
source4/torture/torture.c [new file with mode: 0644]

index 27d168f85c7319c7a66297067cef3d44b2bf1a6d..4113cab0642bb77f5f1aa433ffea0cfef848e8e1 100644 (file)
@@ -241,7 +241,7 @@ PRIVATE_DEPENDENCIES = \
 # End BINARY smbtorture
 #################################
 
-smbtorture_OBJ_FILES = torture/smbtorture.o 
+smbtorture_OBJ_FILES = torture/smbtorture.o torture/torture.o 
 
 PUBLIC_HEADERS += torture/smbtorture.h
 MANPAGES += torture/man/smbtorture.1
diff --git a/source4/torture/torture.c b/source4/torture/torture.c
new file mode 100644 (file)
index 0000000..39d85e0
--- /dev/null
@@ -0,0 +1,71 @@
+/* 
+   Unix SMB/CIFS implementation.
+   SMB torture tester
+   Copyright (C) Andrew Tridgell 1997-2003
+   Copyright (C) Jelmer Vernooij 2006
+   
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+   
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+   
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#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"
+
+_PUBLIC_ int torture_numops=10;
+_PUBLIC_ int torture_entries=1000;
+_PUBLIC_ int torture_failures=1;
+_PUBLIC_ int torture_seed=0;
+_PUBLIC_ int torture_numasync=100;
+
+struct torture_suite *torture_root = NULL;
+
+bool torture_register_suite(struct torture_suite *suite)
+{
+       if (!suite)
+               return true;
+
+       if (torture_root == NULL)
+               torture_root = talloc_zero(talloc_autofree_context(), struct torture_suite);
+
+       return torture_suite_add_suite(torture_root, suite);
+}
+
+
+_PUBLIC_ int torture_init(void)
+{
+       extern NTSTATUS torture_base_init(void);
+       extern NTSTATUS torture_ldap_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);
+       init_module_fn static_init[] = { STATIC_torture_MODULES };
+       init_module_fn *shared_init = load_samba_modules(NULL, cmdline_lp_ctx, "torture");
+
+       run_init_functions(static_init);
+       run_init_functions(shared_init);
+
+       talloc_free(shared_init);
+
+       return 0;
+}