1
0
mirror of https://github.com/rkd77/elinks.git synced 2024-08-20 20:54:47 -04:00

http chunked: Better check for overflow.

This commit is contained in:
Witold Filipczyk 2007-06-09 18:30:42 +02:00 committed by Witold Filipczyk
parent a4140594f1
commit 446eec0bd3

View File

@ -1224,13 +1224,11 @@ read_chunked_http_data(struct connection *conn, struct read_buffer *rb)
if (zero) http->chunk_remaining = 0;
len = http->chunk_remaining;
if (http->chunk_remaining) {
/* Maybe everything necessary didn't come yet..
* This handle unlikely case when len < 0
* or http->chunk_remaining > 4GB and len == 0 */
int_bounds(&len, 1, rb->length);
conn->received += len;
}
if (http->chunk_remaining > INT_MAX)
int_lower_bound(&len, rb->length);
/* Maybe everything necessary didn't come yet.. */
int_upper_bound(&len, rb->length);
conn->received += len;
data = decompress_data(conn, rb->data, len, &data_len);