mirror of
https://github.com/openbsd/xenocara.git
synced 2025-12-09 02:39:00 +00:00
Merge fixes from upstream for multiple Xserver issues:
CVE-2025-49175: Out-of-bounds access in X Rendering extension
(Animated cursors)
CVE-2025-49176: Integer overflow in Big Requests Extension
CVE-2025-49177: Data leak in XFIXES Extension 6
(XFixesSetClientDisconnectMode)
CVE-2025-49178: Unprocessed client request via bytes to ignore
CVE-2025-49179: Integer overflow in X Record extension
CVE-2025-49180: Integer overflow in RandR extension
(RRChangeProviderProperty)
This commit is contained in:
@@ -296,6 +296,10 @@ ReadRequestFromClient(ClientPtr client)
|
||||
needed = get_big_req_len(request, client);
|
||||
}
|
||||
client->req_len = needed;
|
||||
if (needed > MAXINT >> 2) {
|
||||
/* Check for potential integer overflow */
|
||||
return -(BadLength);
|
||||
}
|
||||
needed <<= 2; /* needed is in bytes now */
|
||||
}
|
||||
if (gotnow < needed) {
|
||||
@@ -438,7 +442,7 @@ ReadRequestFromClient(ClientPtr client)
|
||||
*/
|
||||
|
||||
gotnow -= needed;
|
||||
if (!gotnow)
|
||||
if (!gotnow && !oci->ignoreBytes)
|
||||
AvailableInput = oc;
|
||||
if (move_header) {
|
||||
if (client->req_len < bytes_to_int32(sizeof(xBigReq) - sizeof(xReq))) {
|
||||
|
||||
Reference in New Issue
Block a user