From 5357c3d62ab3c3b654a14434ba2e573a155f8d91 Mon Sep 17 00:00:00 2001 From: Azat Khuzhin Date: Sat, 16 Mar 2019 17:32:17 +0300 Subject: [PATCH] Adjust evbuffer max read for bufferevents --- bufferevent_ratelim.c | 7 ++++++- include/event2/bufferevent.h | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/bufferevent_ratelim.c b/bufferevent_ratelim.c index 25874968..3b7ae51b 100644 --- a/bufferevent_ratelim.c +++ b/bufferevent_ratelim.c @@ -855,14 +855,16 @@ int bufferevent_set_max_single_read(struct bufferevent *bev, size_t size) { struct bufferevent_private *bevp; + int ret = 0; BEV_LOCK(bev); bevp = BEV_UPCAST(bev); if (size == 0 || size > EV_SSIZE_MAX) bevp->max_single_read = MAX_SINGLE_READ_DEFAULT; else bevp->max_single_read = size; + ret = evbuffer_set_max_read(bev->input, bevp->max_single_read); BEV_UNLOCK(bev); - return 0; + return ret; } int @@ -1085,5 +1087,8 @@ bufferevent_ratelim_init_(struct bufferevent_private *bev) bev->max_single_read = MAX_SINGLE_READ_DEFAULT; bev->max_single_write = MAX_SINGLE_WRITE_DEFAULT; + if (evbuffer_set_max_read(bev->bev.input, bev->max_single_read)) + return -1; + return 0; } diff --git a/include/event2/bufferevent.h b/include/event2/bufferevent.h index dac34dc7..da4d3802 100644 --- a/include/event2/bufferevent.h +++ b/include/event2/bufferevent.h @@ -890,6 +890,8 @@ int bufferevent_remove_from_rate_limit_group(struct bufferevent *bev); Set to 0 for a reasonable default. Return 0 on success and -1 on failure. + + @see evbuffer_set_max_read() */ EVENT2_EXPORT_SYMBOL int bufferevent_set_max_single_read(struct bufferevent *bev, size_t size); -- 2.40.0