summaryrefslogtreecommitdiff
path: root/source4/torture/smbtorture.c
diff options
context:
space:
mode:
authorChristian Ambach <christian.ambach@de.ibm.com>2011-02-18 15:02:35 +0100
committerMatthias Dieter Wallnöfer <mdw@samba.org>2011-02-21 11:35:30 +0100
commit2ba57fd1832a4bc3c4c652c08e5f62054ecab79b (patch)
tree73343bb11399902a4a11ad5bb7865b3f84e1e33e /source4/torture/smbtorture.c
parentd2b336ae319053dee96476131a3dc0c45b306b5f (diff)
downloadsamba-2ba57fd1832a4bc3c4c652c08e5f62054ecab79b.tar.gz
s4:smbtorture do not leave output directory around
calling smbtorture with no or invalid arguments left the temporary output directory around this patches removes the dead-end exit from usage and makes the logic go on until the final cleanup state is reached output directory will still be left around when test times out or testcases itself force an exit also make sure that the directory itself is deleted, not just the objects in it Signed-off-by: Matthias Dieter Wallnöfer <mdw@samba.org> Signed-off-by: Andrew Bartlett <abartlet@samba.org> Autobuild-User: Matthias Dieter Wallnöfer <mdw@samba.org> Autobuild-Date: Mon Feb 21 11:35:30 CET 2011 on sn-devel-104
Diffstat (limited to 'source4/torture/smbtorture.c')
-rw-r--r--source4/torture/smbtorture.c23
1 files changed, 10 insertions, 13 deletions
diff --git a/source4/torture/smbtorture.c b/source4/torture/smbtorture.c
index cfa8b0f87db..62cf0abfb70 100644
--- a/source4/torture/smbtorture.c
+++ b/source4/torture/smbtorture.c
@@ -285,7 +285,7 @@ void torture_print_testsuites(bool structured)
}
}
-_NORETURN_ static void usage(poptContext pc)
+static void usage(poptContext pc)
{
poptPrintUsage(pc, stdout, 0);
printf("\n");
@@ -341,7 +341,6 @@ _NORETURN_ static void usage(poptContext pc)
print_structured_testsuite_list();
- exit(1);
}
_NORETURN_ static void max_runtime_handler(int sig)
@@ -702,19 +701,17 @@ int main(int argc,char *argv[])
if (argc_new < 3) {
printf("You must specify a test to run, or 'ALL'\n");
usage(pc);
- exit(1);
- }
-
+ torture->results->returncode = 1;
+ } else if (!torture_parse_target(cmdline_lp_ctx, argv_new[1])) {
/* Take the target name or binding. */
- if (!torture_parse_target(cmdline_lp_ctx, argv_new[1])) {
usage(pc);
- exit(1);
- }
-
- for (i=2;i<argc_new;i++) {
- if (!torture_run_named_tests(torture, argv_new[i],
- (const char **)restricted)) {
- correct = false;
+ torture->results->returncode = 1;
+ } else {
+ for (i=2;i<argc_new;i++) {
+ if (!torture_run_named_tests(torture, argv_new[i],
+ (const char **)restricted)) {
+ correct = false;
+ }
}
}
}