xserver-multidpi/os
Robert Morell 67c66606c7 os: Reset input buffer's 'ignoreBytes' field
If a client sends a request larger than maxBigRequestSize, the server is
supposed to ignore it.

Before commit cf88363d, the server would simply disconnect the client.  After
that commit, it attempts to gracefully ignore the request by remembering how
long the client specified the request to be, and ignoring that many bytes.
However, if a client sends a BigReq header with a large size and disconnects
before actually sending the rest of the specified request, the server will
reuse the ConnectionInput buffer without resetting the ignoreBytes field.  This
makes the server ignore new X clients' requests.

This fixes that behavior by resetting the ignoreBytes field when putting the
ConnectionInput buffer back on the FreeInputs list.

Signed-off-by: Robert Morell <rmorell@nvidia.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-05-10 09:02:57 +10:00
..
.gitignore dix and os: gitignore dix.O and os.O 2011-09-23 17:14:47 -07:00
access.c Fix formatting of address operators 2012-12-05 18:09:48 -06:00
auth.c Introduce a consistent coding style 2012-03-21 13:54:42 -07:00
backtrace.c os: use libunwind to generate backtraces 2013-02-26 07:59:53 +10:00
client.c Introduce a consistent coding style 2012-03-21 13:54:42 -07:00
connection.c os: Hide the Connection{In,Out}put implementation details 2012-09-20 14:40:18 -04:00
io.c os: Reset input buffer's 'ignoreBytes' field 2013-05-10 09:02:57 +10:00
log.c os: Use ErrorFSigSafe from FatalError and it's friends 2013-05-07 09:41:14 +10:00
Makefile.am os: use libunwind to generate backtraces 2013-02-26 07:59:53 +10:00
mitauth.c Introduce a consistent coding style 2012-03-21 13:54:42 -07:00
oscolor.c Introduce a consistent coding style 2012-03-21 13:54:42 -07:00
osdep.h os: Hide the Connection{In,Out}put implementation details 2012-09-20 14:40:18 -04:00
osinit.c os/osinit.c: no getpgrp() and setpgrp() on WIN32 2012-11-28 14:44:11 +00:00
rpcauth.c Introduce a consistent coding style 2012-03-21 13:54:42 -07:00
strcasecmp.c Introduce a consistent coding style 2012-03-21 13:54:42 -07:00
strcasestr.c Introduce a consistent coding style 2012-03-21 13:54:42 -07:00
strlcat.c Introduce a consistent coding style 2012-03-21 13:54:42 -07:00
strlcpy.c Introduce a consistent coding style 2012-03-21 13:54:42 -07:00
strndup.c os: Ensure <dix-config.h> is included in strndup.c 2013-02-14 09:20:46 -08:00
utils.c os: Round fraction in pnprintf %f format 2013-02-08 08:57:43 -08:00
WaitFor.c os: make timers signal-safe 2012-05-01 11:36:35 +10:00
xdmauth.c Introduce a consistent coding style 2012-03-21 13:54:42 -07:00
xdmcp.c Fix formatting of address operators 2012-12-05 18:09:48 -06:00
xprintf.c os/xprintf: add Xvscnprintf and Xscnprintf 2012-05-03 14:59:23 +10:00
xsha1.c os: Add libnettle as a choice of SHA1 implementation 2012-11-05 13:34:18 -06:00
xstrans.c Introduce a consistent coding style 2012-03-21 13:54:42 -07:00