Commit Graph

548 Commits

Author SHA1 Message Date
Richard Purdie
c31aead0fe [Kdrive] make XCalibrate 'orientation aware' 2008-01-08 12:31:47 +01:00
Eamon Walsh
39cb782f28 XACE: DeleteCallbackList zeroes out its argument so don't do it twice. 2008-01-03 23:17:06 -05:00
Eamon Walsh
cd0603c2dc Bug #13765: Heap corruption in XC-SECURITY extension code. 2008-01-03 21:41:02 -05:00
Eamon Walsh
17a9714a67 Bug #13794: Update MBE extension devPrivates to new interface. 2008-01-03 14:46:54 -05:00
Peter Hutterer
8da83836b6 Merge branch 'master' into mpx
Conflicts:

	XTrap/xtrapddmi.c
	Xext/security.c
	Xext/xprint.c
	Xext/xtest.c
	Xext/xvdisp.c
	Xi/exevents.c
	Xi/grabdevb.c
	Xi/grabdevk.c
	Xi/opendev.c
	Xi/ungrdev.c
	Xi/ungrdevb.c
	Xi/ungrdevk.c
	dix/cursor.c
	dix/devices.c
	dix/dixutils.c
	dix/events.c
	dix/getevents.c
	dix/main.c
	dix/window.c
	hw/xfree86/ramdac/xf86Cursor.c
	include/dix.h
	include/input.h
	include/inputstr.h
	mi/midispcur.c
	mi/miinitext.c
	mi/misprite.c
	render/animcur.c
	xfixes/cursor.c
	xkb/xkbAccessX.c
2008-01-03 17:04:54 +10:30
Alan Coopersmith
dfd682b582 X.Org bug 4947/Sun bug 6646626: Xv extension not byte-swapping properly
X.Org Bugzilla #4947 <https://bugs.freedesktop.org/show_bug.cgi?id=4947>
Sun bug 6646626 <http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6646626>

Don't use swapped data after swapping it.   When done swapping data,
send the swapped data, not the address of the pointer to it, to the client.
2008-01-02 19:27:22 -08:00
Eamon Walsh
3b23dd9fd4 xselinux: Fix whitespace warnings. 2007-12-28 13:29:45 -05:00
Eamon Walsh
643c52be32 xselinux: Remove "X" prefix on remaining functions and strings.
Should be evident from the context.
2007-12-28 13:27:28 -05:00
Eamon Walsh
f4bc333fc1 xselinux: don't FatalError on an invalid class mapping, just disable support. 2007-12-28 13:27:28 -05:00
Eamon Walsh
f3780ece52 xselinux: Implement swapped protocol request logic. 2007-12-28 13:27:28 -05:00
Eamon Walsh
1bbf64ab11 xselinux: Remove unnecessary structure definition. 2007-12-28 13:27:28 -05:00
Adam Jackson
743008a481 Report serverClient resources in the X-Resource extension. 2007-12-23 14:27:14 -05:00
Eamon Walsh
1393a97ea9 xselinux: Send AVC messages to audit system instead of log file/stderr. 2007-12-20 16:23:49 -05:00
Peter Hutterer
66b00029e5 Xext: remove redefinition of Bool.
Thanks to Simon Thum.
2007-12-19 18:11:32 +10:30
Sam Lau
51fab1eb30 Sun bug 6278039: Xevie checking wrong size in swapped XevieSelectInput requests
<http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6278039>
2007-12-18 11:40:09 -08:00
Eamon Walsh
97c82ce051 XACE: Restore the old background None behavior in response to bug #13683.
From the X11 protocol spec:

"If background None is specified, the window has no defined background."

This means that toolkits and apps cannot rely on the "transparent" nature
of the current implementation!  At some point before the next release,
XACE will switch back to a solid background as the default.
2007-12-17 23:12:01 -05:00
Eamon Walsh
c8feb73f58 Merge branch 'master' into XACE-SELINUX
Conflicts:

	Xext/EVI.c
	Xext/bigreq.c
	Xext/cup.c
	Xext/dpms.c
	Xext/fontcache.c
	Xext/mitmisc.c
	Xext/xcmisc.c
	Xext/xf86bigfont.c
	Xext/xtest.c
	configure.ac
	dbe/dbe.c
	hw/darwin/darwin.h
	hw/darwin/darwinEvents.c
	hw/darwin/iokit/xfIOKit.h
	hw/darwin/iokit/xfIOKitCursor.c
	hw/darwin/quartz/fullscreen/fullscreen.c
	hw/darwin/quartz/fullscreen/quartzCursor.c
	hw/darwin/quartz/quartz.c
	hw/darwin/quartz/quartzCommon.h
	hw/darwin/quartz/quartzCursor.c
	hw/darwin/quartz/xpr/dri.c
	hw/darwin/quartz/xpr/dristruct.h
	hw/darwin/quartz/xpr/xprCursor.c
	hw/darwin/quartz/xpr/xprFrame.c
	hw/xfree86/modes/xf86RandR12.c
	include/cursor.h
	miext/rootless/rootlessCommon.h
	miext/rootless/rootlessScreen.c
	miext/rootless/rootlessWindow.c
	render/picturestr.h

Trying to pick up the pieces from the darwin churn here...
2007-12-13 18:38:25 -05:00
Eamon Walsh
9a7ce57363 xselinux: Add new protocol for setting device create context. 2007-12-12 20:44:59 -05:00
Peter Harris
2d723bbd0d Add missing swaps in panoramiXSwap.c 2007-12-05 18:29:54 +00:00
Adam Jackson
0fff01f566 Fix swapped Xv dispatch under Xinerama.
Same-endian dispatch was properly calling through the Xinerama wrapping,
but other-endian dispatch wasn't.
2007-12-02 14:15:36 -05:00
Adam Jackson
fa47910045 Clean up many #if 0. 2007-12-02 12:40:25 -05:00
Peter Hutterer
f9269bebae DeviceIntRec: move lastx/lasty from valuator into DeviceIntRec.
We free the ValuatorClassRec quite regularly. If a SIGIO is handled while
we're swapping device classes, we can bring the server down when we try to
access lastx/lasty of the master device.
2007-11-22 17:30:14 +10:30
Peter Hutterer
33f1568992 xtest: switch an inputInfo.pointer over to PickPointer.
Couple of whitespace fixes too.
2007-11-21 16:14:49 +10:30
Peter Hutterer
e5dd7a9579 Xext: Scruffy the janitor don't like no "register" keywords. 2007-11-21 15:59:31 +10:30
Eamon Walsh
4363d70c6b registry: Fix some mistakes in the reversion of prior commits. 2007-11-20 18:58:55 -05:00
Eamon Walsh
5269da2bde Revert "registry: Register XvMC extension protocol names."
This reverts commit 853ea337bd.

