Remove duplicate unc path separator conversion.
Add prefix for tempdirs.
TORTURE_OPTIONS="--option=interfaces=$TORTURE_INTERFACES $CONFIGURATION"
# ensure any one smbtorture call doesn't run too long
TORTURE_OPTIONS="$TORTURE_OPTIONS --maximum-runtime=$TORTURE_MAXTIME"
-TORTURE_OPTIONS="$TORTURE_OPTIONS --option=target:samba4=yes"
+TORTURE_OPTIONS="$TORTURE_OPTIONS --target=samba4"
export TORTURE_OPTIONS
if [ x"$RUN_FROM_BUILD_FARM" = x"yes" ];then
{
char *location = NULL;
- torture_assert_ntstatus_ok(torture, torture_temp_dir(torture, &location),
+ torture_assert_ntstatus_ok(torture, torture_temp_dir(torture, "tempdir", &location),
"torture_temp_dir should return NT_STATUS_OK" );
torture_assert(torture, directory_exist(location),
pid_t pid;
torture_assert_ntstatus_ok(torture, torture_setup_server(torture,
+ "setupserver-success",
"./script/tests/mktestsetup.sh",
"./bin/smbd", &pid),
"starting smbd failed");
waitpid(pid, NULL, 0);
torture_assert_ntstatus_equal(torture, torture_setup_server(torture,
+ "setupserver-fail",
"./invalid-script",
"./bin/smbd", &pid),
NT_STATUS_UNSUCCESSFUL,
int main(int argc,char *argv[])
{
int opt, i;
- char *p;
BOOL correct = True;
int max_runtime=0;
int argc_new;
struct torture_context *torture;
char **argv_new;
poptContext pc;
+ static const char *target = "other";
static const char *ui_ops_name = "simple";
enum {OPT_LOADFILE=1000,OPT_UNCLIST,OPT_TIMELIMIT,OPT_DNS,
OPT_DANGEROUS,OPT_SMB_PORTS,OPT_ASYNC};
{"parse-dns", 'D', POPT_ARG_STRING, NULL, OPT_DNS, "parse-dns", NULL},
{"dangerous", 'X', POPT_ARG_NONE, NULL, OPT_DANGEROUS,
"run dangerous tests (eg. wiping out password database)", NULL},
+ {"target", 'T', POPT_ARG_STRING, &target, 0, "samba4|other", NULL},
{"async", 'a', POPT_ARG_NONE, NULL, OPT_ASYNC,
"run async tests", NULL},
{"num-async", 0, POPT_ARG_INT, &torture_numasync, 0,
exit(1);
}
- for(p = argv_new[1]; *p; p++) {
- if(*p == '\\')
- *p = '/';
+ if (!strcmp(target, "samba4")) {
+ lp_set_cmdline("target:samba4", "true");
}
/* see if its a RPC transport specifier */
enum torture_result last_result;
char *last_reason;
+
+ char *outputdir;
};
struct torture_suite
/**
create a temporary directory.
*/
-_PUBLIC_ NTSTATUS torture_temp_dir(TALLOC_CTX *mem_ctx, char **tempdir)
+_PUBLIC_ NTSTATUS torture_temp_dir(TALLOC_CTX *mem_ctx, const char *prefix,
+ char **tempdir)
{
- *tempdir = talloc_strdup(mem_ctx, "torture-tmp.XXXXXX");
+ *tempdir = talloc_asprintf(mem_ctx, "torture.tmp-%s.XXXXXX", prefix);
if (mkdtemp(*tempdir) == NULL)
return NT_STATUS_UNSUCCESSFUL;
* Provision a Samba installation using @param setupdir_script and start smbd.
*/
NTSTATUS torture_setup_server(TALLOC_CTX *mem_ctx,
+ const char *prefix,
const char *setupdir_script,
const char *smbd_path,
pid_t *smbd_pid)
*smbd_pid = -1;
- status = torture_temp_dir(mem_ctx, &tempdir);
+ status = torture_temp_dir(mem_ctx, prefix, &tempdir);
if (NT_STATUS_IS_ERR(status)) {
return status;
}