POLLHUP
if ((fds[0].revents & POLLHUP) != 0) {
(p->revents & (POLLOUT | POLLERR | POLLHUP) ? EV_WRITE : 0)
| (p->revents & (POLLIN | POLLERR | POLLHUP) ? EV_READ : 0)
if ((pfd->revents & (revents_mask|POLLHUP|POLLERR)) != 0)
#ifndef POLLHUP
pfd[POLL_STDIN].revents & POLLHUP &&
pfd[POLL_NETIN].revents & POLLHUP &&
if (pfd[POLL_NETOUT].revents & POLLHUP) {
if (pfd[POLL_STDOUT].revents & POLLHUP)
if (pfd[0].revents & (POLLIN|POLLHUP)) {
if (pfd[1].revents & (POLLOUT|POLLHUP)) {
if ((pfd[i].revents & (POLLIN|POLLHUP|POLLERR)) != 0 &&
if ((pfd[i].revents & (POLLOUT|POLLHUP)) != 0 &&
if (read_wait[i].revents & (POLLHUP|POLLERR|POLLNVAL))
if ((pfd[0].revents & (POLLIN|POLLHUP|POLLERR)) != 0) {
if ((pfd[1].revents & (POLLOUT|POLLHUP)) != 0) {
!(pfd[startup_pollfd[i]].revents & (POLLIN|POLLHUP)))
if (fds[0].revents & POLLHUP) {
if (nfds > 2 && fds[2].revents & POLLHUP) {
if ((fds->revents & POLLHUP) != 0)
pfd[0].events = POLLHUP;
pfd[nfds].events = POLLIN|POLLERR|POLLHUP;
pfd[nfds].events = POLLIN|POLLERR|POLLHUP;
pfd[nfds].events = POLLOUT|POLLERR|POLLHUP;
(s > 0 && (pfd.revents & POLLHUP))) {
if ((fds[i].revents & (POLLIN | POLLHUP))) {
bits |= POLLHUP;
if (bev & POLLHUP)
#define EPOLLHUP POLLHUP
return (POLLHUP);
revents = POLLHUP;
return (POLLHUP);
return (POLLHUP);
revents = POLLHUP; /* the keyboard has gone */
pollflags = POLLIN | POLLRDNORM | POLLHUP;
pollflags = POLLIN | POLLRDNORM | POLLHUP;
(POLLHUP|POLLIN|POLLRDNORM|POLLOUT|POLLWRNORM));
return (events & (POLLHUP | POLLPRI | POLLIN |
(POLLHUP|POLLIN|POLLRDNORM|POLLOUT|POLLWRNORM));
return (events & (POLLHUP | POLLPRI | POLLIN |
if (events & POLLHUP)
revents |= (events & POLLHUP);
return (events & (POLLHUP | POLLPRI | POLLIN |
return (POLLHUP | ((POLLIN | POLLRDNORM) & ap->a_events));
(POLLHUP|POLLIN|POLLRDNORM|POLLOUT|POLLWRNORM));
revents |= POLLHUP;
POLLRDNORM | POLLHUP | POLLERR,
POLLWRNORM | POLLHUP | POLLERR,
if ((fds->revents & POLLHUP) != 0)
revents |= POLLHUP;
revents |= POLLHUP;
return ((events & (POLLIN|POLLRDNORM)) | POLLHUP);
revents |= POLLHUP;
return ((events & (POLLIN|POLLRDNORM)) | POLLHUP);
revents = (events & (POLLIN | POLLRDNORM)) | POLLHUP;
revents |= POLLHUP;
revents = (events & (POLLIN | POLLRDNORM)) | POLLHUP;
revents = POLLHUP;
revents |= POLLHUP;
(POLLHUP | POLLIN | POLLRDNORM | POLLOUT | POLLWRNORM));
POLLWRBAND|POLLERR|POLLHUP|POLLNVAL)
pollfd.events = POLLIN | POLLERR | POLLHUP;
fdp.events = POLLIN | POLLERR | POLLHUP;
EXPECT_TRUE(fdp.revents & POLLHUP);
EXPECT_TRUE(fdp.revents & POLLHUP);
fdp.events = POLLIN | POLLERR | POLLHUP;
EXPECT_TRUE(fdp.revents & POLLHUP);
report(num++, "3", POLLHUP, pfd.revents, res, 1);
report(num++, "6", POLLIN | POLLHUP, pfd.revents, res, 1);
report(num++, "6a", POLLHUP, pfd.revents, res, 1);
report(num++, "6b", POLLHUP, pfd.revents, res, 1);
report(num++, "6c", POLLHUP, pfd.revents, res, 1);
report(num++, "6d", POLLHUP, pfd.revents, res, 1);
case POLLHUP:
case POLLIN | POLLHUP:
report(num++, "other side after close", POLLIN | POLLHUP, pfd1.revents);
report(num++, "other side after reading input", POLLHUP, pfd1.revents);
report(num++, "after second shutdown", POLLIN | POLLHUP, pfd0.revents);
report(num++, "after second shutdown", POLLHUP, pfd1.revents);
report(num++, "after close", POLLHUP, pfd1.revents);
report(num++, "after shutdown(SHUT_WR)", POLLHUP, pfd0.revents);
DECODE_FLAG(POLLHUP);
#define KNOWN_FLAGS (POLLIN | POLLOUT | POLLHUP)
#define KNOWN_FLAGS (POLLIN | POLLOUT | POLLHUP | POLLRDHUP);
pollfd.events = POLLIN | POLLERR | POLLHUP;
case POLLHUP:
if (fds.revents & (POLLHUP | POLLERR)) {
X(POLLHUP) X(POLLNVAL) X(POLLRDNORM) X(POLLRDBAND)
fds[i].events = POLLERR | POLLHUP |
ret |= POLLHUP;
if (events & POLLHUP)
if ((pollfd->events & POLLHUP) == 0)
revents &= ~POLLHUP;
if ((pollfds[input].revents & (POLLHUP | POLLRDHUP)) != 0)
pollfd.events = POLLHUP;
POLLERR | POLLHUP | POLLNVAL);