diff --git a/os/io.c b/os/io.c index ba12c7e61..948660996 100644 --- a/os/io.c +++ b/os/io.c @@ -395,6 +395,8 @@ ReadRequestFromClient(ClientPtr client) needed = get_big_req_len(request, client); } client->req_len = needed; + if (needed > MAXINT >> 2) + return -(BadLength); needed <<= 2; } if (gotnow < needed) {