MFC: Unvalidated extra length in ProcEstablishConnection (CVE-2017-12176)
This commit is contained in:
parent
186982901a
commit
f51fea01a3
@ -3654,7 +3654,12 @@ ProcEstablishConnection(ClientPtr client)
|
||||
prefix = (xConnClientPrefix *) ((char *) stuff + sz_xReq);
|
||||
auth_proto = (char *) prefix + sz_xConnClientPrefix;
|
||||
auth_string = auth_proto + pad_to_int32(prefix->nbytesAuthProto);
|
||||
if ((prefix->majorVersion != X_PROTOCOL) ||
|
||||
|
||||
if ((client->req_len << 2) != sz_xReq + sz_xConnClientPrefix +
|
||||
pad_to_int32(prefix->nbytesAuthProto) +
|
||||
pad_to_int32(prefix->nbytesAuthString))
|
||||
reason = "Bad length";
|
||||
else if ((prefix->majorVersion != X_PROTOCOL) ||
|
||||
(prefix->minorVersion != X_PROTOCOL_REVISION))
|
||||
reason = "Protocol version mismatch";
|
||||
else
|
||||
|
Loading…
Reference in New Issue
Block a user