diff options
author | Azat Khuzhin <a3at.mail@gmail.com> | 2015-11-05 17:45:09 +0300 |
---|---|---|
committer | Azat Khuzhin <a3at.mail@gmail.com> | 2015-11-06 10:21:04 +0300 |
commit | 3c1f58f58b5ecfb59476b3e99629cfce20d16f91 (patch) | |
tree | 4c29cadb5f68d91c90340c223aa52c3e9399ae48 /bufferevent_sock.c | |
parent | f4b6284b8393dbabf389ddce734a30f4cdeffa17 (diff) | |
download | libevent-3c1f58f58b5ecfb59476b3e99629cfce20d16f91.tar.gz |
be: introduce bufferevent_generic_adj_existing_timeouts_()
And use it in openssl/sock layers to avoid copy-pasting it's variants.
Diffstat (limited to 'bufferevent_sock.c')
-rw-r--r-- | bufferevent_sock.c | 26 |
1 files changed, 1 insertions, 25 deletions
diff --git a/bufferevent_sock.c b/bufferevent_sock.c index ffc6c772..431d6e4b 100644 --- a/bufferevent_sock.c +++ b/bufferevent_sock.c @@ -79,7 +79,6 @@ static int be_socket_enable(struct bufferevent *, short); static int be_socket_disable(struct bufferevent *, short); static void be_socket_destruct(struct bufferevent *); -static int be_socket_adj_timeouts(struct bufferevent *); static int be_socket_flush(struct bufferevent *, short, enum bufferevent_flush_mode); static int be_socket_ctrl(struct bufferevent *, enum bufferevent_ctrl_op, union bufferevent_ctrl_data *); @@ -92,7 +91,7 @@ const struct bufferevent_ops bufferevent_ops_socket = { be_socket_disable, NULL, /* unlink */ be_socket_destruct, - be_socket_adj_timeouts, + bufferevent_generic_adj_existing_timeouts_, be_socket_flush, be_socket_ctrl, }; @@ -620,29 +619,6 @@ be_socket_destruct(struct bufferevent *bufev) } static int -be_socket_adj_timeouts(struct bufferevent *bufev) -{ - int r = 0; - if (event_pending(&bufev->ev_read, EV_READ, NULL)) { - if (evutil_timerisset(&bufev->timeout_read)) { - if (be_socket_add(&bufev->ev_read, &bufev->timeout_read) < 0) - r = -1; - } else { - event_remove_timer(&bufev->ev_read); - } - } - if (event_pending(&bufev->ev_write, EV_WRITE, NULL)) { - if (evutil_timerisset(&bufev->timeout_write)) { - if (be_socket_add(&bufev->ev_write, &bufev->timeout_write) < 0) - r = -1; - } else { - event_remove_timer(&bufev->ev_write); - } - } - return r; -} - -static int be_socket_flush(struct bufferevent *bev, short iotype, enum bufferevent_flush_mode mode) { |