Fix crash in multipart handling

Close cesanta/dev#6974

PUBLISHED_FROM=4d4e4a46eceba10aec8dacb7f8f58bd078c92307
This commit is contained in:
Alexander Alashkin 2017-04-03 10:14:16 +01:00 committed by Deomid Ryabkov
parent 17cfecc5c3
commit c60fe0c6f6

View File

@ -5879,6 +5879,12 @@ static int mg_http_multipart_wait_for_boundary(struct mg_connection *c) {
struct mbuf *io = &c->recv_mbuf;
struct mg_http_proto_data *pd = mg_http_get_proto_data(c);
if (pd->mp_stream.boundary == NULL) {
pd->mp_stream.state = MPS_FINALIZE;
DBG(("Invalid request: boundary not initilaized"));
return 0;
}
if ((int) io->len < pd->mp_stream.boundary_len + 2) {
return 0;
}