Moving all the names into dix/registry.c
2007-11-20 18:43:38 -05:00
Eamon Walsh
03a86c8d5e Revert "registry: Register Xv extension protocol names."
This reverts commit 12766c5b5f.

Moving all the names into dix/registry.c
2007-11-20 18:42:19 -05:00
Eamon Walsh
edcf490cdb registry: Remove registry code from XTest extension.
Moving all the names into dix/registry.c
2007-11-20 18:41:10 -05:00
Eamon Walsh
5fea1ed50f registry: Remove registry code from SELinux extension.
Moving all the names into dix/registry.c
2007-11-20 18:39:48 -05:00
Eamon Walsh
9a8af33718 Revert "registry: Register Resource extension protocol names."
This reverts commit 5c8b1a9172.

Moving all the names into dix/registry.c
2007-11-20 18:38:24 -05:00
Eamon Walsh
e6023e0208 Revert "registry: Register XPrint extension protocol names."
This reverts commit f077578e42.

Moving all the names into dix/registry.c
2007-11-20 18:36:49 -05:00
Eamon Walsh
277345fb70 registry: Remove registry code from XF86Bigfont extension.
Moving all the names into dix/registry.c
2007-11-20 18:35:57 -05:00
Eamon Walsh
bf27edd365 Revert "registry: Register EVIE extension protocol names."
This reverts commit 48891d5696.

Moving all the names into dix/registry.c
2007-11-20 18:34:14 -05:00
Eamon Walsh
6874271794 registry: Remove registry code from XC-MISC extension.
Moving all the names into dix/registry.c
2007-11-20 18:32:54 -05:00
Eamon Walsh
4b0274e8f7 Revert "registry: Register SYNC extension protocol names."
This reverts commit 9f597f6c87.

Moving all the names into dix/registry.c
2007-11-20 18:25:15 -05:00
Eamon Walsh
4c7cf5aa4c Revert "registry: Register SHM extension protocol names."
This reverts commit 2c9646ad4e.

Moving all the names to dix/registry.c
2007-11-20 18:23:57 -05:00
Eamon Walsh
67e82e306f Revert "registry: Register SHAPE extension protocol names."
This reverts commit 4e274e90e1.

Moving all the names to dix/registry.c
2007-11-20 18:22:59 -05:00
Eamon Walsh
8583bf78ad registry: Remove registry code from XC-SECURITY extension.
Moving all the names to dix/registry.c
2007-11-20 18:21:09 -05:00
Eamon Walsh
55744d8e5d Revert "registry: Register MIT-SCREEN-SAVER extension protocol names."
This reverts commit 58c3240fcb.

Moving all the names into dix/registry.c
2007-11-20 18:19:44 -05:00
Eamon Walsh
36ef45928c registry: Remove registry code from MIT-MISC extension.
Moving all the names to dix/registry.c
2007-11-20 18:18:01 -05:00
Eamon Walsh
816e6e612e Revert "registry: Register Multibuffer extension protocol names."
This reverts commit 3877faf7d9.

Moving all the names into dix/registry.c
2007-11-20 18:15:37 -05:00
Eamon Walsh
40a0da044e registry: Remove registry code from Fontcache extension.
Moving all the names into dix/registry.c
2007-11-20 18:13:43 -05:00
Eamon Walsh
46412baf60 registry: Remove registry code from EVI extension.
Moving all the names into dix/registry.c
2007-11-20 18:11:06 -05:00
Eamon Walsh
460c43032f registry: Remove registry code from DPMS extension.
Moving all the names into dix/registry.c
2007-11-20 18:10:14 -05:00
Eamon Walsh
76e89d45b4 registry: Remove registry code from TOG-CUP extension.
Moving all the names into dix/registry.c
2007-11-20 18:06:40 -05:00
Eamon Walsh
ce93c5772d registry: Remove registry code from BigRequests extension.
Moving all the names into dix/registry.c
2007-11-20 18:03:57 -05:00
Eamon Walsh
0756d12712 Revert "registry: Register APPGROUP extension protocol names."
This reverts commit b504678ba5.

Moving all the names into dix/registry.c
2007-11-20 17:59:40 -05:00
Eamon Walsh
546d46224e Revert "registry: Register XINERAMA extension protocol names."
This reverts commit b9f5ab98c8.

Moving all the names into dix/registry.c
2007-11-20 17:37:48 -05:00
Eamon Walsh
709c1a70c8 Remove some duplicate include statements. 2007-11-20 15:18:02 -05:00
Eamon Walsh
60be452c2e xace: restore the old SaveScreens function and introduce new API, since the
old version is called from drivers...
2007-11-19 16:59:34 -05:00
Eamon Walsh
1603130236 Merge branch 'master' into XACE-SELINUX
Conflicts:

	Xext/xace.c
	Xext/xace.h
2007-11-14 13:35:50 -05:00
Eamon Walsh
f207e69d62 xselinux: adjust receive hook to use new synthetic_event class. 2007-11-14 12:23:29 -05:00
Eamon Walsh
45f884d79c xselinux: add new synthetic_event security class, and fix registry code. 2007-11-09 15:00:15 -05:00
Eamon Walsh
b092856bab registry: Register XC-SECURITY extension protocol names. 2007-11-09 14:45:02 -05:00
Peter Hutterer
c0a0580578 Xext: add simple macro to easily check a generic event's type. 2007-11-09 23:07:10 +10:30
Eamon Walsh
9d03cad144 Remove SecurityPolicy file and associated references in the manpages. 2007-11-08 16:46:31 -05:00
Eamon Walsh
8b5d21cc1d Rework of the XC-SECURITY extension. The gen-auth protocol has not changed,
but the XC-QUERY-SECURITY-1 authorization method and the SecurityPolicy
configuration file have been removed.  The semantics of the trusted vs.
untrusted split have been changed.  This will be documented in a future
commit.
2007-11-08 16:32:42 -05:00
Peter Hutterer
0b729051c0 Merge branch 'master' into mpx
Conflicts:

	Xi/extinit.c
	Xi/grabdev.c
	Xi/setmode.c
	Xi/ungrdev.c
	dix/devices.c
	dix/events.c
	dix/getevents.c
	include/dix.h
	mi/midispcur.c
	mi/misprite.c
	xkb/xkbActions.c
	xkb/xkbEvents.c
	xkb/xkbPrKeyEv.c
