Module Name: src Committed By: riastradh Date: Sun Feb 9 17:09:51 UTC 2025
Modified Files: src/tests/lib/libc/sys: t_poll.c Log Message: t_poll: Make sure POLLOUT is clear when testing POLLHUP. POLLOUT and POLLHUP are mutually exclusive in POSIX. Also, we're only polling for POLLIN anyway. PR kern/59056: poll POLLHUP bugs To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 src/tests/lib/libc/sys/t_poll.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/tests/lib/libc/sys/t_poll.c diff -u src/tests/lib/libc/sys/t_poll.c:1.8 src/tests/lib/libc/sys/t_poll.c:1.9 --- src/tests/lib/libc/sys/t_poll.c:1.8 Sat Oct 2 17:32:55 2021 +++ src/tests/lib/libc/sys/t_poll.c Sun Feb 9 17:09:51 2025 @@ -1,4 +1,4 @@ -/* $NetBSD: t_poll.c,v 1.8 2021/10/02 17:32:55 thorpej Exp $ */ +/* $NetBSD: t_poll.c,v 1.9 2025/02/09 17:09:51 riastradh Exp $ */ /*- * Copyright (c) 2011 The NetBSD Foundation, Inc. @@ -385,7 +385,9 @@ ATF_TC_BODY(fifo_hup1, tc) (void)close(wfd); ATF_REQUIRE(poll(&pfd, 1, 0) == 1); - ATF_REQUIRE((pfd.revents & POLLHUP) != 0); + ATF_REQUIRE_EQ_MSG((pfd.revents & (POLLHUP|POLLOUT)), POLLHUP, + "revents=0x%x expected POLLHUP=0x%x and not POLLOUT=0x%x", + pfd.revents, POLLHUP, POLLOUT); /* * Check that POLLHUP is cleared when a writer re-connects. @@ -447,7 +449,9 @@ ATF_TC_BODY(fifo_hup2, tc) /* Make sure at least a couple of seconds have elapsed. */ ATF_REQUIRE(ts2.tv_sec - ts1.tv_sec >= 2); - ATF_REQUIRE((pfd.revents & POLLHUP) != 0); + ATF_REQUIRE_EQ_MSG((pfd.revents & (POLLHUP|POLLOUT)), POLLHUP, + "revents=0x%x expected POLLHUP=0x%x and not POLLOUT=0x%x", + pfd.revents, POLLHUP, POLLOUT); } ATF_TC_CLEANUP(fifo_hup2, tc)