summaryrefslogtreecommitdiffstats
path: root/regress/sys
diff options
context:
space:
mode:
authormillert <millert@openbsd.org>2020-08-18 16:39:14 +0000
committermillert <millert@openbsd.org>2020-08-18 16:39:14 +0000
commitbb40c2330ee2b71ddf55773f2b497933c2fa598f (patch)
tree18d95d37cac5e27263daae1980ebd3c7c8677995 /regress/sys
parentTry to avoid a theoretical infinite loop while detaching all the scsi_link's on (diff)
downloadwireguard-openbsd-bb40c2330ee2b71ddf55773f2b497933c2fa598f.tar.xz
wireguard-openbsd-bb40c2330ee2b71ddf55773f2b497933c2fa598f.zip
Fix bug in the select() portion of the test, the timeout was ignored.
The select() results are now consistent with what poll() returns.
Diffstat (limited to 'regress/sys')
-rw-r--r--regress/sys/fifofs/fifotest.c3
-rw-r--r--regress/sys/fifofs/fifotest.out24
2 files changed, 13 insertions, 14 deletions
diff --git a/regress/sys/fifofs/fifotest.c b/regress/sys/fifofs/fifotest.c
index 949d450167c..100bf69e472 100644
--- a/regress/sys/fifofs/fifotest.c
+++ b/regress/sys/fifofs/fifotest.c
@@ -326,7 +326,6 @@ doselect(pid_t writer, int rfd, int wfd, int timeout)
tv.tv_usec = (timeout % 1000) * 1000;
tvp = &tv;
}
- tv.tv_sec = tv.tv_usec = 0;
maxfd = rfd > wfd ? rfd : wfd;
if (rfd != -1) {
rfds = calloc(howmany(maxfd + 1, NFDBITS), sizeof(fd_mask));
@@ -350,7 +349,7 @@ doselect(pid_t writer, int rfd, int wfd, int timeout)
if (writer != -1)
kill(writer, SIGUSR1);
alarm(2);
- nready = select(maxfd + 1, rfds, wfds, NULL, &tv);
+ nready = select(maxfd + 1, rfds, wfds, NULL, tvp);
alarm(0);
if (nready < 0) {
printf("select: %s\n", strerror(errno));
diff --git a/regress/sys/fifofs/fifotest.out b/regress/sys/fifofs/fifotest.out
index 4f5c40f8033..bc0849f4929 100644
--- a/regress/sys/fifofs/fifotest.out
+++ b/regress/sys/fifofs/fifotest.out
@@ -52,11 +52,11 @@ poll: Interrupted system call
select read write, timeout=-1
1 fd(s) ready, writeable
select read, timeout=-1
- 0 fd(s) ready
+select: Interrupted system call
select write, timeout=-1
1 fd(s) ready, writeable
select (none), timeout=-1
- 0 fd(s) ready
+select: Interrupted system call
Testing full FIFO:
poll POLLIN|POLLOUT, timeout=-1
@@ -74,7 +74,7 @@ poll: Interrupted system call
select write, timeout=-1
1 fd(s) ready, writeable
select (none), timeout=-1
- 0 fd(s) ready
+select: Interrupted system call
received 'test' from FIFO
Opened fifo fi.fo.fum (nonblocking)
@@ -130,11 +130,11 @@ poll: Interrupted system call
select read write, timeout=-1
1 fd(s) ready, writeable
select read, timeout=-1
- 0 fd(s) ready
+select: Interrupted system call
select write, timeout=-1
1 fd(s) ready, writeable
select (none), timeout=-1
- 0 fd(s) ready
+select: Interrupted system call
Testing full FIFO:
poll POLLIN|POLLOUT, timeout=-1
@@ -152,7 +152,7 @@ poll: Interrupted system call
select write, timeout=-1
1 fd(s) ready, writeable
select (none), timeout=-1
- 0 fd(s) ready
+select: Interrupted system call
received 'test' from FIFO
Opened fifo for reading fi.fo.fum (nonblocking)
@@ -207,7 +207,7 @@ Opened fifo for reading fi.fo.fum (nonblocking)
Testing EOF FIFO behavior (pass 8):
select read write, timeout=-1
- 0 fd(s) ready
+ 1 fd(s) ready, readable
received EOF from FIFO
Testing EOF FIFO behavior (pass 9):
@@ -219,7 +219,7 @@ Opened fifo for reading fi.fo.fum (nonblocking)
Testing EOF FIFO behavior (pass 10):
select read, timeout=-1
- 0 fd(s) ready
+ 1 fd(s) ready, readable
received EOF from FIFO
Testing EOF FIFO behavior (pass 11):
@@ -231,22 +231,22 @@ Opened fifo for reading fi.fo.fum (nonblocking)
Testing EOF FIFO behavior (pass 12):
select write, timeout=-1
- 0 fd(s) ready
+select: Interrupted system call
received EOF from FIFO
Testing EOF FIFO behavior (pass 13):
select write, timeout=-1
- 0 fd(s) ready
+select: Interrupted system call
received EOF from FIFO
Opened fifo for reading fi.fo.fum (nonblocking)
Testing EOF FIFO behavior (pass 14):
select (none), timeout=-1
- 0 fd(s) ready
+select: Interrupted system call
received EOF from FIFO
Testing EOF FIFO behavior (pass 15):
select (none), timeout=-1
- 0 fd(s) ready
+select: Interrupted system call
received EOF from FIFO