2007-11-07 15:37:23 +10:30
Eamon Walsh
d7c5e8bfc1 Modified performance patches from Arjan van de Ven <arjan@infradead.org>
Subject: [PATCH] fix some performance gaps in Xace

The XaceHook function is used in several hotpaths.
The problem with it (performance wise) is twofold:
 * The XaceHook function has a big switch() statement for the hook number in it
 * The XaceHook function uses varargs to reassemble the final dispatch arguments again

Both are expensive operations... for something that is known at compile time

This patch turns the hotpath XaceHook call into a direct call to avoid
the switch and varargs; this gives me over 10% performance gain
on the x11perf benchmark.
2007-11-06 16:26:09 -05:00
Eamon Walsh
a52c9b2a59 Merge branch 'master' into XACE-SELINUX
Conflicts:

	dix/dispatch.c
	dix/property.c
	hw/xfree86/common/xf86VidMode.c
	include/xkbsrv.h
	render/glyph.c
	xkb/xkbActions.c
2007-11-05 19:08:36 -05:00
Eamon Walsh
c7e18beb3c xselinux: Register SELinux extension protocol names. 2007-11-05 15:02:05 -05:00
Daniel Stone
934281126f Xext: Remove usage of alloca
Replace with heap allocations.
2007-11-05 14:34:46 +00:00
Aaron Plattner
f2e310132f Add CreatePixmap allocation hints.
These hints allow an acceleration architecture to optimize allocation of certain
types of pixmaps, such as pixmaps that will serve as backing pixmaps for
redirected windows.
2007-11-04 16:11:28 -08:00
Eamon Walsh
3b7af72fe3 xselinux: Add a SetDeviceContext request and stubs for more requests. 2007-10-26 20:32:47 -04:00
Eamon Walsh
7d14ca59c5 xselinux: Don't include the client in the receive hook audit messages. 2007-10-25 19:00:50 -04:00
Eamon Walsh
40de9fcf18 xselinux: Label the default device directly with the process context. 2007-10-25 12:35:01 -04:00
Eamon Walsh
4b05f19cb9 xselinux: Introduce a type transition when labeling events. 2007-10-24 19:59:58 -04:00
Eamon Walsh
0d2ef187e7 xselinux: Add audit message fields for selection and event names. 2007-10-24 18:23:31 -04:00
Eamon Walsh
46521f5298 xselinux: Add basic support for selection access control and redirection.
Probably not fully baked yet.  It's difficult to test since so few apps
actually follow the ICCCM with respect to cut & paste.
2007-10-23 20:58:48 -04:00
Eamon Walsh
825f09dffd xace: Still more changes to selection code. Removed the SelectionPtr from
the hook - the hook only needs the Atom to control access to the selection
object.  Upgraded the SelectionCallback to take a client argument and
additional type codes so that it can be used for redirection.
2007-10-23 17:12:57 -04:00
Eamon Walsh
660557593e xselinux: Remove synthetic bit when looking up event type. 2007-10-23 14:46:37 -04:00
Eamon Walsh
d7db549db4 xselinux: Unregister callbacks on server reset. 2007-10-23 14:08:54 -04:00
Eamon Walsh
ce7f6fe126 xselinux: properly update sizes when dynamic arrays are resized... 2007-10-19 19:40:04 -04:00
Eamon Walsh
55a96aa6b0 xselinux: add basic event labeling. 2007-10-18 14:11:11 -04:00
Eamon Walsh
e974bc1233 xselinux: add hooks for send and receive access. 2007-10-18 12:33:39 -04:00
Eamon Walsh
aa340b2c7c xselinux: add hook for device acceses. 2007-10-17 19:27:16 -04:00
Eamon Walsh
503f918f55 xselinux: Move functions around; add some more comments. 2007-10-17 19:14:15 -04:00
Eamon Walsh
c3f7b86255 Merge branch 'master' into XACE-SELINUX
Conflicts:

	os/access.c
