Commit Graph

5013 Commits

Author SHA1 Message Date
Owen Taylor
3dfe90fe6c Bug #15369: Don't reduce Over to Src for transform + RepeatNone.
Only do no-src-alpha optimizations for a RepeatNone source if we can
easily probe that we won't sample outside the edges of the source.
(cherry picked from commit 574c62e305)
2008-06-24 12:42:38 -04:00
Hasso Tepper
3a7657b713 configure.ac: Fix monotonic test harder
This was only introduced in a later version of POSIX, so define that
version to get it from more conformant systems.
(cherry picked from commit 08073862f8)
2008-06-24 12:38:10 -04:00
Adam Jackson
a8a6334783 Bug #15586: (Correctly) refuse to redirect the root window.
(cherry picked from commit 100afae578)
2008-06-24 10:53:10 -04:00
Paul Bender
2334ff9bb2 Bug #15665: Fix building without Composite.
(cherry picked from commit 4c4e06af79)
2008-06-24 10:45:16 -04:00
Adam Jackson
85e598cc62 Remove some default modes that really shouldn't be in the default set.
(cherry picked from commit 59510a7643)
2008-06-24 10:41:27 -04:00
Alan Coopersmith
2f8ad7f938 Check for strcasestr and workaround it on systems without it
(cherry picked from ed65e8b4f0 commit)
2008-06-23 19:41:10 -07:00
Alan Coopersmith
dfb326790e Restore return type on xf86SetScrnInfoModes
Seems to have been accidentally lost by commit 	76943fec86
(cherry picked from 925e895b86 commit)
2008-06-23 19:32:01 -07:00
Jesse Ruffin
4c8a84acf5 Bug #16302: Fix GLX drawable refcounting in DMX.
(cherry picked from commit 3b58782692)
2008-06-23 14:35:46 -04:00
Adam Jackson
89d73d7595 Implement bswap in x86emu.
Yes, this is a 486+ instruction and thus not strictly legal in vm86
mode, but enough BIOSes use it (looking at you VIA) that we might as
well implement it.
(cherry picked from commit c8d066a151)
2008-06-23 14:01:15 -04:00
Matthieu Herrb
b0df9a6a42 preserve errno around the SIGIO handler
(cherry picked from commit 19c7e9da55)
2008-06-20 13:36:16 -04:00
Adam Jackson
fc37f8fcb2 Bug #12414: Create full-fledged pixmaps in fb24_32ReformatTile().
... instead of creating pixmaps that only fb knows about, which will
have no devPrivates for any other subsystem and thus cause havoc if
(when) they leak out.
(cherry picked from commit b55fbca4f0)
2008-06-20 13:31:18 -04:00
Matthieu Herrb
7e3ec36e0e Merge branch 'server-1.5-branch' of git+ssh://herrb@git.freedesktop.org/git/xorg/xserver into server-1.5-branch 2008-06-18 09:20:05 +02:00
Eamon Walsh
ad10515b6c SELinux: Add an extension alias under the OS-agnostic "Flask" name.
(cherry picked from commit 79dd600942)
2008-06-17 19:12:43 -04:00
Eamon Walsh
eed6713d3d SELinux: Bring server-side name registry up to date.
(cherry picked from commit 656d3d7623)
2008-06-17 17:59:10 -04:00
Adam Jackson
7822a3d05f XAA: Disable offscreen pixmaps by default.
Say Option "XaaOffscreenPixmaps" to turn them back on.

Apropos of bugs #13795 and #15098.  Not yet applied to master as this wants
a proper solution someday, but then, those bugs aren't closed yet either.
2008-06-17 16:10:51 -04:00
Michel Dänzer
d900de5a8f AIGLX/DRI1: Switch to server context for calling pScreen->GetImage.
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=16292 .

(cherry picked from commit 23b55a61f8)
2008-06-17 13:13:23 -04:00
Ian Romanick
fba700f1f6 Bug #15169: Make the server build again on Alpha.
Still won't work until the kernel makes the resource files actually exist.

