summaryrefslogtreecommitdiff
path: root/lib/tevent
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2009-07-16 09:06:42 +0200
committerStefan Metzmacher <metze@samba.org>2009-07-16 11:41:28 +0200
commit39684d2cbe1c8c69dc9ca5c6e05861e24091bb83 (patch)
treed15f7f76c1d5399626a408f5479e0c25dabe0441 /lib/tevent
parentc9fe3256d87f4fcd119dc1a3c784f2196b4ad2fd (diff)
downloadsamba-39684d2cbe1c8c69dc9ca5c6e05861e24091bb83.tar.gz
samba-39684d2cbe1c8c69dc9ca5c6e05861e24091bb83.tar.bz2
samba-39684d2cbe1c8c69dc9ca5c6e05861e24091bb83.zip
tevent: try to fix the build on QNX qnx18 6.4.1 it doesn't have SA_RESTART defined
metze
Diffstat (limited to 'lib/tevent')
-rw-r--r--lib/tevent/testsuite.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/tevent/testsuite.c b/lib/tevent/testsuite.c
index d964fb33d3..f9aca91aa1 100644
--- a/lib/tevent/testsuite.c
+++ b/lib/tevent/testsuite.c
@@ -66,7 +66,13 @@ static bool test_event_context(struct torture_context *test,
const char *backend = (const char *)test_data;
int alarm_count=0, info_count=0;
struct tevent_fd *fde;
- struct signal_event *se1, *se2, *se3;
+#ifdef SA_RESTART
+ struct tevent_signal *se1 = NULL;
+#endif
+ struct tevent_signal *se2 = NULL;
+#ifdef SA_SIGINFO
+ struct tevent_signal *se3 = NULL;
+#endif
int finished=0;
struct timeval t;
char c = 0;
@@ -92,7 +98,9 @@ static bool test_event_context(struct torture_context *test,
event_add_timed(ev_ctx, ev_ctx, timeval_current_ofs(2,0),
finished_handler, &finished);
+#ifdef SA_RESTART
se1 = event_add_signal(ev_ctx, ev_ctx, SIGALRM, SA_RESTART, count_handler, &alarm_count);
+#endif
se2 = event_add_signal(ev_ctx, ev_ctx, SIGALRM, SA_RESETHAND, count_handler, &alarm_count);
#ifdef SA_SIGINFO
se3 = event_add_signal(ev_ctx, ev_ctx, SIGUSR1, SA_SIGINFO, count_handler, &info_count);
@@ -120,7 +128,9 @@ static bool test_event_context(struct torture_context *test,
torture_comment(test, "Got %.2f pipe events/sec\n", fde_count/timeval_elapsed(&t));
+#ifdef SA_RESTART
talloc_free(se1);
+#endif
torture_assert_int_equal(test, alarm_count, 1+fde_count, "alarm count mismatch");