Age | Commit message (Collapse) | Author | Files | Lines |
|
Add a call to dixRequestPrivate to inform dixFreePrivates that memory
allocated in GEClientCallback should be released when client
disconnects. Otherwise there is a leak of sizeof(GEClientInfoRec) for
every client connect/disconnect.
Also remove the explicit allocation and let GEGetClient /
dixLookupPrivate do it. This makes GEClientCallback similar to the
other extension callbacks.
Signed-off-by: Rami Ylimaki <ext-rami.ylimaki@nokia.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Updates my previous patch, b422b532f3dcab54c53f61a66f2ad76059d1874a.
keithp recommended against allocating the drawables array globally, but my
updated patch with that fixed isn't the patch that landed.
Signed-off-by: Jamey Sharp <jamey@minilop.net>
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
Signed-off-by: Eamon Walsh <ewalsh@tycho.nsa.gov>
|
|
This will allow separate controls over pointer and keyboard without having
to relabel the devices to separate types.
Signed-off-by: Eamon Walsh <ewalsh@tycho.nsa.gov>
|
|
XACE has been changed to not return BadAccess on device read failures.
Thus, no need for this workaround code.
Signed-off-by: Eamon Walsh <ewalsh@tycho.nsa.gov>
|
|
Signed-off-by: Eamon Walsh <ewalsh@tycho.nsa.gov>
|
|
New files:
xselinux_ext.c: Extension init and request handlers.
xselinux_hooks.c: XACE hook functions and other callbacks.
xselinux_label.c: Object security-labeling code.
xselinuxint.h: Shared internal functions.
Signed-off-by: Eamon Walsh <ewalsh@tycho.nsa.gov>
|
|
On 64-bit systems, int and pointers don't have the same size, so GCC gives
warnings about casts between int and pointer types. However, in the cases
covered by this patch, it's always a value that fits in int being stored
temporarily as a pointer and then converted back later, which is safe.
Casting through the pointer-sized integer type intptr_t convinces the
compiler that this is OK.
Signed-off-by: Jamey Sharp <jamey@minilop.net>
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
|
|
Dynamically allocate per-screen data in the SHM extension, instead of
having a single static-sized array.
Signed-off-by: Jamey Sharp <jamey@minilop.net>
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
|
|
Signed-off-by: Jamey Sharp <jamey@minilop.net>
Acked-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=23298 .
|
|
Resolves a linker error caused by LookupIDByType.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Not referenced by anything.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Triggered by the xextproto 7.1 change, fixed by moving the matching
declarations from the header file to here.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
include/protocol-versions.h specifies each extension version as supported by
the server and sent back on the wire to the client.
This fixes up several issues with the server potentially reporting a higher
version of the protocol if recompiled against a newer version of the
protocol.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Acked-by: Rémi Cardona <remi@gentoo.org>
Acked-by: Julien Cristau <jcristau@debian.org>
|
|
xcmisc and bigreq don't have their own header so just declare it here to
shut up the compiler.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Thomas Jaeger <ThJaeger@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Eamon Walsh <ewalsh@tycho.nsa.gov>
|
|
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
|
|
xf86bigfontproto for new *proto.h header file names
bigreqsproto >= 1.1.0
xcmiscproto >= 1.2.0
xf86bigfontproto >= 1.2.0
|
|
This patch corrects a misnaming of XTest-related functions.
The extension itself announces itself as XTEST. Xtst is the library name
itself, but all library functions are prefixed by XTest. Same with the
naming in the server.
- Rename all *Xtst* functions to *XTest* for consistency with the library
and in-server API.
- Rename the "Xtst device" property to "XTEST device" for consistency with
the extension naming.
- Rename the device naming to "<master device name> XTEST device". The
default xtest devices become "Virtual core XTEST pointer" and "Virtual
core XTEST keyboard".
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
XTest devices are non-optional but nonetheless specific to the XTEST
extension.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
The previous behavior was to set the serverClient's value which was used globally.
This is in support of XI2, where clients can create device pairs directly.
Signed-off-by: Eamon Walsh <ewalsh@tycho.nsa.gov>
|
|
Reflects the ability of clients to create/destroy device objects.
Signed-off-by: Eamon Walsh <ewalsh@tycho.nsa.gov>
|
|
When we change the DPMS mode, don't play games with the last event time as
this breaks applications using IDLETIME to turn the backlight off after a
preset time.
This patch fixes gnome-power-manager and xfce-power-manager
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
If the counter had a value higher than the trigger value for a negative
transition, the trigger value did not get set.
The correct sequence of checks is:
if (positive transition)
if (counter value < trigger value)
set up trigger
if (negative transition)
if (counter value > trigger value)
set up trigger
Red Hat Bug 501601 <https://bugzilla.redhat.com/show_bug.cgi?id=501601>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Introduced with 57aff88c7d0761e590806d07bee1c9410680c89f.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
XTest event processing may be interrupted by a SIGIO. If Xtest uses the same
event list as the rest of the server, this list may be overwritten
in-flight.
X.Org Bug 23100 <http://bugs.freedesktop.org/show_bug.cgi?id=23100>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Reported-by: Byeong-ryeol Kim
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
xextproto had Xlib client headers moved into libXext.
Protocol header files are named fooproto.h, header files with constants
foo.h or fooconst.h where foo.h was already in use for client-side headers.
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
gives bogus data on sparc and probably others leading to a crash.
Fix:
Don't use initializers, instead set each member directly to enforce order.
Signed-off-by: Eamon Walsh <ewalsh@tycho.nsa.gov>
|
|
Calling XTestFakeDevice*Event on a device that doesn't allow the matching
event returns BadValue.
Reported-by: Florian Echtler
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Rather than storing a simple boolean in the devPrivate for XTest devices,
store the actual master device's id (since it is constant for the life of
the device anyway).
Callers should use GetXtstDevice now instead of digging around in the
devPrivates themselves.
This patch allows for a cleanup in the creation of new master devices since
GetMaster and GetXtstDevice spare the need for loops, IsPointer checks and
similar.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Acked-by: Benjamin Close <Benjamin.Close@clearchain.com>
|
|
Signed-off-by: Eamon Walsh <ewalsh@tycho.nsa.gov>
|
|
Refects the ability of clients to add/remove devices and device properties.
Signed-off-by: Eamon Walsh <ewalsh@tycho.nsa.gov>
|
|
Take the mapping of DixAccess bits to Flask permissions, move it
into the header file, break up the extremely long lines, and
annotate the permission names with the bit being referenced.
Signed-off-by: Eamon Walsh <ewalsh@tycho.nsa.gov>
|
|
Conflicts:
Xext/geext.c
Xi/chdevcur.c
Xi/extgrbdev.c
Xi/xiproperty.c
configure.ac
dix/ptrveloc.c
hw/xfree86/common/xf86Config.c
mi/mipointer.h
test/input.c
xkb/xkb.c
|
|
isMaster is not enough as long as we differ between master pointers and
keyboard. With flexible device classes, the usual checks for whether a
master device is a pointer (currently check for ->button, ->valuators or
->key) do not work as an SD may post an event through a master and mess this
check up.
Example, a device with valuators but no buttons would remove the button
class from the VCP and thus result in the
IsPointerDevice(inputInfo.pointer) == FALSE.
This will become worse in the future when new device classes are introduced
that aren't provided in the current system (e.g. a switch class).
This patch replaces isMaster with "type", one of SLAVE, MASTER_POINTER and
MASTER_KEYBOARD. All checks for dev->isMaster are replaced with an
IsMaster(dev).
|
|
Instead, clients should keep track of the selection instances they use.
|
|
Error: Write outside array bounds at Xext/geext.c:406
in function 'GEWindowSetMask' [Symbolic analysis]
In array dereference of cli->nextSib[extension] with index 'extension'
Array size is 128 elements (of 4 bytes each), index <= 128
Error: Buffer overflow at dix/events.c:592
in function 'SetMaskForEvent' [Symbolic analysis]
In array dereference of filters[deviceid] with index 'deviceid'
Array size is 20 elements (of 512 bytes each), index >= 0 and index <= 20
Error: Read buffer overflow at hw/xfree86/loader/loader.c:226
in function 'LoaderOpen' [Symbolic analysis]
In array dereference of refCount[new_handle] with index 'new_handle'
Array size is 256 elements (of 4 bytes each), index >= 1 and index <= 256
These bugs were found using the Parfait source code analysis tool.
For more information see http://research.sun.com/projects/parfait
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
Acked-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
BadDevice is an XI error, but this cannot happen for core XTest fake input
anyway since the device will be the matching virtual XTest slave device.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
We already did the device selection before, so dev should be the XTest virtual
pointer.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
BadDevice is an XI error, but this cannot happen for core XTest fake input
anyway since the device will be the matching virtual XTest slave device.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
We already did the device selection before, so dev should be the XTest virtual
pointer.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|