(cherry picked from commit f3490d3eba)
2008-06-17 10:48:41 -04:00
Matthieu Herrb
d254903413 configure.ac: fix the help string for --with-freetype.
Default value was changed to 'no' in e5b1d38e14
but the help string wasn't updated.
2008-06-14 14:40:32 -06:00
Matthieu Herrb
c2877c073b Merge branch 'server-1.5-branch' of git+ssh://herrb@git.freedesktop.org/git/xorg/xserver into server-1.5-branch 2008-06-14 14:32:42 -06:00
Eamon Walsh
2552026664 Make devPrivates lookup functions ABI instead of static inlines.
This is required to preserve compatibility across changes to the
internal representation of the privates list.
(cherry picked from commit 2d7ba09dc4)
2008-06-13 16:45:08 -04:00
Matthieu Herrb
a645b47f04 Merge branch 'server-1.5-branch' of git+ssh://herrb@git.freedesktop.org/git/xorg/xserver into server-1.5-branch 2008-06-12 14:22:32 -06:00
Dave Airlie
21248705bb modes: make aspect choosing work on single output case.
In the single output enabled case we never enter the loop and test
never gets set and so we fail to match a good mode.

This was causing my 2560x1600 to end up at 2048x1536.
2008-06-12 14:54:56 +10:00
Julien Cristau
53a84d75c6 xfree86: fix build on GNU/kFreeBSD
GNU/kFreeBSD defines __FreeBSD_kernel__, but not __FreeBSD__.
Unify preprocessor conditionals between variable declaration and use.
Debian bug #482550.
(cherry picked from commit e6cbb1e11e)
2008-06-12 10:01:41 +10:00
George Sapountzis
336a46c519 glx: fix memory corruption with r5g6b5
should cherry-pick to xserver-1.5
(cherry picked from commit 6c72961d8f)
2008-06-12 09:27:00 +10:00
Dave Airlie
38f573566e dbe: fix DoS reported by iDefense.
This isn't a security problem just a user could DoS themselves for fun or profit.
(cherry picked from commit 23e71ef71a)
2008-06-12 09:04:47 +10:00
Peter Hutterer
59a52d8151 config: override xkb_{r,m,l,v} with Xkb{r,m,l,v} if the latter is set.
The HAL spec says that input.xkb.{rmlv}* can be sent, but if the user
specifies a X-specific {rmlv}, then this is overridden through the use of
input.x11_options.Xkb{RMLV}.
However, the way how the server parses options--by ignoring capitalisation,
underscores and spaces--the HAL and the x11_options would override each other.

So we simply filter the options, letting Xkb{RMLV} override xkb_{rmlv} and
only actually add them to the device after parsing _all_ options.

* rmlv ... rules, model, layout, variant

See Bug 13037 <http://bugs.freedesktop.org/show_bug.cgi?id=13037>
(cherry picked from commit fc35d1e3be)
(cherry picked from commit ff013b0da4)
2008-06-11 11:27:01 -04:00
Peter Hutterer
82e7cf1245 config: remove trailing whitespaces.
It makes my vim look ugly. Put "let c_space_errors=1" into your .vimrc.
(cherry picked from commit 1f54c05cf8)
(cherry picked from commit 901978ebe0)
2008-06-11 11:27:01 -04:00
Sascha Hlusiak
b4c5832c75 Support to pass arbitrary options via HAL hotplugging
Parse "input.x11_options" and pass every key/name pair to the driver.
Remove check for input.capabilities, because that's part of the fdi files.

