Ben, I chose to extend a existing logic to detect connection drop or connection error by adding EV_EOF when appropriate. From what I understand, when an error or hangup occurs (and now an EOF) libevent tries to notify the programmer as soon as possible by using both EV_READ and EV_WRITE. The flags can then be checked on the callback. What do you suggest? Thanks.