2007-10-17 15:00:54 -04:00
Eamon Walsh
af4dde0ac1 xselinux: Remove config file, this has been moved to the policy. 2007-10-17 14:13:02 -04:00
Eamon Walsh
baabae623b xselinux: Started reworking extension using new XACE hooks. 2007-10-17 13:54:56 -04:00
Eamon Walsh
db66e66dbf xace: Add an access_mode field to the extension structure.
This allows the same callback to be used for both extension hooks.
2007-10-17 13:51:11 -04:00
Eamon Walsh
853ea337bd registry: Register XvMC extension protocol names. 2007-10-15 22:13:02 -04:00
Eamon Walsh
58c3240fcb registry: Register MIT-SCREEN-SAVER extension protocol names. 2007-10-15 22:09:47 -04:00
Eamon Walsh
4e274e90e1 registry: Register SHAPE extension protocol names. 2007-10-15 22:04:20 -04:00
Eamon Walsh
9f597f6c87 registry: Register SYNC extension protocol names. 2007-10-15 22:01:20 -04:00
Eamon Walsh
b504678ba5 registry: Register APPGROUP extension protocol names. 2007-10-15 21:55:09 -04:00
Eamon Walsh
6ec35a8cf5 registry: Register BigRequests extension protocol names. 2007-10-15 21:46:56 -04:00
Eamon Walsh
1254cc399c registry: Register Fontcache extension protocol names. 2007-10-15 21:43:06 -04:00
Eamon Walsh
e987648cf2 registry: Register EVI extension protocol names. 2007-10-15 21:38:56 -04:00
Eamon Walsh
f6226d3bfe registry: Register TOG-CUP extension protocol names. 2007-10-15 21:35:12 -04:00
Eamon Walsh
7e182a5d89 registry: Register MIT-MISC extension protocol names. 2007-10-15 21:13:39 -04:00
Eamon Walsh
32f6171862 registry: Register XF86Bigfont extension protocol names. 2007-10-15 21:10:14 -04:00
Eamon Walsh
12766c5b5f registry: Register Xv extension protocol names. 2007-10-15 21:00:46 -04:00
Eamon Walsh
35ae03871a registry: Register XC-MISC extension protocol names. 2007-10-15 20:50:26 -04:00
Eamon Walsh
32fe282d5b registry: Register XTest extension protocol names. 2007-10-15 20:45:18 -04:00
Eamon Walsh
3877faf7d9 registry: Register Multibuffer extension protocol names. 2007-10-15 20:35:13 -04:00
Eamon Walsh
16764a2d29 registry: Register DPMS extension protocol names. 2007-10-15 20:29:23 -04:00
Eamon Walsh
f077578e42 registry: Register XPrint extension protocol names. 2007-10-15 19:43:02 -04:00
Eamon Walsh
5c8b1a9172 registry: Register Resource extension protocol names. 2007-10-15 19:35:04 -04:00
Eamon Walsh
48891d5696 registry: Register EVIE extension protocol names. 2007-10-15 19:32:01 -04:00
Eamon Walsh
2c9646ad4e registry: Register SHM extension protocol names. 2007-10-15 19:18:03 -04:00
Eamon Walsh
b9f5ab98c8 registry: Register XINERAMA extension protocol names. 2007-10-15 16:18:37 -04:00
Eamon Walsh
6adeba1730 dix: Add a new "registry" mechanism for registering string names of things.
Supports protocol requests, events, and errors, and resource names.
Modify XRES extension to use it.
2007-10-11 14:18:59 -04:00
Eamon Walsh
473bc6ec4c xace: remove the special-cased "ignore" functionality from the property code.
There will be no more faking of Success to hide things.  XACE does not
provide polyinstantiation.
2007-10-10 19:43:12 -04:00
Alan Coopersmith
fdef7be5c8 Sun bug 6589829: include zoneid of shm segment in access policy for MIT-SHM
<http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6589829>
<http://www.opensolaris.org/os/community/arc/caselog/2007/500/>
2007-10-09 18:44:51 -07:00
Peter Hutterer
ab88cb8d2e Xext: add missing geint.h to Makefile.am (un-breaks make dist) 2007-10-03 18:08:33 +09:30
Eamon Walsh
b77d272d75 xace: add hooks + new access codes: XTEST extension 2007-10-02 13:21:53 -04:00
Eamon Walsh
50551ec693 xace: remove obsoleted DRAWABLE_ACCESS hook. 2007-09-28 15:04:33 -04:00
Eamon Walsh
8b54865720 xace: add hooks + new access codes: XKB extension.
Removes "LookupKeyboardDevice" and "LookupPointerDevice" in favor of
inputInfo.keyboard and inputInfo.pointer, respectively; all use cases
are non-XI compliant anyway.
2007-09-28 13:34:18 -04:00
Eamon Walsh
5c03d13181 xace: add new hooks + access controls: XInput extension.
Introduces new dix API to lookup a device, dixLookupDevice(), which
replaces LookupDeviceIntRec and LookupDevice.
2007-09-28 08:02:00 -04:00
Eamon Walsh
b61461425e xace: add hooks + new access codes: XV extension.
May need to revisit this extension in the future, depending on observed use.
2007-09-25 09:56:00 -04:00
Eamon Walsh
9bd04055a2 xace: change prototype of VALIDATE_DRAWABLE_AND_GC macro to allow access
mode to be passed to dixLookupDrawable.
2007-09-25 09:33:51 -04:00
Eamon Walsh
a247886b08 xace: add hooks + new access codes: XF86-Bigfont extension 2007-09-20 13:06:38 -04:00
Eamon Walsh
f6532a81ee xace: add hooks + new access codes: APPGROUP extension 2007-09-20 12:17:17 -04:00
Eamon Walsh
661b1328cf xace: add hooks + new access codes: SYNC extension
May need to revisit this extension in the future, depending on observed use.
2007-09-20 09:14:09 -04:00
Eamon Walsh
90bacdef72 xace: add hooks + new access codes: MIT-SHM extension 2007-09-20 06:53:51 -04:00
Eamon Walsh
97c150b61b Merge branch 'master' into XACE-SELINUX
Conflicts:

	afb/afbpntwin.c
	afb/afbscrinit.c
	afb/afbwindow.c
	cfb/cfb.h
	cfb/cfballpriv.c
	cfb/cfbscrinit.c
	cfb/cfbwindow.c
	configure.ac
	fb/wfbrename.h
	hw/xfree86/xf4bpp/ppcIO.c
	hw/xfree86/xf4bpp/ppcPntWin.c
	hw/xfree86/xf4bpp/ppcWindow.c
	hw/xfree86/xf8_32bpp/cfbscrinit.c
	mfb/mfb.h
	mfb/mfbpntwin.c
	mfb/mfbscrinit.c
	mfb/mfbwindow.c
	mi/miexpose.c

Note: conflicts caused by devPrivates rework vs. paintwindow changes.
2007-09-19 07:25:55 -04:00
Eric Anholt
e4d11e58ce Remove the PaintWindow optimization.
This was an attempt to avoid scratch gc creation and validation for paintwin
because that was expensive.  This is not the case in current servers, and the
danger of failure to implement it correctly (as seen in all previous
implementations) is high enough to justify removing it.  No performance
difference detected with x11perf -create -move -resize -circulate on Xvfb.
Leave the screen hooks for PaintWindow* in for now to avoid ABI change.
2007-09-13 00:08:53 +00:00
Eamon Walsh
0003ccfcdf xace: add new fields to resource access hook to allow parent resource objects
to be passed in at create time.  Also added a missing devPrivates initializer.
2007-09-05 11:18:36 -04:00
Matthieu Herrb
4062db4020 typo in comment 2007-09-04 22:39:14 +02:00
Eamon Walsh
53f346b158 xace: add hooks + new access codes: SHAPE extension 2007-08-30 13:20:04 -04:00
Eamon Walsh
766c693ef3 xace: add hooks + new access codes: MIT-SCREEN-SAVER extension 2007-08-30 13:06:28 -04:00
Eamon Walsh
cda92bbf12 xace: add hooks + new access codes: XFixes extension.
Required a new name argument to the selection access hook to handle
XFixesSelectSelectionInput.
2007-08-30 11:48:45 -04:00
Eamon Walsh
4795df6245 xace: add hooks + new access codes: TOG-CUP extension. 2007-08-29 14:40:10 -04:00
Eamon Walsh
e39694789e xace: drop map-window checking hook, add new hooks for controlling the
delivery of events to windows and clients.

