Skip to content

Commit

Permalink
Call underlying bev ctrl GET_FD on filtered bufferevents
Browse files Browse the repository at this point in the history
Fixes: #611
Fixes: #610
  • Loading branch information
ghazel authored and azat committed Mar 25, 2018
1 parent 08a0d36 commit 4055081
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 4 deletions.
3 changes: 1 addition & 2 deletions bufferevent_filter.c
Expand Up @@ -605,6 +605,7 @@ be_filter_ctrl(struct bufferevent *bev, enum bufferevent_ctrl_op op,
data->ptr = bevf->underlying;
return 0;
case BEV_CTRL_SET_FD:
case BEV_CTRL_GET_FD:
bevf = upcast(bev);

if (bevf->underlying &&
Expand All @@ -614,8 +615,6 @@ be_filter_ctrl(struct bufferevent *bev, enum bufferevent_ctrl_op op,
}
EVUTIL_FALLTHROUGH;

case BEV_CTRL_GET_FD:
EVUTIL_FALLTHROUGH;
case BEV_CTRL_CANCEL_ALL:
EVUTIL_FALLTHROUGH;
default:
Expand Down
4 changes: 2 additions & 2 deletions test/regress_bufferevent.c
Expand Up @@ -569,8 +569,8 @@ test_bufferevent_filters_impl(int use_pair, int disable)

tt_ptr_op(bufferevent_get_underlying(bev1), ==, bev1_base);
tt_ptr_op(bufferevent_get_underlying(bev2), ==, bev2_base);
tt_int_op(bufferevent_getfd(bev1), ==, -1);
tt_int_op(bufferevent_getfd(bev2), ==, -1);
tt_int_op(bufferevent_getfd(bev1), ==, bufferevent_getfd(bev1_base));
tt_int_op(bufferevent_getfd(bev2), ==, bufferevent_getfd(bev2_base));

bufferevent_disable(bev1, EV_READ);
bufferevent_enable(bev2, EV_READ);
Expand Down

0 comments on commit 4055081

Please sign in to comment.