summaryrefslogtreecommitdiff
path: root/lib/tevent
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2009-07-16 09:06:42 +0200
committerKarolin Seeger <kseeger@samba.org>2009-09-09 12:45:05 +0200
commitcdabbec91a6a739daaebd6d7a5a285026d01537a (patch)
tree04c57242f2be969afcff2c74c04d7db258b8a063 /lib/tevent
parent055d9ba4e4f9fd6a98b5c0b1f087f04b6672a211 (diff)
downloadsamba-cdabbec91a6a739daaebd6d7a5a285026d01537a.tar.gz
tevent: try to fix the build on QNX qnx18 6.4.1 it doesn't have SA_RESTART defined
metze (cherry picked from commit 39684d2cbe1c8c69dc9ca5c6e05861e24091bb83) (cherry picked from commit 80d62cc788211cf2783e315359f832a95b88cdc5)
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 d964fb33d39..f9aca91aa1c 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");