From: Stephan Bosch Date: Sat, 4 Feb 2017 15:21:51 +0000 (+0100) Subject: lib-http: response parser: Always clear response to prevent referring to stale data. X-Git-Tag: 2.3.0.rc1~2099 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=88ead42eefcad4af0313f55275de196f96e8f002;p=thirdparty%2Fdovecot%2Fcore.git lib-http: response parser: Always clear response to prevent referring to stale data. --- diff --git a/src/lib-http/http-response-parser.c b/src/lib-http/http-response-parser.c index b799f97d60..0f70092590 100644 --- a/src/lib-http/http-response-parser.c +++ b/src/lib-http/http-response-parser.c @@ -304,6 +304,8 @@ int http_response_parse_next(struct http_response_parser *parser, time_t retry_after = (time_t)-1; int ret; + i_zero(response); + /* make sure we finished streaming payload from previous response before we continue. */ if ((ret = http_message_parse_finish_payload(&parser->parser)) <= 0) { @@ -387,7 +389,6 @@ int http_response_parse_next(struct http_response_parser *parser, parser->state = HTTP_RESPONSE_PARSE_STATE_INIT; - i_zero(response); response->status = parser->response_status; response->reason = parser->response_reason; response->version_major = parser->parser.msg.version_major;