This is tentative.  It's likely that an additional last-resort hook will
be necessary for code that calls TryClientEvents or WriteEventsToClient
directly.  It's also possible that new xace machinery will be necessary
to classify events and pull useful resource ID's out of them.

The failure case also needs some thinking through.  Should event delivery
"succeed" or should it report undeliverable?

Finally, XKB appears to call WriteToClient to pass events.  Sigh.
2007-08-29 14:16:46 -04:00
Eamon Walsh
41355a53c2 xace: add hooks + new access codes: core protocol input requests 2007-08-28 15:10:20 -04:00
Eamon Walsh
4017d31902 devPrivates rework: since API is already broken, switch everything
over to new system.

Need to update documentation and address some remaining vestiges of
old system such as CursorRec structure, fb "offman" structure, and
FontRec privates.
2007-08-28 09:28:25 -04:00
Eamon Walsh
8554707326 Merge branch 'master' into XACE-SELINUX
Conflicts:

	include/miscstruct.h
	mi/mibstore.c
	mi/midispcur.c
	os/Makefile.am
2007-08-28 07:25:21 -04:00
Adam Jackson
ae7f71a8b3 Implement core protocol backing store exclusively in terms of Composite.
Composite's automatic redirection is a more general mechanism than the
ad-hoc BS machinery, so it's much prettier to implement the one in terms
of the other.  Composite now wraps ChangeWindowAttributes and activates
automatic redirection for windows with backing store requested.  The old
backing store infrastructure is completely gutted: ABI-visible structures
retain the function pointers, but they never get called, and all the
open-coded conditionals throughout the DIX layer to implement BS are gone.

Note that this is still not a strictly complete implementation of backing
store, since Composite will throw the bits away on unmap and therefore
WhenMapped and Always hints are equivalent.
2007-08-25 15:08:20 -04:00
Michel Dänzer
6085522d91 Export fbShmPutImage to modules.
To be used by EXA.
2007-08-24 14:02:35 +02:00
Eamon Walsh
b2b7817497 devPrivates rework: use camelcase standard for name of key type. 2007-08-16 15:33:58 -04:00
Jeremy C. Reed
1d4bea6106 Add some more support for DragonFly. From Joerg Sonnenberger
and pkgsrc.
2007-08-16 11:20:12 -05:00
Eamon Walsh
5bee8db003 xace: drop background-none checking hook, add new hook for controlling
access to other clients.
2007-08-16 10:44:51 -04:00
Eamon Walsh
b82557c9fb xace: add hooks + new access codes: core protocol screensaver requests 2007-08-16 10:36:05 -04:00
Eamon Walsh
3c9553ac2c xace: rename hostlist security hook to "server" as this hook will be used
for other types of server access besides just the host list.
2007-08-15 14:14:25 -04:00
Fredrik Höglund
0f9e89b4e3 Fix the value comparisons in the IDLETIME wakeup handler.
LessThan/GreaterThan comparisons were used in the wakeup handler,
and LessOrEqual/GreaterOrEqual in the block handler.

Change it to use LessOrEqual/GreaterOrEqual in both functions,
since this is what XSyncNegativeComparison and
XSyncPositiveComparison imply.
2007-08-14 22:47:49 +02:00
Eamon Walsh
9a183d7ba5 dix: remove caching of drawables and graphics contexts. The security checks
simply bypass the cached values so they are unused.
2007-08-14 11:39:26 -04:00
Peter Hutterer
f367285fd5 Merge branch 'master' into mpx
Conflicts:

	Xi/exevents.c
	dix/devices.c
	dix/getevents.c
	include/dix.h
	mi/mieq.c
2007-08-12 15:31:10 +09:30
Eamon Walsh
102df4f9ba xace: drop site-policy and declare-extension-security hooks, add 2 new hooks
for controlling access to screens and screen savers.
2007-08-06 09:16:30 -04:00
Eamon Walsh
375864cb74 security: drop support for XC-QUERY-SECURITY authorization method. 2007-08-03 13:23:34 -04:00
Eamon Walsh
d445d2f22b security: drop the "declare extension security" dix call. Use the
SecurityPolicy configuration file instead.
2007-08-03 10:56:18 -04:00
Eamon Walsh
e34fcd2bf4 Merge branch 'master' into XACE-SELINUX
Conflicts:

	dix/devices.c
	dix/property.c
	include/dix.h
2007-08-02 14:27:03 -04:00
Peter Hutterer
583e988b9f Install geext.h, otherwise drivers won't build. 2007-07-10 10:10:04 +09:30
Peter Hutterer
5ccc09b182 Use the same struct for generic event masks throughout the code.
Renaming those structs too.

Previously grabs were using a different struct than windows, which was
reasonably stupid.
2007-07-06 15:43:08 +09:30
Peter Hutterer
c1a16bdcfe Add 'evfill' field to GEExtensions.
We need this to allow extensions to fill in extra data for an event before it
is sent to the client. This is probably to be used like
FillUpEventsFromWindow().
2007-07-01 09:14:18 +09:30
Adam Jackson
4d76075dbb Death to RCS tags. 2007-06-29 14:06:52 -04:00
Adam Jackson
f7f3fe7fe7 Remove the remnants of OS/2 support.
This has never worked in any modular server release, and as far as I know
was never tested in 6.7 through 6.9.
2007-06-28 18:59:05 -04:00
Eamon Walsh
32c0dcc8c0 xselinux: adjust the config file format to that expected by libselinux.
This file will eventually be moved out of the X source tree.
2007-06-21 15:39:19 -04:00
Eamon Walsh
2030e9e539 xselinux: use new libselinux support for context labeling.
Remove all the config file parsing code and use the new lookup interface
instead.
2007-06-21 15:37:18 -04:00
Peter Hutterer
1f97a76476 Merge branch 'master' into mpx
Conflicts:

	dix/devices.c
	hw/xfree86/common/xf86Xinput.c
	hw/xfree86/loader/xf86sym.c
	mi/mieq.c
2007-06-19 17:20:52 +09:30
Eamon Walsh
e2a720c9a1 Merge branch 'master' into XACE-SELINUX
Conflicts:

	dix/dixutils.c
