Commit Graph

458 Commits

Author SHA1 Message Date
Julien Cristau f2bda61c03 Xext: Fix compiler warnings
Make GEClientGone static and include registry.h, to fix the following
warnings:
geext.c:225: warning: no previous prototype for 'GEClientGone'
geext.c: In function 'GEExtensionInit':
geext.c:280: warning: implicit declaration of function 'RegisterResourceName'
geext.c:280: warning: nested extern declaration of 'RegisterResourceName'
2008-10-26 11:43:48 +01:00
Adam Jackson 8a5b89e8e1 xalloc+memset(0) -> xcalloc 2008-10-06 15:36:51 -04:00
Adam Jackson f836e1f11b Unifdef ISC 2008-10-02 17:03:54 -04:00
Peter Harris 2b266eda6e Fix panoramiX request and reply swapping
Fix panoramiX request and reply swapping
 Set window and screen values in panoramix replies
 Prevent buffer overrun in ProcPanoramiXGetScreenSize
2008-09-21 19:19:24 +02:00
Julien Cristau b5cdcfa55c Xevie: swap replies as necessary 2008-09-01 20:05:05 +02:00
Thorvald Natvig d3ae193f4a Xevie: always initialize rep.length (bug#17394)
The XEvIE extension doesn't clear the rep.length field for any reply but
the version check. Hence, if there is junk data in it and that is sent
to the client, it hangs.

X.Org bug#17394 (http://bugs.freedesktop.org/show_bug.cgi?id=17394)
2008-09-01 19:36:56 +02:00
Eamon Walsh 60ad8d5d05 Attempt getpeercon() on remote sockets as well as local ones. 2008-08-28 23:45:17 -04:00
Tomas Carnecky ebea78cdba Prepare for array-index based devPrivates.
TODO: static indices can be made just an int; some indices
can be combined.
2008-08-28 18:05:40 -04:00
Adam Jackson 835b532d6f Build fix. 2008-08-28 14:49:35 -04:00
Adam Jackson 040212ee60 MIT-SHM pixmaps, if they exist, are ZPixmap. 2008-08-28 13:49:35 -04:00
Adam Jackson ee7c684f21 Reimplement ShmPutImage.
There's no reason to not just dispatch this straight into the GC.  As a
bonus, if you do so, damage wraps correctly, and thus swcursor works.
The side effect is it's no longer possible to override ShmPutImage with
ShmRegisterFuncs().

Also remove the (broken) damage tracking for same from EXA, since it didn't
work right, and is now superfluous.
2008-08-28 10:12:28 -04:00
Adam Jackson 64ef7ed072 Centralize declaration of ConnectionInfo. 2008-08-20 13:14:34 -04:00
Adam Jackson 0ce687634f Eviscerate save-under support.
Use a compositing manager already.  Plus I really wanted to use 'eviscerate'
in a commit message.
2008-08-13 17:28:08 -04:00
Tomas Carnecky 5532d63488 Redefine WindowTable as a fixed array
Instead of xalloc'ing it every server generation. The array is always
the same size (MAXSCREENS), anyway.
2008-08-05 01:17:32 +03:00
Aaron Plattner b37b1e6699 Make shmint.h part of the SDK.
This includes ShmRegisterFuncs, ShmSetPixmapFormat, fbShmPutImage, and
ShmRegisterFbFuncs.  Note that fbShmPutImage was already exported.
2008-07-30 18:55:03 -07:00
Adam Jackson f3ff238601 Sync is built-in and mandatory. 2008-07-24 15:46:08 -04:00
Adam Jackson 3fcf4d3eb8 XC-MISC is built-in and mandatory. 2008-07-24 15:46:08 -04:00
Adam Jackson 9757106bba Remove all empty extension reset hooks, replace with NULL. 2008-07-24 15:46:08 -04:00
Adam Jackson f65c50c4e9 Bigreqs are built-in and mandatory. 2008-07-24 15:46:08 -04:00
Adam Jackson d6228cb22a Shape extension is built-in and mandatory. 2008-07-24 15:46:08 -04:00
Adam Jackson 0b45ba488d Drop the FONTCACHE extension.
This appears to have been dead code since X-TT was merged.
2008-07-18 10:54:10 -04:00
Mathieu Bérard 47833eef35 Drop a bunch of #ifdef Lynx. 2008-07-17 11:59:24 -04:00
Peter Hutterer acce270935 Xext: store the GenericMasks in the resource system.
This fixes a severe issue - when the client died the event mask didn't get
unregistered and a future event would dereference dangling pointers. By
storing the event masks in the resource system we can free them when the
client dies.
2008-07-10 16:02:55 +09:30
Eamon Walsh 79dd600942 SELinux: Add an extension alias under the OS-agnostic "Flask" name. 2008-06-17 19:11:21 -04:00
Eamon Walsh 720e44f973 Fix "warning: no previous prototype for ‘XevieExtensionInit’". 2008-06-13 21:42:37 -04:00
Kristian Høgsberg dba5455f06 Un-K&R shm extension. 2008-06-11 11:41:44 -04:00
Matthieu Herrb 063f18ef6d 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-11 08:06:09 -06:00
Matthieu Herrb 95d162c438 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-11 08:06:09 -06:00
Peter Hutterer 6528eb885d Xext: init firstValuator to zero, otherwise core XTest events may get lost. 2008-06-11 17:24:19 +09:30
Peter Hutterer 105d28652d Xext: use GPE/GKE from XTestFakeInput #16145
This commit fixes two problems:
1) XTFI used to assemble the event itself, then passed it to the device. It's
much easier to just pass the variables into GPE/GKE and let the DIX do the
rest.

