Lines Matching refs:pollcb
330 static apr_status_t impl_pollcb_cleanup(apr_pollcb_t *pollcb)
332 close(pollcb->fd);
336 static apr_status_t impl_pollcb_create(apr_pollcb_t *pollcb,
355 pollcb->fd = -1;
363 pollcb->fd = -1;
368 pollcb->fd = fd;
369 pollcb->pollset.ke = (struct kevent *) apr_pcalloc(p, 2 * size * sizeof(struct kevent));
374 static apr_status_t impl_pollcb_add(apr_pollcb_t *pollcb,
391 if (kevent(pollcb->fd, &ev, 1, NULL, 0, NULL) == -1) {
399 if (kevent(pollcb->fd, &ev, 1, NULL, 0, NULL) == -1) {
407 static apr_status_t impl_pollcb_remove(apr_pollcb_t *pollcb,
425 if (kevent(pollcb->fd, &ev, 1, NULL, 0, NULL) != -1) {
433 if (kevent(pollcb->fd, &ev, 1, NULL, 0, NULL) != -1) {
442 static apr_status_t impl_pollcb_poll(apr_pollcb_t *pollcb,
460 ret = kevent(pollcb->fd, NULL, 0, pollcb->pollset.ke, 2 * pollcb->nalloc,
471 apr_pollfd_t *pollfd = (apr_pollfd_t *)(pollcb->pollset.ke[i].udata);
473 if ((pollcb->flags & APR_POLLSET_WAKEABLE) &&
475 pollfd->desc.f == pollcb->wakeup_pipe[0]) {
476 apr_poll_drain_wakeup_pipe(pollcb->wakeup_pipe);
480 pollfd->rtnevents = get_kqueue_revent(pollcb->pollset.ke[i].filter,
481 pollcb->pollset.ke[i].flags);