2007-06-11 15:29:11 -04:00
Eamon Walsh
878cac71aa xselinux: use new libselinux support for private Flask definitions.
Removes indirect dependency on kernel headers.
2007-06-11 14:19:37 -04:00
Eugene Konev
857ddbb660 Allow configurable serverconfigdir for security policy location
Allow the location of the SERVERCONFIGdir variable to be defined at
compile-time. This allows us to specify where the security policy will be
located (Debian uses this to put it in /etc). The default is to the
previous location.
2007-05-28 21:53:02 -04:00
Eamon Walsh
2a4aa63a23 Merge branch 'master' into XACE-SELINUX
Conflicts:

	include/miscstruct.h
2007-05-22 14:50:26 -04:00
Fredrik Höglund
7e2c935920 Add a new IDLETIME system sync counter.
This counter exposes the time in milliseconds since the last
input event. Clients such as screen savers and power managers
can set an alarm on this counter to find out when the idle time
reaches a certain value, without having to poll the server.
2007-05-18 20:15:31 +02:00
Peter Hutterer
333bab4b23 Clean up, correct some comments.
Send event type down with the RawEvents.
2007-05-17 17:59:02 +09:30
Peter Hutterer
5c680e9493 Remove double-grab option. We only want one grab per device. 2007-05-14 12:34:53 +09:30
Peter Hutterer
c03d9a7217 Cleaning up a bit.
Register correct event in EventSwapVector.
Fix up event swap for GE events, register XI's swap function at GE.
2007-05-02 18:16:40 +09:30
Peter Hutterer
5e43910929 Add GenericEvent extension to Xext.
This adds (unconditional) support for the GE extension. Anything from now on
that sends events in MPX will have to use the GE extension. No GE, no MPX
events. GE is not actually used yet from anywhere with this commit.

You will need to update x11proto, xextproto, libX11, libXext and xcb to the
matching xge branches. Things will _NOT_ work without the updated protocol
headers and libraries.
2007-04-30 12:57:42 +09:30
Paulo Ricardo Zanoni
82f97e1c0c Enable event delivery for multiple heads.
Requires moving the spriteTrace into the DeviceIntRec and adjusting a few
functions to take in device argument, most notably XYToWindow().

Cursor rendering on the second screen is busted.
2007-04-26 15:58:50 +09:30
Eamon Walsh
9cee4ec5e6 xace: change the semantics of the return value of XACE hooks to allow
arbitrary X status codes instead of just TRUE/FALSE.

The dix layer in most cases still does not propagate the return value of
XACE hooks back to the client, however.  There is more error propagation
work to do.
2007-04-17 16:01:56 -04:00
Eamon Walsh
47bd311e3d security: remove debugging code. 2007-04-17 13:46:55 -04:00
Eamon Walsh
1f06d32ef5 Merge branch 'master' into XACE-SELINUX
Conflicts:

	dix/privates.c
2007-04-17 12:10:22 -04:00
Peter Hutterer
d4dad6f84f Merge branch 'master' into mpx
Conflicts:

	configure.ac
	dix/events.c
	hw/xfree86/common/xf86Xinput.c
2007-04-12 11:11:03 +09:30
Stefan Huehner
1f6741db19 Bug #10560: Code-Cleanup: function declarations () -> (void)
X.Org Bugzilla #10560: <https://bugs.freedesktop.org/show_bug.cgi?id=10560>
Patch #9511 <https://bugs.freedesktop.org/attachment.cgi?id=9511>
2007-04-09 14:33:15 -07:00
Eamon Walsh
cf962a849d Merge branch 'master' into XACE-SELINUX
Conflicts:

	configure.ac
2007-04-05 14:41:39 -04:00
Eamon Walsh
1cb84768f3 security: rewrite to use new devPrivates support. 2007-04-03 15:31:16 -04:00
Matthieu Herrb
645d87cf8e CVE-2007-1003: XC-MISC Extension ProcXCMiscGetXIDList() Memory Corruption 2007-04-03 15:47:18 +02:00
Peter Hutterer
e8777a91f3 Merge branch 'master' into mpx
Conflicts:

	Xi/closedev.c
	Xi/exevents.c
	Xi/extinit.c
	Xi/listdev.c
	dix/window.c
	hw/xfree86/common/xf86Xinput.c
	include/extinit.h
	mi/mipointer.c
2007-04-02 15:36:26 +09:30
Eamon Walsh
327bc332a6 xace: minor comment fixes. 2007-03-28 13:00:03 -04:00
Eamon Walsh
0331c6a8fc Merge branch 'master' into XACE-SELINUX 2007-03-26 10:28:05 -04:00
Adam Jackson
04b87d6dfa Static and dead code cleaup for Xext/ 2007-03-25 17:57:22 -04:00
Eamon Walsh
84a066cc88 xace: pass serverClient as default argument to dixChangeWindowProperty
instead of NullClient.
2007-03-23 10:33:53 -04:00
Eamon Walsh
e1cc68add0 xace: drop the name argument from the property callback. 2007-03-22 17:33:16 -04:00
Eamon Walsh
1b766ffc06 dix: reorganize property code to better support xace hook; requires new API for
changing a property, dixChangeWindowProperty, taking an additional client argument.
2007-03-22 15:55:35 -04:00
Eamon Walsh
1b58304ac8 xace: add new argument to property hook for property structure itself. 2007-03-22 14:07:01 -04:00
Eamon Walsh
a3296d111d xace: add access_mode argument to selection hook. 2007-03-21 17:01:26 -04:00
Eamon Walsh
4fa482b4be xace: bump major version since the hooks have changed. 2007-03-21 14:49:56 -04:00
Eamon Walsh
9c144f8ac5 xace: add XACE_SELECTION_ACCESS hook for selection redirection/access. 2007-03-21 14:39:00 -04:00
Adam Jackson
021fc5cb2c Static markup and dead code cull over xkb/.
The former <X11/extensions/XKBsrv.h> has been pulled into the server now as
include/xkbsrv.h, and the world updated to look for it in the new place,
since it made no sense to define server API in an extension header.  Any
further work along this line will need to do similar things with XKBgeom.h
and friends.
2007-03-20 18:37:02 -04:00
Eamon Walsh
2945deba1d xace: drop XACE_WINDOW_INIT hook, it has been superseded by ResourceStateCallback. 2007-03-19 17:09:10 -04:00
Eamon Walsh
78c962da76 xselinux: use the new ResourceStateCallback instead of the XACE_WINDOW_INIT hook. 2007-03-19 17:04:51 -04:00
Eamon Walsh
6a89106e9c xselinux + security: remove confusing CALLBACK macro. 2007-03-19 16:51:29 -04:00
Peter Hutterer
015d728bcd Merge branch 'master' into mpx
Conflicts:

	dix/devices.c
	dix/events.c
	mi/misprite.c