Thanks to Dustin Spicuzza <dustin@virtualroadside.com> for the patch.
(cherry picked from commit 47eb658e80)
2008-06-11 11:27:01 -04:00
Matthieu Herrb
626ea1b02d CVE-2008-1377 - RECORD and Security extensions memory corruption
Lack of validation of the parameters of the
SProcSecurityGenerateAuthorization SProcRecordCreateContext
functions makes it possible for a specially crafted request to trigger
the swapping of bytes outside the parameter of these requests, causing
memory corruption.
(cherry picked from commit 95d162c438)
2008-06-11 11:27:00 -04:00
Matthieu Herrb
e83c79701f CVE-2008-1379 - MIT-SHM arbitrary memory read
An integer overflow in the validation of the parameters of the
ShmPutImage() request makes it possible to trigger the copy of
arbitrary server memory to a pixmap that can subsequently be read by
the client, to read arbitrary parts of the X server memory space.
(cherry picked from commit 063f18ef6d)
2008-06-11 11:27:00 -04:00
Matthieu Herrb
69b173c699 CVE-2008-2360 - RENDER Extension heap buffer overflow
An integer overflow may occur in the computation of the size of the
glyph to be allocated by the AllocateGlyph() function which will cause
less memory to be allocated than expected, leading to later heap
overflow.
(cherry picked from commit c5f69b297b)
2008-06-11 11:27:00 -04:00
Matthieu Herrb
b251fdd9d9 CVE-2008-2361 - RENDER Extension crash
An integer overflow may occur in the computation of the size of the
glyph to be allocated by the ProcRenderCreateCursor() function which
will cause less memory to be allocated than expected, leading later to
dereferencing un-mapped memory, causing a crash of the X server.
(cherry picked from commit 5257a0f83d)
2008-06-11 11:27:00 -04:00
Matthieu Herrb
edd2cac9fa CVE-2008-2362 - RENDER Extension memory corruption
Integer overflows can occur in the code validating the parameters for
the SProcRenderCreateLinearGradient, SProcRenderCreateRadialGradient
and SProcRenderCreateConicalGradient functions, leading to memory
corruption by swapping bytes outside of the intended request
parameters.
(cherry picked from commit 9171206db3)
2008-06-11 11:27:00 -04:00
Matthieu Herrb
6de2855b88 CVE-2008-1379 - MIT-SHM arbitrary memory read
An integer overflow in the validation of the parameters of the
ShmPutImage() request makes it possible to trigger the copy of
arbitrary server memory to a pixmap that can subsequently be read by
the client, to read arbitrary parts of the X server memory space.
2008-06-10 12:31:11 -06:00
Matthieu Herrb
ebd916314d CVE-2008-1377 - RECORD and Security extensions memory corruption
Lack of validation of the parameters of the
SProcSecurityGenerateAuthorization SProcRecordCreateContext
functions makes it possible for a specially crafted request to trigger
the swapping of bytes outside the parameter of these requests, causing
memory corruption.
2008-06-10 12:30:54 -06:00
Matthieu Herrb
a1733327aa CVE-2008-2362 - RENDER Extension memory corruption
Integer overflows can occur in the code validating the parameters for
the SProcRenderCreateLinearGradient, SProcRenderCreateRadialGradient
and SProcRenderCreateConicalGradient functions, leading to memory
corruption by swapping bytes outside of the intended request
parameters.
2008-06-10 12:30:46 -06:00
Matthieu Herrb
5677751a04 CVE-2008-2361 - RENDER Extension crash
An integer overflow may occur in the computation of the size of the
glyph to be allocated by the ProcRenderCreateCursor() function which
will cause less memory to be allocated than expected, leading later to
dereferencing un-mapped memory, causing a crash of the X server.
2008-06-10 12:30:31 -06:00
Matthieu Herrb
f7c40a003d CVE-2008-2360 - RENDER Extension heap buffer overflow
An integer overflow may occur in the computation of the size of the
glyph to be allocated by the AllocateGlyph() function which will cause
less memory to be allocated than expected, leading to later heap
overflow.
2008-06-10 12:30:06 -06:00
Daniel Stone
8259d19f71 Xi: event_{x,y} should refer to the extended device (bug #16289)
ProcessOtherEvents was unconditionally stomping the root_{x,y}
co-ordinates provided by GetPointerEvents with those of the core
pointer, meaning that both root_{x,y} and event_{x,y} reported to
clients would reflect the sprite's position, not the position reported
by the device that generated the DeviceMotionNotify or the
DeviceButton{Press,Release} event in the first place.

For key events we still take the sprite's co-ords, as we're delivering
to the focus, which is the (VCP) sprite.

Not cherry-picked from master as MPX fixes this anyway, by taking the
co-ords of the sprite the device moves (be it visible or no).
2008-06-10 18:33:57 +03:00
Julien Cristau
4e3cf7cd89 Add xkbstr.h and xkbsrv.h to sdk_HEADERS
(cherry picked from commit 150c2f55a5)
2008-06-09 17:31:10 -04:00
Adam Jackson
c7c43285b1 Merge branch 'server-1.5-branch' of git+ssh://git.freedesktop.org/git/xorg/xserver into server-1.5-branch 2008-06-09 17:06:41 -04:00
Michel Dänzer
facf271b05 EXA: Fix exaGetPixmapFirstPixel() crash if the driver has a CreatePixmap hook.
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=16243
(cherry picked from commit 6b96281100)
2008-06-09 14:11:46 -04:00
Paulo Cesar Pereira de Andrade
60990c69b4 Correct a NULL pointer deference
The problem happens if Monitor/Card combo doesn't provide EDID info,
and the XFree86-VidModeExtension extension is used.

Signed-off-by: Peter Hutterer <peter@cs.unisa.edu.au>
(cherry picked from commit c8af7ce35a)
2008-06-09 14:09:39 -04:00
Michel Dänzer
1667ed6e24 EXA: Don't migrate twice in exaImageGlyphBlt.
exaPrepareAccess already handles migration.
(cherry picked from commit f6d61d3d86)
2008-06-09 14:04:21 -04:00
Michel Dänzer
6dee3fdf18 EXA: Don't suggest exaCopyDirty be inlined.
Leave the decision to the compiler toolchain.
(cherry picked from commit d733043982)
2008-06-09 14:04:01 -04:00
Michel Dänzer
3943a3a567 EXA: Specify region used for source pixmap migration in exaCopyNtoN.
Avoids excessive migration overhead in some pathological cases. See
http://bugs.freedesktop.org/show_bug.cgi?id=15845 .
(cherry picked from commit 3baf3b42e0)
2008-06-09 14:03:36 -04:00
Drew Parsons
c00ff932f8 Disable D-BUS from Xprint.
Use dummy config functions to replace those from config/config.c, and
therefore do not link Xprt with $CONFIG_LIB.

Works around an endlessly spinning loop in dix/dispatch.c::Dispatch()
(WaitForSomething() not waiting) when built with dbus, which was
causing Xprt to use 95% cpu.
(cherry picked from commit 2a3d1421e0)
2008-06-09 13:57:03 -04:00
Drew Parsons
2f994cb00e Create dix/libXpdix.la for Xprint-specific build of libdix.la
(cherry picked from commit 4e2c6dbabdbbaaca213fd08edd422de15d0900cc)

required because of commit 7c0709a736,
which made requestingClient in dix specific to Xprint only.
Add to XPRINT_LIBS in hw/xprint/Makefile.am in front of
$(XSERVER_LIBS) to override definitions in libdix.la for standard xservers.

Follows 571206832d (providing -DXPRINT
to xprint subdirs).

Note it may be possible to restructure the code so that
requestingClient is stored elsewhere than in dix. See discussions
following http://lists.freedesktop.org/archives/xorg/2008-March/033844.html
If this is done it may be possible to revert this commit (if not 571206...).
(cherry picked from commit 966ae1781f)
2008-06-09 13:56:59 -04:00
Drew Parsons
30774d6b3c Define XPRINT in XPRINT_CFLAGS (configure.ac)
-DXPRINT had only been set for Xprt in hw/xprint/Makefile.am
After commit 7c0709a736 it is also
required for ps/PsArea.c and PsFonts.c to ensure ‘requestingClient’ is
defined, so make it a global Xprint definition in configure.ac.
(cherry picked from commit 28a6719fd486d9a9cecad0b057d9ea7c59c66055)
(cherry picked from commit 571206832d)
2008-06-09 13:56:53 -04:00
Tilman Sauerbeck
200d676be2 EXA: Set pixmap->accel_blocked on the screen pixmap, too.
(cherry picked from commit 3f081b4de5)
2008-06-09 13:44:37 -04:00