X-Git-Url: http://git.samba.org/samba.git/?a=blobdiff_plain;f=source4%2Ftorture%2Fsmbtorture.c;h=b9ed52111aee89055f9a4bd924568d30082be534;hb=15d93a5d8e21893e1cca5c989dbf97010aae1622;hp=0c2c8c0f6bbcd4e463d96fa1a0d436ed4113ba3e;hpb=c5a70cab25de3b0acd89ba12150b9077bb59cbb5;p=kai%2Fsamba-autobuild%2F.git diff --git a/source4/torture/smbtorture.c b/source4/torture/smbtorture.c index 0c2c8c0f6bb..b9ed52111ae 100644 --- a/source4/torture/smbtorture.c +++ b/source4/torture/smbtorture.c @@ -26,17 +26,13 @@ #include "system/readline.h" #include "lib/smbreadline/smbreadline.h" #include "libcli/libcli.h" -#include "lib/ldb/include/ldb.h" #include "lib/events/events.h" -#include "dynconfig/dynconfig.h" #include "torture/smbtorture.h" -#include "../lib/util/dlinklist.h" #include "librpc/rpc/dcerpc.h" #include "auth/gensec/gensec.h" #include "param/param.h" -#include "auth/credentials/credentials.h" static bool run_matching(struct torture_context *torture, const char *prefix, @@ -49,7 +45,7 @@ static bool run_matching(struct torture_context *torture, if (suite == NULL) { struct torture_suite *o; - for (o = torture_root->children; o; o = o->next) { + for (o = (torture_root == NULL?NULL:torture_root->children); o; o = o->next) { if (gen_fnmatch(expr, o->name) == 0) { *matched = true; reload_charcnv(torture->lp_ctx); @@ -367,40 +363,6 @@ const static struct torture_ui_ops std_ui_ops = { }; -static void quiet_suite_start(struct torture_context *ctx, - struct torture_suite *suite) -{ - int i; - ctx->results->quiet = true; - for (i = 1; i < ctx->level; i++) putchar('\t'); - printf("%s: ", suite->name); - fflush(stdout); -} - -static void quiet_suite_finish(struct torture_context *ctx, - struct torture_suite *suite) -{ - putchar('\n'); -} - -static void quiet_test_result(struct torture_context *context, - enum torture_result res, const char *reason) -{ - fflush(stdout); - switch (res) { - case TORTURE_OK: putchar('.'); break; - case TORTURE_FAIL: putchar('F'); break; - case TORTURE_ERROR: putchar('E'); break; - case TORTURE_SKIP: putchar('I'); break; - } -} - -const static struct torture_ui_ops quiet_ui_ops = { - .suite_start = quiet_suite_start, - .suite_finish = quiet_suite_finish, - .test_result = quiet_test_result -}; - static void run_shell(struct torture_context *tctx) { char *cline; @@ -464,14 +426,15 @@ int main(int argc,char *argv[]) static const char *target = "other"; NTSTATUS status; int shell = false; - static const char *ui_ops_name = "simple"; + static const char *ui_ops_name = "subunit"; 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_EXTRA_USER}; - + OPT_DANGEROUS,OPT_SMB_PORTS,OPT_ASYNC,OPT_NUMPROGS, + OPT_EXTRA_USER,}; + struct poptOption long_options[] = { POPT_AUTOHELP {"format", 0, POPT_ARG_STRING, &ui_ops_name, 0, "Output format (one of: simple, subunit)", NULL }, @@ -547,11 +510,14 @@ int main(int argc,char *argv[]) { char *option = talloc_asprintf(NULL, "torture:extra_user%u", ++num_extra_users); - char *value = poptGetOptArg(pc); + const char *value = poptGetOptArg(pc); lp_set_cmdline(cmdline_lp_ctx, option, value); talloc_free(option); } break; + default: + printf("bad command line option\n"); + exit(1); } } @@ -559,6 +525,16 @@ int main(int argc,char *argv[]) lp_set_cmdline(cmdline_lp_ctx, "torture:samba3", "true"); } else if (strcmp(target, "samba4") == 0) { lp_set_cmdline(cmdline_lp_ctx, "torture:samba4", "true"); + } else if (strcmp(target, "w2k8") == 0) { + lp_set_cmdline(cmdline_lp_ctx, "torture:w2k8", "true"); + lp_set_cmdline(cmdline_lp_ctx, + "torture:invalid_lock_range_support", "false"); + } else if (strcmp(target, "win7") == 0) { + lp_set_cmdline(cmdline_lp_ctx, "torture:win7", "true"); + lp_set_cmdline(cmdline_lp_ctx, "torture:cn_max_buffer_size", + "0x00010000"); + } else if (strcmp(target, "onefs") == 0) { + lp_set_cmdline(cmdline_lp_ctx, "torture:sacl_support", "false"); } if (max_runtime) { @@ -622,8 +598,6 @@ int main(int argc,char *argv[]) ui_ops = &std_ui_ops; } else if (!strcmp(ui_ops_name, "subunit")) { ui_ops = &torture_subunit_ui_ops; - } else if (!strcmp(ui_ops_name, "quiet")) { - ui_ops = &quiet_ui_ops; } else { printf("Unknown output format '%s'\n", ui_ops_name); exit(1);