2007-03-19 09:42:56 +10:30
Eamon Walsh
18339375cd xselinux: remove context validation function for now. 2007-03-08 12:14:06 -05:00
Peter Hutterer
ceca5670fe dix: Each device needs to differ between a core grab and an XI grab,
otherwise a Xi grab may overwrite or release a core grab.
        Replace grab and associates with coreGrab and deviceGrab structures,
        adjust rest of dix/Xi/etc to compile.

xfree86: Don't check for core devices, we'll have the virtual ones anyway.
         If we check, the first mouse device is duplicated and sends
         double events.
2007-03-08 17:17:23 +10:30
Eamon Walsh
bb111291d8 Merge branch 'master' into XACE-SELINUX 2007-03-07 09:03:46 -05:00
Eamon Walsh
a7cd53deb9 remove PIXPRIV checks as this flag is always set. 2007-03-06 17:05:03 -05:00
Eamon Walsh
23fc429aad Merge branch 'master' into XACE-SELINUX 2007-03-05 12:18:54 -05:00
Peter Hutterer
1f0075786f Merge branch 'master' into mpx
Conflicts:

	configure.ac
	dix/getevents.c
	hw/xfree86/ramdac/xf86Cursor.c
	mi/mipointer.c
	xkb/xkbUtils.c
2007-03-05 12:37:17 +10:30
Peter Hutterer
57aa5e908d dix, Xext, Xtrap, Xi: replace inputInfo.pointer with PickPointer where
possible. More replacements to come.
2007-03-02 17:14:37 +10:30
Peter Hutterer
43bd35fcf8 dix: Remove InitSprite, work can be done by InitializeSprite.
Free sprite struct if a spriteOwner is paired.

xfree86: Use PairDevices instead of passing booleans around when creating a
         sprite.

Xext:    Switch back to using LookupPointer/KeyboardDevice instead of
         inputInfo.xyz.
2007-03-01 17:19:37 +10:30
Peter Hutterer
68c64ad7b1 Xext: Update device's lastx/lasty when sending a motion event with XTest. 2007-03-01 09:59:37 +10:30
Peter Hutterer
2a35d44b6d Update device valuators on XTest motion event, otherwise the cursor jumps
between coordinates stored in device and coordinates sent by the event.
2007-02-28 15:43:06 +10:30
Eamon Walsh
c2f3f705f1 Bug #6988: Change behavior of Security extension per user feature request. 2007-02-15 14:38:24 -05:00
Eamon Walsh
04632835b7 Merge branch 'master' into my-XACE-SELINUX 2007-02-15 09:27:05 -05:00
Peter Hutterer
15a81b6325 Merge branch 'master' 2007-01-28 17:18:57 +10:30
Alan Coopersmith
b32a40817f Correct variable descriptions in comment for SecurityCheckResourceIDAccess 2007-01-24 16:29:49 -08:00
Eamon Walsh
88f89b9ac1 Policy updates: use x prefix in property and ext types. 2007-01-19 19:15:49 -05:00
Eamon Walsh
2fb8b7f819 Split ObjectSIDByLabel into two functions since property labeling now
involves an additional compute_create lookup.
2007-01-19 19:14:51 -05:00
Eamon Walsh
700fccf863 Remove the root window context line from the configuration file.
This context will be derived through a type_transition rule instead.
2007-01-19 14:56:38 -05:00
Eamon Walsh
3a9791b456 Policy updates. 2007-01-19 14:53:09 -05:00
Eamon Walsh
4b1c9ac3d1 Policy updates. 2006-12-22 13:04:50 -05:00
Eamon Walsh
cd71e86183 Naming change: Security*Access -> Dix*Access.
Clarify some error message strings.
2006-12-20 13:45:24 -05:00
Eamon Walsh
a81dbaae05 Merge branch 'master' into my-XACE-SELINUX 2006-12-19 16:11:19 -05:00
Peter Hutterer
2d0a63126b Merge branch 'master' of git://anongit.freedesktop.org/git/xorg/xserver 2006-12-19 10:31:40 +10:30
Eamon Walsh
ab1d5b0c31 Convert callers of LookupClient() to dixLookupClient(). 2006-12-15 17:26:58 -05:00
Eamon Walsh
10aabb729d Convert callers of LookupDrawable() to dixLookupDrawable(). 2006-12-15 16:36:29 -05:00
Eamon Walsh
25d5e0a629 Convert callers of SecurityLookupWindow() to dixLookupWindow(). 2006-12-15 15:50:46 -05:00
Eamon Walsh
04c721854f Convert callers of LookupWindow() to dixLookupWindow(). 2006-12-15 14:19:54 -05:00
Eamon Walsh
00f0705b3b Remove instances of macros SECURITY_VERIFY_GEOMETRABLE and SECURITY_VERIFY_GC. 2006-12-14 19:15:21 -05:00
Eamon Walsh
5e334f06a1 Remove instances of macros VERIFY_GEOMETRABLE and VERIFY_GC. 2006-12-14 18:27:09 -05:00
Eamon Walsh
51b69ff499 Remove instances of macro SECURITY_VERIFY_DRAWABLE. 2006-12-14 17:53:43 -05:00
Eamon Walsh
0cf75e7432 Remove instances of macros LOOKUP_DRAWABLE and VERIFY_DRAWABLE. 2006-12-14 17:45:11 -05:00
Eamon Walsh
6c46645cfc Naming change: Security*Access -> Dix*Access 2006-12-14 14:45:42 -05:00
Eamon Walsh
fb6d676de5 Add xserver object class to list of object classes. 2006-12-12 16:17:51 -05:00
Eamon Walsh
7b90944258 Change MLS levels in config file contexts to more sane defaults. 2006-12-12 15:59:38 -05:00
Eamon Walsh
568c09481e Split AssignClientState() into two routines, new routine is server-specific. 2006-12-12 15:59:08 -05:00
Eamon Walsh
e124806994 Remove trailing whitespace (whitespace police). 2006-12-12 13:35:22 -05:00
Eamon Walsh
ca77c12107 Naming change: Security*Operation -> Xace*Operation 2006-12-12 13:27:03 -05:00
Eamon Walsh
a60da1db7c Add required root window context to config file. 2006-12-12 13:27:03 -05:00
Eamon Walsh
354c80da66 Improve error handling, messages during initialization. 2006-12-12 13:27:03 -05:00
Eamon Walsh
3714d91499 Experimental window property holding security context. 2006-12-12 13:27:03 -05:00
Eamon Walsh
7f16c38ae2 Add SELinux extension configure-time support. 2006-12-12 13:27:03 -05:00
Eamon Walsh
83aad2be8a Add SELinux extension source files. 2006-12-12 13:27:02 -05:00
Peter Hutterer
ae3c24da34 dix: Moving SpriteRec into DeviceIntRec
removing global sprite structure
	beginning to remove MPX ifdefs

