summaryrefslogtreecommitdiff
path: root/source3/torture/torture.c
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2010-06-10 09:50:32 +0200
committerVolker Lendecke <vl@samba.org>2010-06-10 11:24:00 +0200
commit1819beb0887d7ee75318d330124c13b2ad2d830b (patch)
treee0584a80e913385ed5c308f9f55752594d10a757 /source3/torture/torture.c
parent7f29f817fa939ef1bbb740584f09e76e2ecd5b06 (diff)
downloadsamba-1819beb0887d7ee75318d330124c13b2ad2d830b.tar.gz
samba-1819beb0887d7ee75318d330124c13b2ad2d830b.tar.bz2
samba-1819beb0887d7ee75318d330124c13b2ad2d830b.zip
s3: Add a dummy test to prove the maxfd calculation
To be run in a debugger, there's no way to inspect the internal tevent_select.c maxfd calculation
Diffstat (limited to 'source3/torture/torture.c')
-rw-r--r--source3/torture/torture.c43
1 files changed, 43 insertions, 0 deletions
diff --git a/source3/torture/torture.c b/source3/torture/torture.c
index 72b22969b8..696aaa3769 100644
--- a/source3/torture/torture.c
+++ b/source3/torture/torture.c
@@ -7335,6 +7335,48 @@ static bool run_local_dbtrans(int dummy)
return true;
}
+/*
+ * Just a dummy test to be run under a debugger. There's no real way
+ * to inspect the tevent_select specific function from outside of
+ * tevent_select.c.
+ */
+
+static bool run_local_tevent_select(int dummy)
+{
+ struct tevent_context *ev;
+ struct tevent_fd *fd1, *fd2;
+ bool result = false;
+
+ ev = tevent_context_init_byname(NULL, "select");
+ if (ev == NULL) {
+ d_fprintf(stderr, "tevent_context_init_byname failed\n");
+ goto fail;
+ }
+
+ fd1 = tevent_add_fd(ev, ev, 2, 0, NULL, NULL);
+ if (fd1 == NULL) {
+ d_fprintf(stderr, "tevent_add_fd failed\n");
+ goto fail;
+ }
+ fd2 = tevent_add_fd(ev, ev, 3, 0, NULL, NULL);
+ if (fd2 == NULL) {
+ d_fprintf(stderr, "tevent_add_fd failed\n");
+ goto fail;
+ }
+ TALLOC_FREE(fd2);
+
+ fd2 = tevent_add_fd(ev, ev, 1, 0, NULL, NULL);
+ if (fd2 == NULL) {
+ d_fprintf(stderr, "tevent_add_fd failed\n");
+ goto fail;
+ }
+
+ result = true;
+fail:
+ TALLOC_FREE(ev);
+ return result;
+}
+
static double create_procs(bool (*fn)(int), bool *result)
{
int i, status;
@@ -7513,6 +7555,7 @@ static struct {
{ "LOCAL-WBCLIENT", run_local_wbclient, 0},
{ "LOCAL-string_to_sid", run_local_string_to_sid, 0},
{ "LOCAL-DBTRANS", run_local_dbtrans, 0},
+ { "LOCAL-TEVENT-SELECT", run_local_tevent_select, 0},
{NULL, NULL, 0}};