summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/torture/basic/aliases.c2
-rw-r--r--source4/torture/basic/attr.c1
-rw-r--r--source4/torture/basic/base.c1
-rw-r--r--source4/torture/basic/charset.c1
-rw-r--r--source4/torture/basic/delaywrite.c1
-rw-r--r--source4/torture/basic/delete.c1
-rw-r--r--source4/torture/basic/denytest.c1
-rw-r--r--source4/torture/basic/dir.c1
-rw-r--r--source4/torture/basic/disconnect.c1
-rw-r--r--source4/torture/basic/locking.c1
-rw-r--r--source4/torture/basic/mangle_test.c1
-rw-r--r--source4/torture/basic/properties.c1
-rw-r--r--source4/torture/basic/rename.c1
-rw-r--r--source4/torture/basic/scanner.c1
-rw-r--r--source4/torture/basic/secleak.c1
-rw-r--r--source4/torture/basic/unlink.c1
-rw-r--r--source4/torture/basic/utable.c1
-rw-r--r--source4/torture/config.mk6
-rw-r--r--source4/torture/gentest.c23
-rw-r--r--source4/torture/local/iconv.c1
-rw-r--r--source4/torture/nbench/nbench.c3
-rw-r--r--source4/torture/nbench/nbio.c2
-rw-r--r--source4/torture/rap/rap.c3
-rw-r--r--source4/torture/raw/acls.c1
-rw-r--r--source4/torture/raw/chkpath.c1
-rw-r--r--source4/torture/raw/close.c1
-rw-r--r--source4/torture/raw/composite.c1
-rw-r--r--source4/torture/raw/context.c1
-rw-r--r--source4/torture/raw/eas.c1
-rw-r--r--source4/torture/raw/ioctl.c1
-rw-r--r--source4/torture/raw/lock.c1
-rw-r--r--source4/torture/raw/mkdir.c1
-rw-r--r--source4/torture/raw/mux.c1
-rw-r--r--source4/torture/raw/notify.c1
-rw-r--r--source4/torture/raw/open.c1
-rw-r--r--source4/torture/raw/oplock.c1
-rw-r--r--source4/torture/raw/qfileinfo.c1
-rw-r--r--source4/torture/raw/qfsinfo.c1
-rw-r--r--source4/torture/raw/read.c1
-rw-r--r--source4/torture/raw/rename.c1
-rw-r--r--source4/torture/raw/search.c1
-rw-r--r--source4/torture/raw/seek.c1
-rw-r--r--source4/torture/raw/setfileinfo.c1
-rw-r--r--source4/torture/raw/streams.c1
-rw-r--r--source4/torture/raw/unlink.c1
-rw-r--r--source4/torture/raw/write.c1
-rw-r--r--source4/torture/torture.c74
-rw-r--r--source4/torture/torture.h2
-rw-r--r--source4/torture/torture_util.c95
49 files changed, 148 insertions, 102 deletions
diff --git a/source4/torture/basic/aliases.c b/source4/torture/basic/aliases.c
index 142899ba8d..40a1c68b8b 100644
--- a/source4/torture/basic/aliases.c
+++ b/source4/torture/basic/aliases.c
@@ -22,6 +22,8 @@
#include "dlinklist.h"
#include "libcli/raw/libcliraw.h"
#include "torture/torture.h"
+#include "libcli/libcli.h"
+#include "torture/util.h"
int create_complex_file(struct smbcli_state *cli, TALLOC_CTX *mem_ctx, const char *fname);
diff --git a/source4/torture/basic/attr.c b/source4/torture/basic/attr.c
index e321993749..b410d5b3e5 100644
--- a/source4/torture/basic/attr.c
+++ b/source4/torture/basic/attr.c
@@ -23,6 +23,7 @@
#include "includes.h"
#include "torture/torture.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
extern int torture_failures;
diff --git a/source4/torture/basic/base.c b/source4/torture/basic/base.c
index 87ea9fe0dd..83ca797669 100644
--- a/source4/torture/basic/base.c
+++ b/source4/torture/basic/base.c
@@ -23,6 +23,7 @@
#include "torture/torture.h"
#include "torture/basic/proto.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#include "system/filesys.h"
#include "system/time.h"
#include "libcli/resolve/resolve.h"
diff --git a/source4/torture/basic/charset.c b/source4/torture/basic/charset.c
index 186b265e19..81a9c6bb63 100644
--- a/source4/torture/basic/charset.c
+++ b/source4/torture/basic/charset.c
@@ -24,6 +24,7 @@
#include "torture/torture.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define BASEDIR "\\chartest\\"
diff --git a/source4/torture/basic/delaywrite.c b/source4/torture/basic/delaywrite.c
index 37a9528f97..2f1c4b98c7 100644
--- a/source4/torture/basic/delaywrite.c
+++ b/source4/torture/basic/delaywrite.c
@@ -28,6 +28,7 @@
#include "system/time.h"
#include "system/filesys.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define BASEDIR "\\delaywrite"
diff --git a/source4/torture/basic/delete.c b/source4/torture/basic/delete.c
index 98bd00010f..97ae518ea8 100644
--- a/source4/torture/basic/delete.c
+++ b/source4/torture/basic/delete.c
@@ -23,6 +23,7 @@
#include "includes.h"
#include "libcli/libcli.h"
#include "torture/torture.h"
+#include "torture/util.h"
#include "system/filesys.h"
#include "libcli/raw/libcliraw.h"
diff --git a/source4/torture/basic/denytest.c b/source4/torture/basic/denytest.c
index 127df9052d..2a01d12c5b 100644
--- a/source4/torture/basic/denytest.c
+++ b/source4/torture/basic/denytest.c
@@ -23,6 +23,7 @@
#include "system/filesys.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
extern BOOL torture_showall;
extern int torture_failures;
diff --git a/source4/torture/basic/dir.c b/source4/torture/basic/dir.c
index 9dd62f3aa1..ca85ac4715 100644
--- a/source4/torture/basic/dir.c
+++ b/source4/torture/basic/dir.c
@@ -23,6 +23,7 @@
#include "includes.h"
#include "libcli/libcli.h"
#include "torture/torture.h"
+#include "torture/util.h"
#include "system/filesys.h"
static void list_fn(struct clilist_file_info *finfo, const char *name, void *state)
diff --git a/source4/torture/basic/disconnect.c b/source4/torture/basic/disconnect.c
index bc892120e3..d21807aa83 100644
--- a/source4/torture/basic/disconnect.c
+++ b/source4/torture/basic/disconnect.c
@@ -25,6 +25,7 @@
#include "system/filesys.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define BASEDIR "\\test_disconnect"
diff --git a/source4/torture/basic/locking.c b/source4/torture/basic/locking.c
index 9a00ab3efa..65f2dbac31 100644
--- a/source4/torture/basic/locking.c
+++ b/source4/torture/basic/locking.c
@@ -24,6 +24,7 @@
#include "includes.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#include "torture/torture.h"
#include "system/time.h"
#include "system/filesys.h"
diff --git a/source4/torture/basic/mangle_test.c b/source4/torture/basic/mangle_test.c
index 36b7481316..18b2e912ba 100644
--- a/source4/torture/basic/mangle_test.c
+++ b/source4/torture/basic/mangle_test.c
@@ -23,6 +23,7 @@
#include "system/filesys.h"
#include "lib/tdb/include/tdbutil.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#include "pstring.h"
static TDB_CONTEXT *tdb;
diff --git a/source4/torture/basic/properties.c b/source4/torture/basic/properties.c
index c20edf545b..1f0027cf0d 100644
--- a/source4/torture/basic/properties.c
+++ b/source4/torture/basic/properties.c
@@ -24,6 +24,7 @@
#include "torture/torture.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
struct bitmapping {
const char *name;
diff --git a/source4/torture/basic/rename.c b/source4/torture/basic/rename.c
index 4bdc6f2d9f..3f4e218123 100644
--- a/source4/torture/basic/rename.c
+++ b/source4/torture/basic/rename.c
@@ -23,6 +23,7 @@
#include "includes.h"
#include "libcli/libcli.h"
#include "torture/torture.h"
+#include "torture/util.h"
/*
Test rename on files open with share delete and no share delete.
diff --git a/source4/torture/basic/scanner.c b/source4/torture/basic/scanner.c
index 92de78e7af..8017afadb1 100644
--- a/source4/torture/basic/scanner.c
+++ b/source4/torture/basic/scanner.c
@@ -21,6 +21,7 @@
#include "includes.h"
#include "torture/torture.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#include "libcli/raw/libcliraw.h"
#include "system/filesys.h"
#include "pstring.h"
diff --git a/source4/torture/basic/secleak.c b/source4/torture/basic/secleak.c
index eb0dad534d..5b3685e1e4 100644
--- a/source4/torture/basic/secleak.c
+++ b/source4/torture/basic/secleak.c
@@ -24,6 +24,7 @@
#include "torture/torture.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#include "system/time.h"
#include "libcli/smb_composite/smb_composite.h"
#include "auth/credentials/credentials.h"
diff --git a/source4/torture/basic/unlink.c b/source4/torture/basic/unlink.c
index d99fec5ee8..ab7d5c5ac8 100644
--- a/source4/torture/basic/unlink.c
+++ b/source4/torture/basic/unlink.c
@@ -25,6 +25,7 @@
#include "system/filesys.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define BASEDIR "\\unlinktest"
diff --git a/source4/torture/basic/utable.c b/source4/torture/basic/utable.c
index e76627fb03..dfff6f168d 100644
--- a/source4/torture/basic/utable.c
+++ b/source4/torture/basic/utable.c
@@ -23,6 +23,7 @@
#include "system/iconv.h"
#include "system/filesys.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#include "pstring.h"
BOOL torture_utable(void)
diff --git a/source4/torture/config.mk b/source4/torture/config.mk
index 5de3692f05..5dd288cf6c 100644
--- a/source4/torture/config.mk
+++ b/source4/torture/config.mk
@@ -263,8 +263,7 @@ MANPAGE = man/smbtorture.1
[BINARY::gentest]
INSTALLDIR = BINDIR
OBJ_FILES = \
- gentest.o \
- torture_util.o
+ gentest.o
REQUIRED_SUBSYSTEMS = \
CONFIG \
LIBBASIC \
@@ -298,8 +297,7 @@ MANPAGE = man/masktest.1
[BINARY::locktest]
INSTALLDIR = BINDIR
OBJ_FILES = \
- locktest.o \
- torture_util.o
+ locktest.o
REQUIRED_SUBSYSTEMS = \
LIBSMB \
CONFIG \
diff --git a/source4/torture/gentest.c b/source4/torture/gentest.c
index 9bfcbaac64..6a97f24ba5 100644
--- a/source4/torture/gentest.c
+++ b/source4/torture/gentest.c
@@ -26,7 +26,6 @@
#include "libcli/raw/libcliraw.h"
#include "librpc/gen_ndr/security.h"
#include "auth/gensec/gensec.h"
-#include "torture/torture.h"
#define NSERVERS 2
#define NINSTANCES 2
@@ -2136,6 +2135,28 @@ static void usage(void)
");
}
+/**
+ split a UNC name into server and share names
+*/
+static BOOL split_unc_name(const char *unc, char **server, char **share)
+{
+ char *p = strdup(unc);
+ if (!p) return False;
+ all_string_sub(p, "\\", "/", 0);
+ if (strncmp(p, "//", 2) != 0) return False;
+
+ (*server) = p+2;
+ p = strchr(*server, '/');
+ if (!p) return False;
+
+ *p = 0;
+ (*share) = p+1;
+
+ return True;
+}
+
+
+
/****************************************************************************
main program
****************************************************************************/
diff --git a/source4/torture/local/iconv.c b/source4/torture/local/iconv.c
index 27f7f6fcef..4a91997817 100644
--- a/source4/torture/local/iconv.c
+++ b/source4/torture/local/iconv.c
@@ -25,6 +25,7 @@
#include "torture/torture.h"
#include "system/iconv.h"
#include "system/time.h"
+#include "torture/util.h"
#if HAVE_NATIVE_ICONV
/*
diff --git a/source4/torture/nbench/nbench.c b/source4/torture/nbench/nbench.c
index 77a94145f5..43e9e0b4c5 100644
--- a/source4/torture/nbench/nbench.c
+++ b/source4/torture/nbench/nbench.c
@@ -19,8 +19,9 @@
*/
#include "includes.h"
-#include "torture/torture.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
+#include "torture/torture.h"
#include "system/filesys.h"
#include "pstring.h"
diff --git a/source4/torture/nbench/nbio.c b/source4/torture/nbench/nbio.c
index 86e1eac59f..ce408bba93 100644
--- a/source4/torture/nbench/nbio.c
+++ b/source4/torture/nbench/nbio.c
@@ -27,6 +27,8 @@
#include "libcli/libcli.h"
#include "libcli/raw/libcliraw.h"
#include "torture/torture.h"
+#include "libcli/libcli.h"
+#include "torture/util.h"
#define MAX_FILES 100
diff --git a/source4/torture/rap/rap.c b/source4/torture/rap/rap.c
index 77cf2a1c0a..78edf21820 100644
--- a/source4/torture/rap/rap.c
+++ b/source4/torture/rap/rap.c
@@ -20,7 +20,8 @@
*/
#include "includes.h"
-#include "torture/torture.h"
+#include "libcli/libcli.h"
+#include "torture/util.h"
#include "libcli/rap/rap.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
diff --git a/source4/torture/raw/acls.c b/source4/torture/raw/acls.c
index 8c6fbce851..1c6b28f6ee 100644
--- a/source4/torture/raw/acls.c
+++ b/source4/torture/raw/acls.c
@@ -28,6 +28,7 @@
#include "libcli/util/clilsa.h"
#include "libcli/security/proto.h"
#include "librpc/gen_ndr/ndr_security.h"
+#include "torture/util.h"
#define BASEDIR "\\testsd"
diff --git a/source4/torture/raw/chkpath.c b/source4/torture/raw/chkpath.c
index 7ce5422cfe..c311ea9fa5 100644
--- a/source4/torture/raw/chkpath.c
+++ b/source4/torture/raw/chkpath.c
@@ -22,6 +22,7 @@
#include "torture/torture.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define BASEDIR "\\rawchkpath"
diff --git a/source4/torture/raw/close.c b/source4/torture/raw/close.c
index bfc3127b2e..417fedf204 100644
--- a/source4/torture/raw/close.c
+++ b/source4/torture/raw/close.c
@@ -23,6 +23,7 @@
#include "system/time.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
/* basic testing of all RAW_CLOSE_* calls
diff --git a/source4/torture/raw/composite.c b/source4/torture/raw/composite.c
index d8f7a78b11..237136c3f7 100644
--- a/source4/torture/raw/composite.c
+++ b/source4/torture/raw/composite.c
@@ -30,6 +30,7 @@
#include "libcli/smb_composite/smb_composite.h"
#include "lib/cmdline/popt_common.h"
#include "librpc/gen_ndr/security.h"
+#include "torture/util.h"
#define BASEDIR "\\composite"
diff --git a/source4/torture/raw/context.c b/source4/torture/raw/context.c
index 09968cc1e3..90f4b81131 100644
--- a/source4/torture/raw/context.c
+++ b/source4/torture/raw/context.c
@@ -26,6 +26,7 @@
#include "lib/cmdline/popt_common.h"
#include "lib/events/events.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#include "auth/credentials/credentials.h"
#define BASEDIR "\\rawcontext"
diff --git a/source4/torture/raw/eas.c b/source4/torture/raw/eas.c
index a636f8e1cd..d5e0f33586 100644
--- a/source4/torture/raw/eas.c
+++ b/source4/torture/raw/eas.c
@@ -25,6 +25,7 @@
#include "torture/torture.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define BASEDIR "\\testeas"
diff --git a/source4/torture/raw/ioctl.c b/source4/torture/raw/ioctl.c
index 8631d8efb4..79bb6cd95b 100644
--- a/source4/torture/raw/ioctl.c
+++ b/source4/torture/raw/ioctl.c
@@ -24,6 +24,7 @@
#include "libcli/raw/ioctl.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define BASEDIR "\\rawioctl"
diff --git a/source4/torture/raw/lock.c b/source4/torture/raw/lock.c
index ae29cae4a7..d49d8613cb 100644
--- a/source4/torture/raw/lock.c
+++ b/source4/torture/raw/lock.c
@@ -24,6 +24,7 @@
#include "system/time.h"
#include "system/filesys.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define CHECK_STATUS(status, correct) do { \
if (!NT_STATUS_EQUAL(status, correct)) { \
diff --git a/source4/torture/raw/mkdir.c b/source4/torture/raw/mkdir.c
index ac19ee1187..c68fa7400e 100644
--- a/source4/torture/raw/mkdir.c
+++ b/source4/torture/raw/mkdir.c
@@ -22,6 +22,7 @@
#include "torture/torture.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define BASEDIR "\\mkdirtest"
diff --git a/source4/torture/raw/mux.c b/source4/torture/raw/mux.c
index 98872bb9e3..880300c5d7 100644
--- a/source4/torture/raw/mux.c
+++ b/source4/torture/raw/mux.c
@@ -23,6 +23,7 @@
#include "system/filesys.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define BASEDIR "\\test_mux"
diff --git a/source4/torture/raw/notify.c b/source4/torture/raw/notify.c
index b87f1bddac..617eddf73f 100644
--- a/source4/torture/raw/notify.c
+++ b/source4/torture/raw/notify.c
@@ -23,6 +23,7 @@
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
#include "system/filesys.h"
+#include "torture/util.h"
#define BASEDIR "\\test_notify"
diff --git a/source4/torture/raw/open.c b/source4/torture/raw/open.c
index 94b28f6379..9073d8452e 100644
--- a/source4/torture/raw/open.c
+++ b/source4/torture/raw/open.c
@@ -26,6 +26,7 @@
#include "librpc/gen_ndr/security.h"
#include "lib/events/events.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
/* enum for whether reads/writes are possible on a file */
enum rdwr_mode {RDWR_NONE, RDWR_RDONLY, RDWR_WRONLY, RDWR_RDWR};
diff --git a/source4/torture/raw/oplock.c b/source4/torture/raw/oplock.c
index 5630f94e64..bb1da3c67f 100644
--- a/source4/torture/raw/oplock.c
+++ b/source4/torture/raw/oplock.c
@@ -23,6 +23,7 @@
#include "librpc/gen_ndr/security.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define CHECK_VAL(v, correct) do { \
if ((v) != (correct)) { \
diff --git a/source4/torture/raw/qfileinfo.c b/source4/torture/raw/qfileinfo.c
index 8f248cac04..e9b8475094 100644
--- a/source4/torture/raw/qfileinfo.c
+++ b/source4/torture/raw/qfileinfo.c
@@ -22,6 +22,7 @@
#include "torture/torture.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
static struct {
const char *name;
diff --git a/source4/torture/raw/qfsinfo.c b/source4/torture/raw/qfsinfo.c
index 26bac4c0ad..520dc2a5d0 100644
--- a/source4/torture/raw/qfsinfo.c
+++ b/source4/torture/raw/qfsinfo.c
@@ -22,6 +22,7 @@
#include "torture/torture.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
static struct {
diff --git a/source4/torture/raw/read.c b/source4/torture/raw/read.c
index 424d2f486a..8fdeb61fb8 100644
--- a/source4/torture/raw/read.c
+++ b/source4/torture/raw/read.c
@@ -24,6 +24,7 @@
#include "system/time.h"
#include "system/filesys.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define CHECK_STATUS(status, correct) do { \
if (!NT_STATUS_EQUAL(status, correct)) { \
diff --git a/source4/torture/raw/rename.c b/source4/torture/raw/rename.c
index c669f5fb2f..264b9f0b14 100644
--- a/source4/torture/raw/rename.c
+++ b/source4/torture/raw/rename.c
@@ -22,6 +22,7 @@
#include "torture/torture.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define CHECK_STATUS(status, correct) do { \
if (!NT_STATUS_EQUAL(status, correct)) { \
diff --git a/source4/torture/raw/search.c b/source4/torture/raw/search.c
index 3707287c12..d027ebd273 100644
--- a/source4/torture/raw/search.c
+++ b/source4/torture/raw/search.c
@@ -23,6 +23,7 @@
#include "system/filesys.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define BASEDIR "\\testsearch"
diff --git a/source4/torture/raw/seek.c b/source4/torture/raw/seek.c
index 366d0a45dc..dc0b1ea529 100644
--- a/source4/torture/raw/seek.c
+++ b/source4/torture/raw/seek.c
@@ -23,6 +23,7 @@
#include "system/filesys.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define CHECK_STATUS(status, correct) do { \
if (!NT_STATUS_EQUAL(status, correct)) { \
diff --git a/source4/torture/raw/setfileinfo.c b/source4/torture/raw/setfileinfo.c
index a48fa237aa..3223f266bb 100644
--- a/source4/torture/raw/setfileinfo.c
+++ b/source4/torture/raw/setfileinfo.c
@@ -23,6 +23,7 @@
#include "system/time.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define BASEDIR "\\testsfileinfo"
diff --git a/source4/torture/raw/streams.c b/source4/torture/raw/streams.c
index 2557724fe3..4b3d7a2a89 100644
--- a/source4/torture/raw/streams.c
+++ b/source4/torture/raw/streams.c
@@ -25,6 +25,7 @@
#include "libcli/raw/libcliraw.h"
#include "system/filesys.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define BASEDIR "\\teststreams"
diff --git a/source4/torture/raw/unlink.c b/source4/torture/raw/unlink.c
index 2e5111803c..2808124cd5 100644
--- a/source4/torture/raw/unlink.c
+++ b/source4/torture/raw/unlink.c
@@ -23,6 +23,7 @@
#include "system/filesys.h"
#include "libcli/raw/libcliraw.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define CHECK_STATUS(status, correct) do { \
if (!NT_STATUS_EQUAL(status, correct)) { \
diff --git a/source4/torture/raw/write.c b/source4/torture/raw/write.c
index 894c9de08d..a00a5dd9c9 100644
--- a/source4/torture/raw/write.c
+++ b/source4/torture/raw/write.c
@@ -25,6 +25,7 @@
#include "system/time.h"
#include "system/filesys.h"
#include "libcli/libcli.h"
+#include "torture/util.h"
#define CHECK_STATUS(status, correct) do { \
if (!NT_STATUS_EQUAL(status, correct)) { \
diff --git a/source4/torture/torture.c b/source4/torture/torture.c
index d56e550703..a663a03beb 100644
--- a/source4/torture/torture.c
+++ b/source4/torture/torture.c
@@ -61,80 +61,6 @@ _PUBLIC_ BOOL use_level_II_oplocks;
_PUBLIC_ BOOL torture_showall = False;
-BOOL torture_open_connection_share(TALLOC_CTX *mem_ctx,
- struct smbcli_state **c,
- const char *hostname,
- const char *sharename,
- struct event_context *ev)
-{
- NTSTATUS status;
-
- status = smbcli_full_connection(mem_ctx, c, hostname,
- sharename, NULL,
- cmdline_credentials, ev);
- if (!NT_STATUS_IS_OK(status)) {
- printf("Failed to open connection - %s\n", nt_errstr(status));
- return False;
- }
-
- (*c)->transport->options.use_oplocks = use_oplocks;
- (*c)->transport->options.use_level2_oplocks = use_level_II_oplocks;
-
- return True;
-}
-
-_PUBLIC_ BOOL torture_open_connection(struct smbcli_state **c)
-{
- const char *host = lp_parm_string(-1, "torture", "host");
- const char *share = lp_parm_string(-1, "torture", "share");
-
- return torture_open_connection_share(NULL, c, host, share, NULL);
-}
-
-
-
-_PUBLIC_ BOOL torture_close_connection(struct smbcli_state *c)
-{
- BOOL ret = True;
- if (!c) return True;
- if (NT_STATUS_IS_ERR(smbcli_tdis(c))) {
- printf("tdis failed (%s)\n", smbcli_errstr(c->tree));
- ret = False;
- }
- talloc_free(c);
- return ret;
-}
-
-
-/* check if the server produced the expected error code */
-_PUBLIC_ BOOL check_error(const char *location, struct smbcli_state *c,
- uint8_t eclass, uint32_t ecode, NTSTATUS nterr)
-{
- NTSTATUS status;
-
- status = smbcli_nt_error(c->tree);
- if (NT_STATUS_IS_DOS(status)) {
- int class, num;
- class = NT_STATUS_DOS_CLASS(status);
- num = NT_STATUS_DOS_CODE(status);
- if (eclass != class || ecode != num) {
- printf("unexpected error code %s\n", nt_errstr(status));
- printf(" expected %s or %s (at %s)\n",
- nt_errstr(NT_STATUS_DOS(eclass, ecode)),
- nt_errstr(nterr), location);
- return False;
- }
- } else {
- if (!NT_STATUS_EQUAL(nterr, status)) {
- printf("unexpected error code %s\n", nt_errstr(status));
- printf(" expected %s (at %s)\n", nt_errstr(nterr), location);
- return False;
- }
- }
-
- return True;
-}
-
static BOOL wait_lock(struct smbcli_state *c, int fnum, uint32_t offset, uint32_t len)
diff --git a/source4/torture/torture.h b/source4/torture/torture.h
index ff7ee09d23..7fe546b007 100644
--- a/source4/torture/torture.h
+++ b/source4/torture/torture.h
@@ -22,6 +22,7 @@
#ifndef __TORTURE_H__
#define __TORTURE_H__
+struct smbcli_state;
struct torture_op {
const char *name;
BOOL (*fn)(void);
@@ -40,7 +41,6 @@ extern int torture_numops;
extern int torture_failures;
extern BOOL use_level_II_oplocks;
-#include "libcli/libcli.h"
#include "torture/proto.h"
#endif /* __TORTURE_H__ */
diff --git a/source4/torture/torture_util.c b/source4/torture/torture_util.c
index ba96731b20..69c462bc6d 100644
--- a/source4/torture/torture_util.c
+++ b/source4/torture/torture_util.c
@@ -354,26 +354,6 @@ void torture_all_info(struct smbcli_tree *tree, const char *fname)
/*
- split a UNC name into server and share names
-*/
-BOOL split_unc_name(const char *unc, char **server, char **share)
-{
- char *p = strdup(unc);
- if (!p) return False;
- all_string_sub(p, "\\", "/", 0);
- if (strncmp(p, "//", 2) != 0) return False;
-
- (*server) = p+2;
- p = strchr(*server, '/');
- if (!p) return False;
-
- *p = 0;
- (*share) = p+1;
-
- return True;
-}
-
-/*
set a attribute on a file
*/
BOOL torture_set_file_attribute(struct smbcli_tree *tree, const char *fname, uint16_t attrib)
@@ -483,3 +463,78 @@ NTSTATUS torture_check_ea(struct smbcli_state *cli,
return NT_STATUS_EA_CORRUPT_ERROR;
}
+BOOL torture_open_connection_share(TALLOC_CTX *mem_ctx,
+ struct smbcli_state **c,
+ const char *hostname,
+ const char *sharename,
+ struct event_context *ev)
+{
+ NTSTATUS status;
+
+ status = smbcli_full_connection(mem_ctx, c, hostname,
+ sharename, NULL,
+ cmdline_credentials, ev);
+ if (!NT_STATUS_IS_OK(status)) {
+ printf("Failed to open connection - %s\n", nt_errstr(status));
+ return False;
+ }
+
+ (*c)->transport->options.use_oplocks = use_oplocks;
+ (*c)->transport->options.use_level2_oplocks = use_level_II_oplocks;
+
+ return True;
+}
+
+_PUBLIC_ BOOL torture_open_connection(struct smbcli_state **c)
+{
+ const char *host = lp_parm_string(-1, "torture", "host");
+ const char *share = lp_parm_string(-1, "torture", "share");
+
+ return torture_open_connection_share(NULL, c, host, share, NULL);
+}
+
+
+
+_PUBLIC_ BOOL torture_close_connection(struct smbcli_state *c)
+{
+ BOOL ret = True;
+ if (!c) return True;
+ if (NT_STATUS_IS_ERR(smbcli_tdis(c))) {
+ printf("tdis failed (%s)\n", smbcli_errstr(c->tree));
+ ret = False;
+ }
+ talloc_free(c);
+ return ret;
+}
+
+
+/* check if the server produced the expected error code */
+_PUBLIC_ BOOL check_error(const char *location, struct smbcli_state *c,
+ uint8_t eclass, uint32_t ecode, NTSTATUS nterr)
+{
+ NTSTATUS status;
+
+ status = smbcli_nt_error(c->tree);
+ if (NT_STATUS_IS_DOS(status)) {
+ int class, num;
+ class = NT_STATUS_DOS_CLASS(status);
+ num = NT_STATUS_DOS_CODE(status);
+ if (eclass != class || ecode != num) {
+ printf("unexpected error code %s\n", nt_errstr(status));
+ printf(" expected %s or %s (at %s)\n",
+ nt_errstr(NT_STATUS_DOS(eclass, ecode)),
+ nt_errstr(nterr), location);
+ return False;
+ }
+ } else {
+ if (!NT_STATUS_EQUAL(nterr, status)) {
+ printf("unexpected error code %s\n", nt_errstr(status));
+ printf(" expected %s (at %s)\n", nt_errstr(nterr), location);
+ return False;
+ }
+ }
+
+ return True;
+}
+
+