Mercurial > dovecot > core-2.2
changeset 22689:ac58eecfb8b0
director: Fix logging of uninitialized PONG buffer size
PONG always has 0 or 2 parameters. The easiest fix here is to just not even
try to support 1 parameter.
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Mon, 27 Nov 2017 11:58:39 +0200 |
parents | 09f5d34ff1fc |
children | b66965f62ae8 |
files | src/director/director-connection.c |
diffstat | 1 files changed, 4 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/director/director-connection.c Sun Nov 26 23:00:30 2017 +0200 +++ b/src/director/director-connection.c Mon Nov 27 11:58:39 2017 +0200 @@ -1872,10 +1872,12 @@ conn->ping_waiting = FALSE; timeout_remove(&conn->to_pong); - if (args[0] == NULL || str_to_time(args[0], &sent_time) < 0) + if (str_array_length(args) < 2 || + str_to_time(args[0], &sent_time) < 0 || + str_to_uintmax(args[1], &send_buffer_size) < 0) { sent_time = 0; - else if (args[1] == NULL || str_to_uintmax(args[1], &send_buffer_size) < 0) send_buffer_size = (uintmax_t)-1; + } int ping_msecs = timeval_diff_msecs(&ioloop_timeval, &conn->ping_sent_time); if (ping_msecs >= 0) {