summaryrefslogtreecommitdiffstats
path: root/regress/sys/kern/kqueue
diff options
context:
space:
mode:
authorprovos <provos@openbsd.org>2002-01-07 00:11:07 +0000
committerprovos <provos@openbsd.org>2002-01-07 00:11:07 +0000
commit8fd1ff481dea5cbac8fb40d4556ccd7766c392c3 (patch)
tree49d08c35f5fb5e084e05b6f8afe102fef22ade74 /regress/sys/kern/kqueue
parentadd kqueue (diff)
downloadwireguard-openbsd-8fd1ff481dea5cbac8fb40d4556ccd7766c392c3.tar.xz
wireguard-openbsd-8fd1ff481dea5cbac8fb40d4556ccd7766c392c3.zip
better.
Diffstat (limited to 'regress/sys/kern/kqueue')
-rw-r--r--regress/sys/kern/kqueue/kqueue-pipe.c18
1 files changed, 12 insertions, 6 deletions
diff --git a/regress/sys/kern/kqueue/kqueue-pipe.c b/regress/sys/kern/kqueue/kqueue-pipe.c
index d8e48e1f991..c81ce296275 100644
--- a/regress/sys/kern/kqueue/kqueue-pipe.c
+++ b/regress/sys/kern/kqueue/kqueue-pipe.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: kqueue-pipe.c,v 1.1 2002/01/07 00:01:00 provos Exp $ */
+/* $OpenBSD: kqueue-pipe.c,v 1.2 2002/01/07 00:11:07 provos Exp $ */
/*
* Copyright 2001 Niels Provos <provos@citi.umich.edu>
* All rights reserved.
@@ -50,10 +50,7 @@ main(int argc, char **argv)
if (fcntl(fd[1], F_SETFL, O_NONBLOCK) == -1)
exit(1);
- while ((n = write(fd[1], buf, sizeof(buf))) == sizeof(buf))
- ;
-
- if ((kq = kqueue()) == -1)
+ if ((kq = kqueue()) == -1)
exit(1);
ev.ident = fd[1];
@@ -63,7 +60,16 @@ main(int argc, char **argv)
if (n == -1)
exit(1);
- read(fd[0], buf, sizeof(buf));
+ while ((n = write(fd[1], buf, sizeof(buf))) == sizeof(buf))
+ ;
+
+ ts.tv_sec = 0;
+ ts.tv_nsec = 0;
+ n = kevent(kq, NULL, 0, &ev, 1, &ts);
+ if (n != 0)
+ exit(1);
+
+ read(fd[0], buf, sizeof(buf));
ts.tv_sec = 0;
ts.tv_nsec = 0;