Mercurial > dovecot > core-2.2
changeset 22838:bed6a1eb53f7
lib: Add connection_streams_changed()
Originally by Stephan Bosch
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Thu, 08 Feb 2018 10:52:57 +0200 |
parents | 08535865104c |
children | e94be670bd18 |
files | src/lib/connection.c src/lib/connection.h |
diffstat | 2 files changed, 12 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib/connection.c Thu Feb 08 02:38:23 2018 +0200 +++ b/src/lib/connection.c Thu Feb 08 10:52:57 2018 +0200 @@ -164,6 +164,16 @@ } } +void connection_streams_changed(struct connection *conn) +{ + const struct connection_settings *set = &conn->list->set; + + if (set->input_max_size != 0 && conn->io != NULL) { + io_remove(&conn->io); + conn->io = io_add_istream(conn->input, *conn->list->v.input, conn); + } +} + static void connection_client_connected(struct connection *conn, bool success) { i_assert(conn->list->set.client);
--- a/src/lib/connection.h Thu Feb 08 02:38:23 2018 +0200 +++ b/src/lib/connection.h Thu Feb 08 10:52:57 2018 +0200 @@ -127,6 +127,8 @@ void connection_disconnect(struct connection *conn); void connection_deinit(struct connection *conn); +void connection_streams_changed(struct connection *conn); + /* Returns -1 = disconnected, 0 = nothing new, 1 = something new. If input_full_behavior is ALLOW, may return also -2 = buffer full. */ int connection_input_read(struct connection *conn);