In trying to flush (w/ BEV_FINISH) one direction of a paired bufferevent I find that handling of the flags argument doesn't match what I was expecting.
From looking at bufferevent_pair.c it seems that the argument 'iotype' is passed through without modification. My expectation is that, for example, a flush with EV_WRITE would be translated to BEV_EVENT_READING since the event is being delivered to the partner.
At present calling "bufferevent_flush(bev, EV_WRITE, BEV_FINISHED);" results in the event callback of the partner being passed 0x14 (EV_WRITE|BEV_EVENT_EOF).
I'm working with libevent 2.0.19.
Log in to post a comment.