From: Guus Sliepen Date: Wed, 27 May 2020 19:02:22 +0000 (+0200) Subject: Correctly report the maximum allowed send size in the poll callback for framed channels. X-Git-Url: https://git.meshlink.io/?a=commitdiff_plain;h=aad97d717a86b999c5ebf105131471550023dbc8;p=meshlink Correctly report the maximum allowed send size in the poll callback for framed channels. --- diff --git a/src/utcp.c b/src/utcp.c index cbc094a1..8ef59a06 100644 --- a/src/utcp.c +++ b/src/utcp.c @@ -2433,7 +2433,7 @@ struct timespec utcp_timeout(struct utcp *utcp) { if(c->poll) { if((c->state == ESTABLISHED || c->state == CLOSE_WAIT) && c->do_poll) { c->do_poll = false; - uint32_t len = buffer_free(&c->sndbuf); + uint32_t len = is_framed(c) ? min(buffer_free(&c->sndbuf), MAX_UNRELIABLE_SIZE) : buffer_free(&c->sndbuf); if(len) { c->poll(c, len);