From 2c247996a93f86472f34728f4834a3229d6ecf89 Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Tue, 17 Apr 2007 00:30:01 +0000 Subject: r22286: Import branch that converted the Samba4 test target code to perl and makes the code a bit clearer. (This used to be commit e3ba5ced0440e736f0f140e12a8c728f79a20bb2) --- source4/torture/local/torture.c | 32 ------------------- source4/torture/util.c | 71 ----------------------------------------- 2 files changed, 103 deletions(-) (limited to 'source4/torture') diff --git a/source4/torture/local/torture.c b/source4/torture/local/torture.c index 653049f351..b77b5fc69d 100644 --- a/source4/torture/local/torture.c +++ b/source4/torture/local/torture.c @@ -40,44 +40,12 @@ static bool test_tempdir(struct torture_context *tctx) return true; } -static bool test_setup_server(struct torture_context *tctx) -{ - pid_t pid; - TALLOC_CTX *mem_ctx = tctx; - - torture_assert_ntstatus_ok(tctx, torture_setup_server(mem_ctx, - "setupserver-success", - "./script/tests/mktestdc.sh", - "./bin/smbd", &pid), - "starting smbd failed"); - - torture_assert(tctx, pid > 0, "Pid invalid"); - - torture_comment(tctx, "Created smbd with pid %d\n", pid); - - kill(pid, SIGINT); - - waitpid(pid, NULL, 0); - - torture_assert_ntstatus_equal(tctx, torture_setup_server(mem_ctx, - "setupserver-fail", - "./invalid-script", - "./bin/smbd", &pid), - NT_STATUS_UNSUCCESSFUL, - "invalid script specified"); - - torture_assert(tctx, pid == -1, "Pid not -1 after failure"); - return true; -} - - struct torture_suite *torture_local_torture(TALLOC_CTX *mem_ctx) { struct torture_suite *suite = torture_suite_create(mem_ctx, "TORTURE"); torture_suite_add_simple_test(suite, "tempdir", test_tempdir); - torture_suite_add_simple_test(suite, "setup server", test_setup_server); return suite; } diff --git a/source4/torture/util.c b/source4/torture/util.c index 11cb81ca06..55e4bc977f 100644 --- a/source4/torture/util.c +++ b/source4/torture/util.c @@ -50,77 +50,6 @@ BOOL nt_time_equal(NTTIME *t1, NTTIME *t2) return *t1 == *t2; } -/** - * 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) -{ - char *tempdir; - NTSTATUS status; - pid_t pid; - int child_status; - char *configfile, *configparam; - pid_t closed_pid; - - *smbd_pid = -1; - - status = torture_temp_dir(mem_ctx, prefix, &tempdir); - if (NT_STATUS_IS_ERR(status)) { - return status; - } - - if ((pid = fork()) == 0) { - execl(setupdir_script, setupdir_script, tempdir, NULL); - exit(1); - } else if (pid == -1) { - DEBUG(0, ("Unable to fork()\n")); - return NT_STATUS_UNSUCCESSFUL; - } - - closed_pid = waitpid(pid, &child_status, 0); - - if (closed_pid == -1) { - DEBUG(1, ("Error waiting for child")); - return NT_STATUS_UNSUCCESSFUL; - } - - SMB_ASSERT(closed_pid == pid); - - if (!WIFEXITED(child_status) || WEXITSTATUS(child_status) != 0) { - DEBUG(1, ("Invalid return code from setup script %s: %d\n", - setupdir_script, - WEXITSTATUS(child_status))); - return NT_STATUS_UNSUCCESSFUL; - } - - configfile = talloc_asprintf(mem_ctx, "%s/etc/smb.conf", - tempdir); - if (!file_exist(configfile)) { - DEBUG(1, ("Setup script didn't create %s\n", configfile)); - return NT_STATUS_UNSUCCESSFUL; - } - - configparam = talloc_asprintf(mem_ctx, "--configfile=%s", configfile); - talloc_free(configfile); - - if ((pid = fork()) == 0) { - execl(smbd_path, smbd_path, "-i", "--model=single", - configparam, NULL); - exit(1); - } else if (pid == -1) { - DEBUG(0, ("Unable to fork()\n")); - return NT_STATUS_UNSUCCESSFUL; - } - - *smbd_pid = pid; - - return NT_STATUS_OK; -} - NTSTATUS torture_second_tcon(TALLOC_CTX *mem_ctx, struct smbcli_session *session, const char *sharename, -- cgit