search for: ev_clear

Displaying 3 results from an estimated 3 matches for "ev_clear".

2005 Dec 14
2
Patch: ioloop using kqueue/kevent for FreeBSD
..., ioloop->handler_context->fds); + p_free(ioloop->pool, ioloop->handler_context); +} + + +void io_loop_handle_add(struct ioloop *ioloop, struct io *io) +{ + struct ioloop_handler_context *ctx = ioloop->handler_context; + struct kevent ev = {io->fd, 0, EV_ADD | EV_CLEAR | EV_EOF, 0, 0, io}; + enum io_condition condition = io->condition; + + /* grow ctx->fds array if necessary */ + if ((size_t)io->fd >= ctx->fds_size) { + size_t old_size = ctx->fds_size; + + ctx->fds_size = nearest_power((unsig...
2006 May 09
2
Fix for the kevent "Unrecognized event" problem.
The attached patch should fix the problem with dying imap on "Unrecognized event". The problem is that when we register a handle for IO_ERROR only, we still can get readable/writable event without EV_EOF being set. This case was not handled. -- Vaclav Haisman -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: io-kq.diff URL:
2005 Dec 15
2
Patch: More of kqueue() support.
...ler_context->fds); p_free(ioloop->pool, ioloop->handler_context); @@ -66,8 +70,8 @@ void io_loop_handle_add(struct ioloop *i { struct ioloop_handler_context *ctx = ioloop->handler_context; const int fd = io->fd; - struct kevent ev = {fd, 0, EV_ADD | EV_CLEAR | EV_EOF, 0, 0, NULL}; - enum io_condition condition = io->condition; + struct kevent ev = { fd, 0, EV_ADD | EV_EOF, 0, 0, NULL }; + enum io_condition condition = io->condition & MASK; /* grow ctx->fds array if necessary */ if ((size_t)fd >=...