summaryrefslogtreecommitdiff
path: root/source4/torture
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2008-05-14 09:47:18 +0200
committerStefan Metzmacher <metze@samba.org>2008-07-26 20:11:09 +0200
commit460356c976f0e5608119da75bcf96663f63a6fc1 (patch)
tree10f05459e0bb3e85b83ab8a59303dc59e2a1ddcb /source4/torture
parenta05c9ab9391c80da747e2ee8cd52e92c23f5c72d (diff)
downloadsamba-460356c976f0e5608119da75bcf96663f63a6fc1.tar.gz
samba-460356c976f0e5608119da75bcf96663f63a6fc1.tar.bz2
samba-460356c976f0e5608119da75bcf96663f63a6fc1.zip
smbtorture: add --extra-user option
This can we used to pass additional credentials to torture tests (it can be used multiple times. metze (This used to be commit 4d80dbfac27659046e0986a2af3d06999e2cb2f2)
Diffstat (limited to 'source4/torture')
-rw-r--r--source4/torture/smbtorture.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/source4/torture/smbtorture.c b/source4/torture/smbtorture.c
index 37d7d171ca..1329f03b04 100644
--- a/source4/torture/smbtorture.c
+++ b/source4/torture/smbtorture.c
@@ -540,8 +540,9 @@ int main(int argc,char *argv[])
const char *basedir = NULL;
const char *extra_module = NULL;
static int list_tests = 0;
+ int num_extra_users = 0;
enum {OPT_LOADFILE=1000,OPT_UNCLIST,OPT_TIMELIMIT,OPT_DNS, OPT_LIST,
- OPT_DANGEROUS,OPT_SMB_PORTS,OPT_ASYNC,OPT_NUMPROGS};
+ OPT_DANGEROUS,OPT_SMB_PORTS,OPT_ASYNC,OPT_NUMPROGS,OPT_EXTRA_USER};
struct poptOption long_options[] = {
POPT_AUTOHELP
@@ -569,6 +570,8 @@ int main(int argc,char *argv[])
"number of simultaneous async requests", NULL},
{"maximum-runtime", 0, POPT_ARG_INT, &max_runtime, 0,
"set maximum time for smbtorture to live", "seconds"},
+ {"extra-user", 0, POPT_ARG_STRING, NULL, OPT_EXTRA_USER,
+ "extra user credentials", NULL},
POPT_COMMON_SAMBA
POPT_COMMON_CONNECTION
POPT_COMMON_CREDENTIALS
@@ -612,6 +615,15 @@ int main(int argc,char *argv[])
case OPT_SMB_PORTS:
lp_set_cmdline(cmdline_lp_ctx, "smb ports", poptGetOptArg(pc));
break;
+ case OPT_EXTRA_USER:
+ {
+ char *option = talloc_asprintf(NULL, "torture:extra_user%u",
+ ++num_extra_users);
+ char *value = poptGetOptArg(pc);
+ lp_set_cmdline(cmdline_lp_ctx, option, value);
+ talloc_free(option);
+ }
+ break;
}
}