xnest:  Fix to make xnest compile again
2006-12-11 18:09:59 +10:30
Peter Hutterer
3c8f166022 Merge branch 'master' of git://anongit.freedesktop.org/git/xorg/xserver into mpx
Conflicts:

	dix/events.c
2006-12-05 18:28:33 +10:30
Eamon Walsh
ac90ce58ba Naming change: Security*Operation -> Xace*Operation 2006-12-01 21:15:41 -05:00
Eamon Walsh
f44f14fe56 Define calls away when not building XACE, allowing ifdef's to be removed. 2006-12-01 21:15:41 -05:00
Peter Hutterer
1c7568b8a1 mi: closing memory leak, miPointer is freed in miPointerCloseScreen
bugfix: uninitialized pPointer in miPointerGetPosition ifndef MPX
	adding DeviceIntPtr parameter to ScreenRec's cursor functions.
	cleanup of miPointer code to use same scheme in each function

dix:	MPHasCursor() function determines checking whether to invoke
	cursor rendering.

animcur: adding DeviceIntPtr parameter to cursor functions but animcur relies
	 on the core pointer right now.

xfixes: adding DeviceIntPtr parameter to cursor functions but xfixes relies on
	the core pointer right now.

rac:	adding DeviceIntPtr parameter to cursor functions but RAC relies on
	the core pointer right now.

ramdac:	adding DeviceIntPtr parameter to cursor functions but ramdac relies on
	the core pointer right now.
2006-11-23 17:15:14 +10:30
Peter Hutterer
8c16f21d5d dix GetSpriteWindow() adjusted for MPX
added device dependency for MPX to DoEnterLeaveEvents,
	EnterLeaveEvents, EnterNotifies, LeaveNotifies and
	FixUpEventFromWindow.
2006-11-22 17:06:47 +10:30
Peter Hutterer
9db851c22d dix: moved sprite from static to be pointer of type SpritePtr
added SpriteRecs for MPX devices
	changed sprite dependency and added MPX functionality to parts
	of events.c (ConfineToShape, PostNewCursor, XineramaCheckMotion,
	CheckMotion, XineramaChangeToCursor, ChangeToCursor, CheckPhysLimits,
	PointerConfinedToScreen)
	added DeviceIntRec param to GetSpritePosition(). This required some
	minor changes in ddx, xtest, xkb and xfixes.

mi:	changed miPointer to pointer instead of static struct.
2006-11-21 18:15:04 +10:30
Daniel Stone
8ba0c7b62c xace: avoid 'unused variable pScreen'
Initialise pScreen explicitly, as REGION_* macros ignore pScreen.
2006-11-08 15:29:16 +02:00
Eamon Walsh
3d39c02fe6 More work on Bug #8875: revert previous fix and try using client argument
instead of serverClient.  Also don't use totalClientSize as it is not
initialized until after the first call to InitClient.
2006-11-06 21:25:52 -05:00
Eamon Walsh
75fe0670eb whitespace adjust 2006-11-06 15:30:25 -05:00
Eamon Walsh
0539d9cf24 Bug #8875: Security extension causes Xorg to core dump on server reset 2006-11-06 15:29:17 -05:00
Eamon Walsh
49a70c8570 Merge branch 'master' into my-XACE-modular 2006-09-15 15:26:57 -04:00
Eamon Walsh
d1110c5c83 Generalize the handling of configuration files that ship with extensions. 2006-09-08 15:28:48 -04:00
Eamon Walsh
0fba09cdfc Include dix-config.h. 2006-09-08 15:23:06 -04:00
Eamon Walsh
c93877100e Don't need to allocate memory now that devPrivates are being used. 2006-09-08 15:21:57 -04:00
Michel Dänzer
f6ce0839ba Fix #include paths for fontcacheproto headers. 2006-09-06 13:18:02 +02:00
Eamon Walsh
0b81fccd2e Merge branch 'master' into my-XACE-modular
Conflicts:

	configure.ac
2006-09-05 18:03:25 -04:00
Matthew Allum
5ddbf4bcd4 Re-add support for tslib (1.0 release) and Xcalibrate extension. 2006-08-29 22:07:15 +01:00
Eamon Walsh
13c6713c82 Add four new XACE hooks: auditing, key event notification, window init 2006-08-25 18:17:01 -04:00
Eamon Walsh
52ba722e4c Merge branch 'XACE-modular' into my-XACE-modular 2006-08-21 18:49:31 -04:00
Alan Coopersmith
c2535f6792 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into XACE-modular 2006-08-10 10:37:59 -07:00
Daniel Stone
12dbd8a02f remove optional R3 backwards compatibility
Remove the permitOldBugs flag, which enabled backwards compatbility with
broken R2/R3 era clients.
2006-08-07 23:43:40 +03:00
Eamon Walsh
45c229f526 Remove LBX code. 2006-08-03 14:26:06 -04:00
Eamon Walsh
96e45626c4 Rebase Security extension to use devPrivates for storing security state. 2006-08-02 20:29:59 -04:00
Matthew Allum
02daa6bb10 Improve XRes to;
- Better estimate general pixmap memory usage.
 - Account for pixmaps shared between clients.
 - Account for window background and border pixmaps,
   and GC stripple and tile pixmaps.
2006-07-31 17:32:05 +01:00