2) XTFI would pass the VCP/VCK as default device to event processing. As a
result, updating LEDs would be updated on the VCK, not on the actual keyboard.
Instead, we now pass the events through the last-used SD, thus toggling the
LEDs on the last keyboard that sent through this MD.

Also some cleanup in XTFI to merge validity checks a bit closer together
rather than having several different sections.

This breaks XTestFakeMotion with Xinerama though.

X.Org Bug 16145 <http://bugs.freedesktop.org/show_bug.cgi?id=16145>
2008-05-31 17:42:06 +09:30
Peter Hutterer f9bcecbe51 Xext: only free events in case of core motion events. 2008-05-29 18:14:54 +09:30
Peter Hutterer 26c1958c32 Merge branch 'master' into mpx 2008-05-26 17:37:31 +09:30
Peter Hutterer 6c9e9f8a40 input: instead of lastx/y, use a last.valuators[] array on the device.
During GetPointerEvents (and others), we need to access the last coordinates
posted for this device from the driver (not as posted to the client!). Lastx/y
is ok if we only have two axes, but with more complex devices we also need to
transition between all other axes.

ABI break, recompile your input drivers.
2008-05-23 12:01:37 +09:30
Peter Hutterer 5c5a1eaf68 Replace UniSA with full Uni name in Author affiliation.
Big boss says UniSA isn't unique enough. Who am I to argue?
2008-05-21 21:51:27 +09:30
Aaron Plattner 8b3d26f5b6 Short-circuit PanoramiXTranslateVisualID after verifying that the visual actually exists first.
This allows using PanoramiXTranslateVisualID to test whether a given visual made
it through PanoramiXVisualConsolidate.
2008-05-20 14:11:19 -07:00
Peter Hutterer 99d28c3ef3 Merge branch 'master' into mpx
Conflicts:

	Xext/xprint.c (removed in master)
	config/hal.c
	dix/main.c
	hw/kdrive/ati/ati_cursor.c (removed in master)
	hw/kdrive/i810/i810_cursor.c (removed in master)
	hw/xprint/ddxInit.c (removed in master)
	xkb/ddxLoad.c
2008-05-20 10:20:14 +09:30
Peter Hutterer fc7e2566cc Xext: fix typo in condition.
Fall-out from dc3aba8a55.
We must free the event if it is NOT an extension event.
2008-05-16 21:10:30 +09:30
Peter Hutterer dc3aba8a55 Xext: emulate XI events from core events when faking input.
We need XI events for event processing, so lets get rid of the pure core
events ASAP.
2008-05-13 20:00:08 +09:30
Peter Hutterer 8b3802d320 Xext: core button events have rootX/Y unset too. 2008-05-13 13:47:52 +09:30
Aaron Plattner c50b5d9789 Bug #14692: Allow drivers to have a say in Xinerama visual consolidation.
Create a new exported global variable, XineramaVisualsEqualPtr.  Use this
pointer to decide whether two visuals are equal during visual consolidation.
This pointer can be wrapped, which allows drivers and extensions to control
which visuals are consolidated.  A wrapper can reject the visuals without
calling down, but must call down and return that result if it deems the visuals
equal.  This ensures that all layers agree that the visuals are equal.

Pass the screen of the other visual into the VisualsEqual callchain.

Don't free PanoramiXVisuals since we need it for PanoramiXTranslateVisualID.

Don't skip the first visual on the other screen in PanoramiXMaybeAddVisual.

Skip the loop in PanoramiXTranslateVisualID if screen is 0.
2008-05-12 14:49:53 -07:00
Adam Jackson 1c8bd318fb X n'est pas une print API. 2008-05-12 14:15:11 -04:00
Peter Hutterer 3344569529 Merge branch 'master' into mpx
Conflicts:

	Xi/exevents.c
	dix/devices.c
2008-05-02 11:00:14 +09:30
Peter Hutterer f5ac98747d Standardise copyright headers for all new files created as part of MPX. 2008-04-25 14:50:24 +09:30
Peter Hutterer cc13f87cd8 Xext: XGE: change function definition to have return value on separate line.
This seems to be the common style in most parts of the server.
2008-04-24 11:43:47 +09:30
Peter Hutterer d0890c40b9 Xext: add a few lines of comments to XGE. 2008-04-24 11:32:36 +09:30
Peter Hutterer 745b90cde1 Xext: re-do the XGE versioning handling.
Basically the same approach RandR takes. Remember which one the client
requested, send back the one the server supports. Also divide XGE server
version (now defined in geext.c) and the client's version (still in the
protocol definition).
2008-04-24 11:27:22 +09:30
Peter Hutterer 5f3e5b3462 Xext: remove trailing whitespaces in geext.{c|h} 2008-04-24 11:14:43 +09:30
George Sapountzis 6cd9287aed drop EVI remnants 2008-04-23 18:11:56 +03:00
Peter Hutterer 8190ef8754 Merge branch 'master' into mpx
Conflicts:

	Xext/EVI.c
	Xext/appgroup.c
	Xext/cup.c
	Xext/mitmisc.c
	Xext/sampleEVI.c
	dix/window.c
2008-04-22 18:04:05 +09:30
Peter Hutterer 179a082c26 Xext: route event through master if required (XTestFakeInput) 2008-04-22 17:45:55 +09:30