update to xserver 21.1.12
This commit is contained in:
parent
c5d87f442b
commit
f0fd08c832
59 changed files with 449 additions and 209 deletions
|
@ -1,3 +1,217 @@
|
||||||
|
commit 101caa1b03bc26b718f4618eb24104add5d14a4b
|
||||||
|
Author: Povilas Kanapickas <povilas@radix.lt>
|
||||||
|
Date: Wed Apr 3 23:43:42 2024 +0300
|
||||||
|
|
||||||
|
xserver 21.1.12
|
||||||
|
|
||||||
|
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
|
||||||
|
|
||||||
|
commit 1173156404be826f50f453ca11bda28ccb5a5268
|
||||||
|
Author: Peter Hutterer <peter.hutterer@who-t.net>
|
||||||
|
Date: Tue Jan 30 13:13:35 2024 +1000
|
||||||
|
|
||||||
|
render: fix refcounting of glyphs during ProcRenderAddGlyphs
|
||||||
|
|
||||||
|
Previously, AllocateGlyph would return a new glyph with refcount=0 and a
|
||||||
|
re-used glyph would end up not changing the refcount at all. The
|
||||||
|
resulting glyph_new array would thus have multiple entries pointing to
|
||||||
|
the same non-refcounted glyphs.
|
||||||
|
|
||||||
|
AddGlyph may free a glyph, resulting in a UAF when the same glyph
|
||||||
|
pointer is then later used.
|
||||||
|
|
||||||
|
Fix this by returning a refcount of 1 for a new glyph and always
|
||||||
|
incrementing the refcount for a re-used glyph, followed by dropping that
|
||||||
|
refcount back down again when we're done with it.
|
||||||
|
|
||||||
|
CVE-2024-31083, ZDI-CAN-22880
|
||||||
|
|
||||||
|
This vulnerability was discovered by:
|
||||||
|
Jan-Niklas Sohn working with Trend Micro Zero Day Initiative
|
||||||
|
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1463>
|
||||||
|
(cherry picked from commit bdca6c3d1f5057eeb31609b1280fc93237b00c77)
|
||||||
|
|
||||||
|
commit 0e34d8ebc98a0ba6f9f0a2f8f5045761bccc45d3
|
||||||
|
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
|
||||||
|
Date: Fri Mar 22 19:07:34 2024 -0700
|
||||||
|
|
||||||
|
Xquartz: ProcAppleDRICreatePixmap needs to use unswapped length to send reply
|
||||||
|
|
||||||
|
CVE-2024-31082
|
||||||
|
|
||||||
|
Fixes: 14205ade0 ("XQuartz: appledri: Fix byte swapping in replies")
|
||||||
|
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1463>
|
||||||
|
(cherry picked from commit 6c684d035c06fd41c727f0ef0744517580864cef)
|
||||||
|
|
||||||
|
commit cea92ca78f900bfb4c9a5540dfd631e065b9151b
|
||||||
|
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
|
||||||
|
Date: Fri Mar 22 18:56:27 2024 -0700
|
||||||
|
|
||||||
|
Xi: ProcXIPassiveGrabDevice needs to use unswapped length to send reply
|
||||||
|
|
||||||
|
CVE-2024-31081
|
||||||
|
|
||||||
|
Fixes: d220d6907 ("Xi: add GrabButton and GrabKeysym code.")
|
||||||
|
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1463>
|
||||||
|
(cherry picked from commit 3e77295f888c67fc7645db5d0c00926a29ffecee)
|
||||||
|
|
||||||
|
commit 8a7cd0e3ef194610300c1a38fb5a5423b23dd6a5
|
||||||
|
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
|
||||||
|
Date: Fri Mar 22 18:51:45 2024 -0700
|
||||||
|
|
||||||
|
Xi: ProcXIGetSelectedEvents needs to use unswapped length to send reply
|
||||||
|
|
||||||
|
CVE-2024-31080
|
||||||
|
|
||||||
|
Reported-by: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=69762
|
||||||
|
Fixes: 53e821ab4 ("Xi: add request processing for XIGetSelectedEvents.")
|
||||||
|
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1463>
|
||||||
|
(cherry picked from commit 96798fc1967491c80a4d0c8d9e0a80586cb2152b)
|
||||||
|
|
||||||
|
commit 5ca3a95135d9c89753e2af19da5a2615ea2be1c3
|
||||||
|
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
|
||||||
|
Date: Thu Mar 21 18:08:35 2024 -0700
|
||||||
|
|
||||||
|
Xext: SProcSyncCreateFence needs to swap drawable id too
|
||||||
|
|
||||||
|
Otherwise it causes the server to return BadDrawable giving a
|
||||||
|
byte-swapped resource id instead of the real id the client sent.
|
||||||
|
|
||||||
|
Reported-by: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=69762
|
||||||
|
Fixes: 397dfd9f8 ("Create/Destroy/Trigger/Reset/Query Fence Sync objs")
|
||||||
|
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
||||||
|
---
|
||||||
|
(cherry picked from commit e6573baa7d99a77f44229b9a96a41bbda57e2387)
|
||||||
|
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1438>
|
||||||
|
|
||||||
|
commit 5d7272f05d9ef6bef93419febee3c9dfc63ec055
|
||||||
|
Author: Peter Hutterer <peter.hutterer@who-t.net>
|
||||||
|
Date: Sat Mar 23 10:42:33 2024 -0700
|
||||||
|
|
||||||
|
Allow disabling byte-swapped clients
|
||||||
|
|
||||||
|
The X server swapping code is a huge attack surface, much of this code
|
||||||
|
is untested and prone to security issues. The use-case of byte-swapped
|
||||||
|
clients is very niche, so allow users to disable this if they don't
|
||||||
|
need it, using either a config option or commandline flag.
|
||||||
|
|
||||||
|
For Xorg, this adds the ServerFlag "AllowByteSwappedClients" "off".
|
||||||
|
For all DDX, this adds the commandline options +byteswappedclients and
|
||||||
|
-byteswappedclients to enable or disable, respectively.
|
||||||
|
|
||||||
|
Fixes #1201
|
||||||
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
||||||
|
---
|
||||||
|
(cherry picked from commit 412777664a20dd3561b936c02c96571a756fe9b2)
|
||||||
|
(cherry picked from commit af5cd5acc9012e527ee869f8e98bf6c2e9a02ca4)
|
||||||
|
Backport to server-21.1-branch modified to keep byte-swapping enabled
|
||||||
|
by default but easy to disable by users or admins (or even by distros
|
||||||
|
shipping an xorg.conf.d fragment in their packages).
|
||||||
|
|
||||||
|
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1440>
|
||||||
|
|
||||||
|
commit 8a46a463f631ed52613d67f4088924acbbb6ca20
|
||||||
|
Author: Matthieu Herrb <matthieu@herrb.eu>
|
||||||
|
Date: Sun Dec 5 22:05:08 2021 +0100
|
||||||
|
|
||||||
|
Initialize Mode->name in xf86CVTMode()
|
||||||
|
|
||||||
|
This was overlooked when converting the function to use libxcvt.
|
||||||
|
Bring back name initialization from old code.
|
||||||
|
|
||||||
|
This was causing a segfault in xf86LookupMode() if modes where
|
||||||
|
name is NULL are present the modePool list.
|
||||||
|
|
||||||
|
Signed-off-by: Matthieu Herrb <matthieu@herrb.eu>
|
||||||
|
---
|
||||||
|
(cherry picked from ed11c4d443ad2e82512df64358d38008e0ee7693)
|
||||||
|
|
||||||
|
Reported-by: "Sergiy" <Black_N@ukr.net>
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1319>
|
||||||
|
|
||||||
|
commit f653d9a0af912e577fab5c02b2a4eb380d33e8bb
|
||||||
|
Author: Yusuf Khan <yusisamerican@gmail.com>
|
||||||
|
Date: Sat Feb 17 12:38:10 2024 -0800
|
||||||
|
|
||||||
|
hw/xfree86: fix NULL pointer refrence to mode name
|
||||||
|
|
||||||
|
Potentially, the pointer to the mode name could be unset, this can
|
||||||
|
occur with the xf86-video-nv DDX, in that case there isnt much we can do
|
||||||
|
except check if the next mode is any better.
|
||||||
|
|
||||||
|
Signed-off-by: Yusuf Khan <yusisamerican@gmail.com>
|
||||||
|
---
|
||||||
|
(cherry picked from db3aa4e03b180244e8b4b02272c49f1e0c48b463)
|
||||||
|
|
||||||
|
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1309>
|
||||||
|
|
||||||
|
commit 8b75ec34dfbe435cd3a17e64138e22a37395a6d8
|
||||||
|
Author: Povilas Kanapickas <povilas@radix.lt>
|
||||||
|
Date: Sun Dec 19 18:11:07 2021 +0200
|
||||||
|
|
||||||
|
dix: Fix use after free in input device shutdown
|
||||||
|
|
||||||
|
This fixes access to freed heap memory via dev->master. E.g. when
|
||||||
|
running BarrierNotify.ReceivesNotifyEvents/7 test from
|
||||||
|
xorg-integration-tests:
|
||||||
|
|
||||||
|
==24736==ERROR: AddressSanitizer: heap-use-after-free on address
|
||||||
|
0x619000065020 at pc 0x55c450e2b9cf bp 0x7fffc532fd20 sp 0x7fffc532fd10
|
||||||
|
READ of size 4 at 0x619000065020 thread T0
|
||||||
|
#0 0x55c450e2b9ce in GetMaster ../../../dix/devices.c:2722
|
||||||
|
#1 0x55c450e9d035 in IsFloating ../../../dix/events.c:346
|
||||||
|
#2 0x55c4513209c6 in GetDeviceUse ../../../Xi/xiquerydevice.c:525
|
||||||
|
../../../Xi/xichangehierarchy.c:95
|
||||||
|
#4 0x55c450e3455c in RemoveDevice ../../../dix/devices.c:1204
|
||||||
|
../../../hw/xfree86/common/xf86Xinput.c:1142
|
||||||
|
#6 0x55c450e17b04 in CloseDeviceList ../../../dix/devices.c:1038
|
||||||
|
#7 0x55c450e1de85 in CloseDownDevices ../../../dix/devices.c:1068
|
||||||
|
#8 0x55c450e837ef in dix_main ../../../dix/main.c:302
|
||||||
|
#9 0x55c4517a8d93 in main ../../../dix/stubmain.c:34
|
||||||
|
(/lib/x86_64-linux-gnu/libc.so.6+0x28564)
|
||||||
|
#11 0x55c450d0113d in _start (/usr/lib/xorg/Xorg+0x117713d)
|
||||||
|
|
||||||
|
0x619000065020 is located 160 bytes inside of 912-byte region
|
||||||
|
[0x619000064f80,0x619000065310)
|
||||||
|
freed by thread T0 here:
|
||||||
|
(/usr/lib/x86_64-linux-gnu/libasan.so.5+0x10d7cf)
|
||||||
|
#1 0x55c450e19f1c in CloseDevice ../../../dix/devices.c:1014
|
||||||
|
#2 0x55c450e343a4 in RemoveDevice ../../../dix/devices.c:1186
|
||||||
|
../../../hw/xfree86/common/xf86Xinput.c:1142
|
||||||
|
#4 0x55c450e17b04 in CloseDeviceList ../../../dix/devices.c:1038
|
||||||
|
#5 0x55c450e1de85 in CloseDownDevices ../../../dix/devices.c:1068
|
||||||
|
#6 0x55c450e837ef in dix_main ../../../dix/main.c:302
|
||||||
|
#7 0x55c4517a8d93 in main ../../../dix/stubmain.c:34
|
||||||
|
(/lib/x86_64-linux-gnu/libc.so.6+0x28564)
|
||||||
|
|
||||||
|
previously allocated by thread T0 here:
|
||||||
|
(/usr/lib/x86_64-linux-gnu/libasan.so.5+0x10ddc6)
|
||||||
|
#1 0x55c450e1c57b in AddInputDevice ../../../dix/devices.c:259
|
||||||
|
#2 0x55c450e34840 in AllocDevicePair ../../../dix/devices.c:2755
|
||||||
|
#3 0x55c45130318f in add_master ../../../Xi/xichangehierarchy.c:152
|
||||||
|
../../../Xi/xichangehierarchy.c:465
|
||||||
|
#5 0x55c4512cb9f5 in ProcIDispatch ../../../Xi/extinit.c:390
|
||||||
|
#6 0x55c450e6a92b in Dispatch ../../../dix/dispatch.c:551
|
||||||
|
#7 0x55c450e834b7 in dix_main ../../../dix/main.c:272
|
||||||
|
#8 0x55c4517a8d93 in main ../../../dix/stubmain.c:34
|
||||||
|
(/lib/x86_64-linux-gnu/libc.so.6+0x28564)
|
||||||
|
|
||||||
|
The problem is caused by dev->master being not reset when disabling the
|
||||||
|
device, which then causes dangling pointer when the master device itself
|
||||||
|
is being deleted when exiting whole server.
|
||||||
|
|
||||||
|
Note that RecalculateMasterButtons() requires dev->master to be still
|
||||||
|
valid, so we can reset it only at the end of function.
|
||||||
|
|
||||||
|
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
|
||||||
|
(cherry picked from commit 1801fe0ac3926882d47d7e1ad6c0518a2cdffd41)
|
||||||
|
|
||||||
commit 31407c0199da877b359b2e37bb371804321279b7
|
commit 31407c0199da877b359b2e37bb371804321279b7
|
||||||
Author: José Expósito <jose.exposito89@gmail.com>
|
Author: José Expósito <jose.exposito89@gmail.com>
|
||||||
Date: Tue Jan 16 10:15:15 2024 +0100
|
Date: Tue Jan 16 10:15:15 2024 +0100
|
||||||
|
|
|
@ -47,7 +47,7 @@ BUILTIN_SRCS += $(SCREENSAVER_SRCS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# Xinerama extension: making multiple video devices act as one virtual screen
|
# Xinerama extension: making multiple video devices act as one virtual screen
|
||||||
XINERAMA_SRCS = panoramiX.c panoramiX.h panoramiXh.h panoramiXsrv.h panoramiXprocs.c panoramiXSwap.c
|
XINERAMA_SRCS = panoramiX.c panoramiX.h panoramiXh.h panoramiXsrv.h panoramiXprocs.c panoramiXSwap.c
|
||||||
if XINERAMA
|
if XINERAMA
|
||||||
BUILTIN_SRCS += $(XINERAMA_SRCS)
|
BUILTIN_SRCS += $(XINERAMA_SRCS)
|
||||||
if XORG
|
if XORG
|
||||||
|
@ -75,7 +75,7 @@ endif
|
||||||
|
|
||||||
# Security extension: multi-level security to protect clients from each other
|
# Security extension: multi-level security to protect clients from each other
|
||||||
XCSECURITY_SRCS = security.c securitysrv.h
|
XCSECURITY_SRCS = security.c securitysrv.h
|
||||||
if XCSECURITY
|
if XCSECURITY
|
||||||
BUILTIN_SRCS += $(XCSECURITY_SRCS)
|
BUILTIN_SRCS += $(XCSECURITY_SRCS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
|
@ -2318,6 +2318,7 @@ SProcSyncCreateFence(ClientPtr client)
|
||||||
REQUEST(xSyncCreateFenceReq);
|
REQUEST(xSyncCreateFenceReq);
|
||||||
swaps(&stuff->length);
|
swaps(&stuff->length);
|
||||||
REQUEST_SIZE_MATCH(xSyncCreateFenceReq);
|
REQUEST_SIZE_MATCH(xSyncCreateFenceReq);
|
||||||
|
swapl(&stuff->d);
|
||||||
swapl(&stuff->fid);
|
swapl(&stuff->fid);
|
||||||
|
|
||||||
return ProcSyncCreateFence(client);
|
return ProcSyncCreateFence(client);
|
||||||
|
|
|
@ -93,6 +93,7 @@ ProcXIPassiveGrabDevice(ClientPtr client)
|
||||||
GrabParameters param;
|
GrabParameters param;
|
||||||
void *tmp;
|
void *tmp;
|
||||||
int mask_len;
|
int mask_len;
|
||||||
|
uint32_t length;
|
||||||
|
|
||||||
REQUEST(xXIPassiveGrabDeviceReq);
|
REQUEST(xXIPassiveGrabDeviceReq);
|
||||||
REQUEST_FIXED_SIZE(xXIPassiveGrabDeviceReq,
|
REQUEST_FIXED_SIZE(xXIPassiveGrabDeviceReq,
|
||||||
|
@ -247,18 +248,11 @@ ProcXIPassiveGrabDevice(ClientPtr client)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (client->swapped) {
|
/* save the value before SRepXIPassiveGrabDevice swaps it */
|
||||||
/* save the value before SRepXIPassiveGrabDevice swaps it */
|
length = rep.length;
|
||||||
uint32_t length = rep.length;
|
WriteReplyToClient(client, sizeof(rep), &rep);
|
||||||
WriteReplyToClient(client, sizeof(rep), &rep);
|
if (rep.num_modifiers)
|
||||||
if (length)
|
WriteToClient(client, length * 4, modifiers_failed);
|
||||||
WriteToClient(client, length * 4, modifiers_failed);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
WriteReplyToClient(client, sizeof(rep), &rep);
|
|
||||||
if (rep.num_modifiers)
|
|
||||||
WriteToClient(client, rep.length * 4, modifiers_failed);
|
|
||||||
}
|
|
||||||
|
|
||||||
out:
|
out:
|
||||||
free(modifiers_failed);
|
free(modifiers_failed);
|
||||||
|
|
|
@ -349,6 +349,7 @@ ProcXIGetSelectedEvents(ClientPtr client)
|
||||||
InputClientsPtr others = NULL;
|
InputClientsPtr others = NULL;
|
||||||
xXIEventMask *evmask = NULL;
|
xXIEventMask *evmask = NULL;
|
||||||
DeviceIntPtr dev;
|
DeviceIntPtr dev;
|
||||||
|
uint32_t length;
|
||||||
|
|
||||||
REQUEST(xXIGetSelectedEventsReq);
|
REQUEST(xXIGetSelectedEventsReq);
|
||||||
REQUEST_SIZE_MATCH(xXIGetSelectedEventsReq);
|
REQUEST_SIZE_MATCH(xXIGetSelectedEventsReq);
|
||||||
|
@ -418,21 +419,12 @@ ProcXIGetSelectedEvents(ClientPtr client)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (client->swapped) {
|
/* save the value before SRepXIGetSelectedEvents swaps it */
|
||||||
/* save the value before SRepXIGetSelectedEvents swaps it */
|
length = reply.length;
|
||||||
uint32_t length = reply.length;
|
WriteReplyToClient(client, sizeof(xXIGetSelectedEventsReply), &reply);
|
||||||
|
|
||||||
WriteReplyToClient(client, sizeof(xXIGetSelectedEventsReply), &reply);
|
if (reply.num_masks)
|
||||||
|
WriteToClient(client, length * 4, buffer);
|
||||||
if (length)
|
|
||||||
WriteToClient(client, length * 4, buffer);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
WriteReplyToClient(client, sizeof(xXIGetSelectedEventsReply), &reply);
|
|
||||||
|
|
||||||
if (reply.num_masks)
|
|
||||||
WriteToClient(client, reply.length * 4, buffer);
|
|
||||||
}
|
|
||||||
|
|
||||||
free(buffer);
|
free(buffer);
|
||||||
return Success;
|
return Success;
|
||||||
|
|
|
@ -12,4 +12,4 @@ libcomposite_la_SOURCES = \
|
||||||
compint.h \
|
compint.h \
|
||||||
compinit.c \
|
compinit.c \
|
||||||
compoverlay.c \
|
compoverlay.c \
|
||||||
compwindow.c
|
compwindow.c
|
||||||
|
|
6
xserver/config.guess
vendored
6
xserver/config.guess
vendored
|
@ -209,9 +209,9 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
|
||||||
echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
|
echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
|
||||||
exit ;;
|
exit ;;
|
||||||
*:SecBSD:*:*)
|
*:SecBSD:*:*)
|
||||||
UNAME_MACHINE_ARCH=`arch | sed 's/SecBSD.//'`
|
UNAME_MACHINE_ARCH=`arch | sed 's/SecBSD.//'`
|
||||||
echo ${UNAME_MACHINE_ARCH}-unknown-secbsd${UNAME_RELEASE}
|
echo ${UNAME_MACHINE_ARCH}-unknown-secbsd${UNAME_RELEASE}
|
||||||
exit ;;
|
exit ;;
|
||||||
*:ekkoBSD:*:*)
|
*:ekkoBSD:*:*)
|
||||||
echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
|
echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
|
||||||
exit ;;
|
exit ;;
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
|
|
||||||
# Accelerometer device, posts data through ABS_X/ABS_Y, making X unusable
|
# Accelerometer device, posts data through ABS_X/ABS_Y, making X unusable
|
||||||
# http://bugs.freedesktop.org/show_bug.cgi?id=22442
|
# http://bugs.freedesktop.org/show_bug.cgi?id=22442
|
||||||
Section "InputClass"
|
Section "InputClass"
|
||||||
Identifier "ThinkPad HDAPS accelerometer blacklist"
|
Identifier "ThinkPad HDAPS accelerometer blacklist"
|
||||||
MatchProduct "ThinkPad HDAPS accelerometer data"
|
MatchProduct "ThinkPad HDAPS accelerometer data"
|
||||||
|
|
|
@ -19,7 +19,7 @@ if build_udev
|
||||||
config_dep += udev_dep
|
config_dep += udev_dep
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if host_machine.system() == 'openbsd'
|
if host_machine.system() == 'secbsd'
|
||||||
srcs_config += 'wscons.c'
|
srcs_config += 'wscons.c'
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
|
@ -1,27 +1,27 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<deviceinfo version="0.2">
|
<deviceinfo version="0.2">
|
||||||
<device>
|
<device>
|
||||||
|
|
||||||
<!-- The way this works:
|
<!-- The way this works:
|
||||||
|
|
||||||
Match against some input device (see the HAL specification for more
|
Match against some input device (see the HAL specification for more
|
||||||
information), and then merge in keys, which you can use to specify
|
information), and then merge in keys, which you can use to specify
|
||||||
the configuration similar to the way you would in xorg.conf. You will
|
the configuration similar to the way you would in xorg.conf. You will
|
||||||
need to restart HAL after making changes. If you are having issues,
|
need to restart HAL after making changes. If you are having issues,
|
||||||
starting X with the -logverbose 7 flag may yield useful information.
|
starting X with the -logverbose 7 flag may yield useful information.
|
||||||
|
|
||||||
Keys Supported:
|
Keys Supported:
|
||||||
|
|
||||||
Key "input.x11_driver" (string)
|
Key "input.x11_driver" (string)
|
||||||
This specifies the driver to use. You MUST specify this option,
|
This specifies the driver to use. You MUST specify this option,
|
||||||
or a driver will not be loaded and the rest will be ignored by
|
or a driver will not be loaded and the rest will be ignored by
|
||||||
Xorg
|
Xorg
|
||||||
|
|
||||||
Key "input.x11_options.<option name>" (string)
|
Key "input.x11_options.<option name>" (string)
|
||||||
This allows you to specify arbitrary options to pass to the driver.
|
This allows you to specify arbitrary options to pass to the driver.
|
||||||
Anything you would normally specify in xorg.conf goes here. So, for
|
Anything you would normally specify in xorg.conf goes here. So, for
|
||||||
option "Mode" in xorg.conf, you would specify the key name of
|
option "Mode" in xorg.conf, you would specify the key name of
|
||||||
"input.x11_options.Mode".
|
"input.x11_options.Mode".
|
||||||
|
|
||||||
Do not specify "input.x11_options.Device" since "input.device"
|
Do not specify "input.x11_options.Device" since "input.device"
|
||||||
will be used automatically.
|
will be used automatically.
|
||||||
|
@ -35,7 +35,7 @@
|
||||||
"input.xkb.layout"
|
"input.xkb.layout"
|
||||||
"input.xkb.variant"
|
"input.xkb.variant"
|
||||||
"input.xkb.options"
|
"input.xkb.options"
|
||||||
|
|
||||||
These keys are deprecated. Use these instead:
|
These keys are deprecated. Use these instead:
|
||||||
"input.x11_options.XkbRules"
|
"input.x11_options.XkbRules"
|
||||||
"input.x11_options.XkbModel"
|
"input.x11_options.XkbModel"
|
||||||
|
@ -43,13 +43,13 @@
|
||||||
"input.x11_options.XkbVariant"
|
"input.x11_options.XkbVariant"
|
||||||
"input.x11_options.XkbOptions"
|
"input.x11_options.XkbOptions"
|
||||||
|
|
||||||
See the evdev documentation for more information.
|
See the evdev documentation for more information.
|
||||||
|
|
||||||
FIXME: Support tablets too.
|
FIXME: Support tablets too.
|
||||||
TODO: I think its fixed, can't test
|
TODO: I think its fixed, can't test
|
||||||
|
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<match key="info.capabilities" contains="input.mouse">
|
<match key="info.capabilities" contains="input.mouse">
|
||||||
<merge key="input.x11_driver" type="string">mouse</merge>
|
<merge key="input.x11_driver" type="string">mouse</merge>
|
||||||
<match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
|
<match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
|
||||||
|
|
38
xserver/configure
vendored
38
xserver/configure
vendored
|
@ -1,6 +1,6 @@
|
||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# Guess values for system-dependent variables and create Makefiles.
|
# Guess values for system-dependent variables and create Makefiles.
|
||||||
# Generated by GNU Autoconf 2.71 for xorg-server 21.1.11.
|
# Generated by GNU Autoconf 2.71 for xorg-server 21.1.12.
|
||||||
#
|
#
|
||||||
# Report bugs to <https://gitlab.freedesktop.org/xorg/xserver/issues>.
|
# Report bugs to <https://gitlab.freedesktop.org/xorg/xserver/issues>.
|
||||||
#
|
#
|
||||||
|
@ -682,8 +682,8 @@ MAKEFLAGS=
|
||||||
# Identity of this package.
|
# Identity of this package.
|
||||||
PACKAGE_NAME='xorg-server'
|
PACKAGE_NAME='xorg-server'
|
||||||
PACKAGE_TARNAME='xorg-server'
|
PACKAGE_TARNAME='xorg-server'
|
||||||
PACKAGE_VERSION='21.1.11'
|
PACKAGE_VERSION='21.1.12'
|
||||||
PACKAGE_STRING='xorg-server 21.1.11'
|
PACKAGE_STRING='xorg-server 21.1.12'
|
||||||
PACKAGE_BUGREPORT='https://gitlab.freedesktop.org/xorg/xserver/issues'
|
PACKAGE_BUGREPORT='https://gitlab.freedesktop.org/xorg/xserver/issues'
|
||||||
PACKAGE_URL=''
|
PACKAGE_URL=''
|
||||||
|
|
||||||
|
@ -2015,7 +2015,7 @@ if test "$ac_init_help" = "long"; then
|
||||||
# Omit some internal or obsolete options to make the list less imposing.
|
# Omit some internal or obsolete options to make the list less imposing.
|
||||||
# This message is too long to be a string in the A/UX 3.1 sh.
|
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||||
cat <<_ACEOF
|
cat <<_ACEOF
|
||||||
\`configure' configures xorg-server 21.1.11 to adapt to many kinds of systems.
|
\`configure' configures xorg-server 21.1.12 to adapt to many kinds of systems.
|
||||||
|
|
||||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||||
|
|
||||||
|
@ -2086,7 +2086,7 @@ fi
|
||||||
|
|
||||||
if test -n "$ac_init_help"; then
|
if test -n "$ac_init_help"; then
|
||||||
case $ac_init_help in
|
case $ac_init_help in
|
||||||
short | recursive ) echo "Configuration of xorg-server 21.1.11:";;
|
short | recursive ) echo "Configuration of xorg-server 21.1.12:";;
|
||||||
esac
|
esac
|
||||||
cat <<\_ACEOF
|
cat <<\_ACEOF
|
||||||
|
|
||||||
|
@ -2275,10 +2275,10 @@ Optional Packages:
|
||||||
org.x)
|
org.x)
|
||||||
--with-bundle-version=VERSION
|
--with-bundle-version=VERSION
|
||||||
Version to use for X11.app's CFBundleVersion
|
Version to use for X11.app's CFBundleVersion
|
||||||
(default: 21.1.11)
|
(default: 21.1.12)
|
||||||
--with-bundle-version-string=VERSION
|
--with-bundle-version-string=VERSION
|
||||||
Version to use for X11.app's
|
Version to use for X11.app's
|
||||||
CFBundleShortVersionString (default: 21.1.11)
|
CFBundleShortVersionString (default: 21.1.12)
|
||||||
--with-sparkle-feed-url=URL
|
--with-sparkle-feed-url=URL
|
||||||
URL for the Sparkle feed (default:
|
URL for the Sparkle feed (default:
|
||||||
https://www.xquartz.org/releases/sparkle/release.xml)
|
https://www.xquartz.org/releases/sparkle/release.xml)
|
||||||
|
@ -2493,7 +2493,7 @@ fi
|
||||||
test -n "$ac_init_help" && exit $ac_status
|
test -n "$ac_init_help" && exit $ac_status
|
||||||
if $ac_init_version; then
|
if $ac_init_version; then
|
||||||
cat <<\_ACEOF
|
cat <<\_ACEOF
|
||||||
xorg-server configure 21.1.11
|
xorg-server configure 21.1.12
|
||||||
generated by GNU Autoconf 2.71
|
generated by GNU Autoconf 2.71
|
||||||
|
|
||||||
Copyright (C) 2021 Free Software Foundation, Inc.
|
Copyright (C) 2021 Free Software Foundation, Inc.
|
||||||
|
@ -3150,7 +3150,7 @@ cat >config.log <<_ACEOF
|
||||||
This file contains any messages produced by compilers while
|
This file contains any messages produced by compilers while
|
||||||
running configure, to aid debugging if configure makes a mistake.
|
running configure, to aid debugging if configure makes a mistake.
|
||||||
|
|
||||||
It was created by xorg-server $as_me 21.1.11, which was
|
It was created by xorg-server $as_me 21.1.12, which was
|
||||||
generated by GNU Autoconf 2.71. Invocation command line was
|
generated by GNU Autoconf 2.71. Invocation command line was
|
||||||
|
|
||||||
$ $0$ac_configure_args_raw
|
$ $0$ac_configure_args_raw
|
||||||
|
@ -3907,7 +3907,7 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
|
||||||
ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
||||||
|
|
||||||
|
|
||||||
RELEASE_DATE="2024-01-16"
|
RELEASE_DATE="2024-04-03"
|
||||||
RELEASE_NAME="Caramel Ice Cream"
|
RELEASE_NAME="Caramel Ice Cream"
|
||||||
|
|
||||||
|
|
||||||
|
@ -4388,7 +4388,7 @@ fi
|
||||||
|
|
||||||
# Define the identity of the package.
|
# Define the identity of the package.
|
||||||
PACKAGE='xorg-server'
|
PACKAGE='xorg-server'
|
||||||
VERSION='21.1.11'
|
VERSION='21.1.12'
|
||||||
|
|
||||||
|
|
||||||
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
|
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
|
||||||
|
@ -14763,7 +14763,7 @@ freebsd* | dragonfly*)
|
||||||
i*86 )
|
i*86 )
|
||||||
# Not sure whether the presence of OpenBSD here was a mistake.
|
# Not sure whether the presence of OpenBSD here was a mistake.
|
||||||
# Let's accept both of them until this is cleared up.
|
# Let's accept both of them until this is cleared up.
|
||||||
lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly|SecBSD)/i[3-9]86 (compact )?demand paged shared library'
|
lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|SecBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'
|
||||||
lt_cv_file_magic_cmd=/usr/bin/file
|
lt_cv_file_magic_cmd=/usr/bin/file
|
||||||
lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
|
lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
|
||||||
;;
|
;;
|
||||||
|
@ -14837,7 +14837,7 @@ newos6*)
|
||||||
lt_cv_deplibs_check_method=pass_all
|
lt_cv_deplibs_check_method=pass_all
|
||||||
;;
|
;;
|
||||||
|
|
||||||
openbsd*)
|
openbsd* | secbsd*)
|
||||||
if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
|
if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
|
||||||
lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'
|
lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'
|
||||||
else
|
else
|
||||||
|
@ -19275,7 +19275,7 @@ printf "%s\n" "$lt_cv_irix_exported_symbol" >&6; }
|
||||||
*nto* | *qnx*)
|
*nto* | *qnx*)
|
||||||
;;
|
;;
|
||||||
|
|
||||||
openbsd*)
|
openbsd* | secbsd*)
|
||||||
if test -f /usr/libexec/ld.so; then
|
if test -f /usr/libexec/ld.so; then
|
||||||
hardcode_direct=yes
|
hardcode_direct=yes
|
||||||
hardcode_shlibpath_var=no
|
hardcode_shlibpath_var=no
|
||||||
|
@ -20322,7 +20322,7 @@ newsos6)
|
||||||
dynamic_linker='ldqnx.so'
|
dynamic_linker='ldqnx.so'
|
||||||
;;
|
;;
|
||||||
|
|
||||||
openbsd*)
|
openbsd* | secbsd*)
|
||||||
version_type=sunos
|
version_type=sunos
|
||||||
sys_lib_dlsearch_path_spec="/usr/lib"
|
sys_lib_dlsearch_path_spec="/usr/lib"
|
||||||
need_lib_prefix=no
|
need_lib_prefix=no
|
||||||
|
@ -23884,7 +23884,7 @@ printf "%s\n" "#define USE_AMD64_IOPL 1" >>confdefs.h
|
||||||
;;
|
;;
|
||||||
hppa*)
|
hppa*)
|
||||||
case $host_os in
|
case $host_os in
|
||||||
*openbsd* | *secbsd*) HPPA_VIDEO=yes
|
*openbsd*) HPPA_VIDEO=yes
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
|
@ -24439,7 +24439,7 @@ if test ${with_bundle_version+y}
|
||||||
then :
|
then :
|
||||||
withval=$with_bundle_version; BUNDLE_VERSION="${withval}"
|
withval=$with_bundle_version; BUNDLE_VERSION="${withval}"
|
||||||
else $as_nop
|
else $as_nop
|
||||||
BUNDLE_VERSION="21.1.11"
|
BUNDLE_VERSION="21.1.12"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
@ -33105,7 +33105,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||||||
# report actual input values of CONFIG_FILES etc. instead of their
|
# report actual input values of CONFIG_FILES etc. instead of their
|
||||||
# values after options handling.
|
# values after options handling.
|
||||||
ac_log="
|
ac_log="
|
||||||
This file was extended by xorg-server $as_me 21.1.11, which was
|
This file was extended by xorg-server $as_me 21.1.12, which was
|
||||||
generated by GNU Autoconf 2.71. Invocation command line was
|
generated by GNU Autoconf 2.71. Invocation command line was
|
||||||
|
|
||||||
CONFIG_FILES = $CONFIG_FILES
|
CONFIG_FILES = $CONFIG_FILES
|
||||||
|
@ -33173,7 +33173,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
|
||||||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||||||
ac_cs_config='$ac_cs_config_escaped'
|
ac_cs_config='$ac_cs_config_escaped'
|
||||||
ac_cs_version="\\
|
ac_cs_version="\\
|
||||||
xorg-server config.status 21.1.11
|
xorg-server config.status 21.1.12
|
||||||
configured by $0, generated by GNU Autoconf 2.71,
|
configured by $0, generated by GNU Autoconf 2.71,
|
||||||
with options \\"\$ac_cs_config\\"
|
with options \\"\$ac_cs_config\\"
|
||||||
|
|
||||||
|
|
|
@ -26,8 +26,8 @@ dnl
|
||||||
dnl Process this file with autoconf to create configure.
|
dnl Process this file with autoconf to create configure.
|
||||||
|
|
||||||
AC_PREREQ(2.60)
|
AC_PREREQ(2.60)
|
||||||
AC_INIT([xorg-server], 21.1.11, [https://gitlab.freedesktop.org/xorg/xserver/issues], xorg-server)
|
AC_INIT([xorg-server], 21.1.12, [https://gitlab.freedesktop.org/xorg/xserver/issues], xorg-server)
|
||||||
RELEASE_DATE="2024-01-16"
|
RELEASE_DATE="2024-04-03"
|
||||||
RELEASE_NAME="Caramel Ice Cream"
|
RELEASE_NAME="Caramel Ice Cream"
|
||||||
AC_CONFIG_SRCDIR([Makefile.am])
|
AC_CONFIG_SRCDIR([Makefile.am])
|
||||||
AC_CONFIG_MACRO_DIR([m4])
|
AC_CONFIG_MACRO_DIR([m4])
|
||||||
|
|
|
@ -95,7 +95,7 @@ DbeStubScreen(DbeScreenPrivPtr pDbeScreenPriv, int *nStubbedScreens)
|
||||||
(*nStubbedScreens)++;
|
(*nStubbedScreens)++;
|
||||||
|
|
||||||
} /* DbeStubScreen() */
|
} /* DbeStubScreen() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: ProcDbeGetVersion
|
* DBE DIX Procedure: ProcDbeGetVersion
|
||||||
|
@ -135,7 +135,7 @@ ProcDbeGetVersion(ClientPtr client)
|
||||||
return Success;
|
return Success;
|
||||||
|
|
||||||
} /* ProcDbeGetVersion() */
|
} /* ProcDbeGetVersion() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: ProcDbeAllocateBackBufferName
|
* DBE DIX Procedure: ProcDbeAllocateBackBufferName
|
||||||
|
@ -353,7 +353,7 @@ ProcDbeAllocateBackBufferName(ClientPtr client)
|
||||||
return status;
|
return status;
|
||||||
|
|
||||||
} /* ProcDbeAllocateBackBufferName() */
|
} /* ProcDbeAllocateBackBufferName() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: ProcDbeDeallocateBackBufferName
|
* DBE DIX Procedure: ProcDbeDeallocateBackBufferName
|
||||||
|
@ -416,7 +416,7 @@ ProcDbeDeallocateBackBufferName(ClientPtr client)
|
||||||
return Success;
|
return Success;
|
||||||
|
|
||||||
} /* ProcDbeDeallocateBackBufferName() */
|
} /* ProcDbeDeallocateBackBufferName() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: ProcDbeSwapBuffers
|
* DBE DIX Procedure: ProcDbeSwapBuffers
|
||||||
|
@ -541,7 +541,7 @@ ProcDbeSwapBuffers(ClientPtr client)
|
||||||
return Success;
|
return Success;
|
||||||
|
|
||||||
} /* ProcDbeSwapBuffers() */
|
} /* ProcDbeSwapBuffers() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: ProcDbeGetVisualInfo
|
* DBE DIX Procedure: ProcDbeGetVisualInfo
|
||||||
|
@ -701,7 +701,7 @@ ProcDbeGetVisualInfo(ClientPtr client)
|
||||||
return rc;
|
return rc;
|
||||||
|
|
||||||
} /* ProcDbeGetVisualInfo() */
|
} /* ProcDbeGetVisualInfo() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: ProcDbeGetbackBufferAttributes
|
* DBE DIX Procedure: ProcDbeGetbackBufferAttributes
|
||||||
|
@ -751,7 +751,7 @@ ProcDbeGetBackBufferAttributes(ClientPtr client)
|
||||||
return Success;
|
return Success;
|
||||||
|
|
||||||
} /* ProcDbeGetbackBufferAttributes() */
|
} /* ProcDbeGetbackBufferAttributes() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: ProcDbeDispatch
|
* DBE DIX Procedure: ProcDbeDispatch
|
||||||
|
@ -797,7 +797,7 @@ ProcDbeDispatch(ClientPtr client)
|
||||||
}
|
}
|
||||||
|
|
||||||
} /* ProcDbeDispatch() */
|
} /* ProcDbeDispatch() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: SProcDbeGetVersion
|
* DBE DIX Procedure: SProcDbeGetVersion
|
||||||
|
@ -823,7 +823,7 @@ SProcDbeGetVersion(ClientPtr client)
|
||||||
return (ProcDbeGetVersion(client));
|
return (ProcDbeGetVersion(client));
|
||||||
|
|
||||||
} /* SProcDbeGetVersion() */
|
} /* SProcDbeGetVersion() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: SProcDbeAllocateBackBufferName
|
* DBE DIX Procedure: SProcDbeAllocateBackBufferName
|
||||||
|
@ -862,7 +862,7 @@ SProcDbeAllocateBackBufferName(ClientPtr client)
|
||||||
return (ProcDbeAllocateBackBufferName(client));
|
return (ProcDbeAllocateBackBufferName(client));
|
||||||
|
|
||||||
} /* SProcDbeAllocateBackBufferName() */
|
} /* SProcDbeAllocateBackBufferName() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: SProcDbeDeallocateBackBufferName
|
* DBE DIX Procedure: SProcDbeDeallocateBackBufferName
|
||||||
|
@ -893,7 +893,7 @@ SProcDbeDeallocateBackBufferName(ClientPtr client)
|
||||||
return (ProcDbeDeallocateBackBufferName(client));
|
return (ProcDbeDeallocateBackBufferName(client));
|
||||||
|
|
||||||
} /* SProcDbeDeallocateBackBufferName() */
|
} /* SProcDbeDeallocateBackBufferName() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: SProcDbeSwapBuffers
|
* DBE DIX Procedure: SProcDbeSwapBuffers
|
||||||
|
@ -945,7 +945,7 @@ SProcDbeSwapBuffers(ClientPtr client)
|
||||||
return (ProcDbeSwapBuffers(client));
|
return (ProcDbeSwapBuffers(client));
|
||||||
|
|
||||||
} /* SProcDbeSwapBuffers() */
|
} /* SProcDbeSwapBuffers() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: SProcDbeGetVisualInfo
|
* DBE DIX Procedure: SProcDbeGetVisualInfo
|
||||||
|
@ -977,7 +977,7 @@ SProcDbeGetVisualInfo(ClientPtr client)
|
||||||
return (ProcDbeGetVisualInfo(client));
|
return (ProcDbeGetVisualInfo(client));
|
||||||
|
|
||||||
} /* SProcDbeGetVisualInfo() */
|
} /* SProcDbeGetVisualInfo() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: SProcDbeGetbackBufferAttributes
|
* DBE DIX Procedure: SProcDbeGetbackBufferAttributes
|
||||||
|
@ -1007,7 +1007,7 @@ SProcDbeGetBackBufferAttributes(ClientPtr client)
|
||||||
return (ProcDbeGetBackBufferAttributes(client));
|
return (ProcDbeGetBackBufferAttributes(client));
|
||||||
|
|
||||||
} /* SProcDbeGetBackBufferAttributes() */
|
} /* SProcDbeGetBackBufferAttributes() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: SProcDbeDispatch
|
* DBE DIX Procedure: SProcDbeDispatch
|
||||||
|
@ -1053,7 +1053,7 @@ SProcDbeDispatch(ClientPtr client)
|
||||||
}
|
}
|
||||||
|
|
||||||
} /* SProcDbeDispatch() */
|
} /* SProcDbeDispatch() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: DbeSetupBackgroundPainter
|
* DBE DIX Procedure: DbeSetupBackgroundPainter
|
||||||
|
@ -1115,7 +1115,7 @@ DbeSetupBackgroundPainter(WindowPtr pWin, GCPtr pGC)
|
||||||
|
|
||||||
return ChangeGC(NullClient, pGC, gcmask, gcvalues) == 0;
|
return ChangeGC(NullClient, pGC, gcmask, gcvalues) == 0;
|
||||||
} /* DbeSetupBackgroundPainter() */
|
} /* DbeSetupBackgroundPainter() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: DbeDrawableDelete
|
* DBE DIX Procedure: DbeDrawableDelete
|
||||||
|
@ -1138,7 +1138,7 @@ DbeDrawableDelete(void *pDrawable, XID id)
|
||||||
return Success;
|
return Success;
|
||||||
|
|
||||||
} /* DbeDrawableDelete() */
|
} /* DbeDrawableDelete() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: DbeWindowPrivDelete
|
* DBE DIX Procedure: DbeWindowPrivDelete
|
||||||
|
@ -1235,7 +1235,7 @@ DbeWindowPrivDelete(void *pDbeWinPriv, XID id)
|
||||||
return Success;
|
return Success;
|
||||||
|
|
||||||
} /* DbeWindowPrivDelete() */
|
} /* DbeWindowPrivDelete() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: DbeResetProc
|
* DBE DIX Procedure: DbeResetProc
|
||||||
|
@ -1266,7 +1266,7 @@ DbeResetProc(ExtensionEntry * extEntry)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} /* DbeResetProc() */
|
} /* DbeResetProc() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: DbeDestroyWindow
|
* DBE DIX Procedure: DbeDestroyWindow
|
||||||
|
@ -1346,7 +1346,7 @@ DbeDestroyWindow(WindowPtr pWin)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
} /* DbeDestroyWindow() */
|
} /* DbeDestroyWindow() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE DIX Procedure: DbeExtensionInit
|
* DBE DIX Procedure: DbeExtensionInit
|
||||||
|
|
|
@ -56,7 +56,7 @@
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE MI Procedure: miDbeGetVisualInfo
|
* DBE MI Procedure: miDbeGetVisualInfo
|
||||||
|
@ -118,7 +118,7 @@ miDbeGetVisualInfo(ScreenPtr pScreen, XdbeScreenVisualInfo * pScrVisInfo)
|
||||||
return TRUE; /* success */
|
return TRUE; /* success */
|
||||||
|
|
||||||
} /* miDbeGetVisualInfo() */
|
} /* miDbeGetVisualInfo() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE MI Procedure: miAllocBackBufferName
|
* DBE MI Procedure: miAllocBackBufferName
|
||||||
|
@ -211,7 +211,7 @@ miDbeAllocBackBufferName(WindowPtr pWin, XID bufId, int swapAction)
|
||||||
return Success;
|
return Success;
|
||||||
|
|
||||||
} /* miDbeAllocBackBufferName() */
|
} /* miDbeAllocBackBufferName() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE MI Procedure: miDbeAliasBuffers
|
* DBE MI Procedure: miDbeAliasBuffers
|
||||||
|
@ -234,7 +234,7 @@ miDbeAliasBuffers(DbeWindowPrivPtr pDbeWindowPriv)
|
||||||
}
|
}
|
||||||
|
|
||||||
} /* miDbeAliasBuffers() */
|
} /* miDbeAliasBuffers() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE MI Procedure: miDbeSwapBuffers
|
* DBE MI Procedure: miDbeSwapBuffers
|
||||||
|
@ -364,7 +364,7 @@ miDbeSwapBuffers(ClientPtr client, int *pNumWindows, DbeSwapInfoPtr swapInfo)
|
||||||
return Success;
|
return Success;
|
||||||
|
|
||||||
} /* miSwapBuffers() */
|
} /* miSwapBuffers() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE MI Procedure: miDbeWinPrivDelete
|
* DBE MI Procedure: miDbeWinPrivDelete
|
||||||
|
@ -436,7 +436,7 @@ miDbeWinPrivDelete(DbeWindowPrivPtr pDbeWindowPriv, XID bufId)
|
||||||
DestroyPixmap) (pDbeWindowPriv->pBackBuffer);
|
DestroyPixmap) (pDbeWindowPriv->pBackBuffer);
|
||||||
}
|
}
|
||||||
} /* miDbeWinPrivDelete() */
|
} /* miDbeWinPrivDelete() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE MI Procedure: miDbePositionWindow
|
* DBE MI Procedure: miDbePositionWindow
|
||||||
|
@ -658,7 +658,7 @@ miDbePositionWindow(WindowPtr pWin, int x, int y)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
} /* miDbePositionWindow() */
|
} /* miDbePositionWindow() */
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* DBE MI Procedure: miDbeInit
|
* DBE MI Procedure: miDbeInit
|
||||||
|
|
|
@ -133,7 +133,7 @@ RGB_COLOR_MAP @
|
||||||
compute a corresponding pixel value with the expression:
|
compute a corresponding pixel value with the expression:
|
||||||
|
|
||||||
r * red_mult + g * green_mult + b * blue_mult + base_pixel
|
r * red_mult + g * green_mult + b * blue_mult + base_pixel
|
||||||
|
|
||||||
For gray-scale colormaps, only the colormap, red_max, red_mult,
|
For gray-scale colormaps, only the colormap, red_max, red_mult,
|
||||||
and base_pixel fields are defined; the other fields are
|
and base_pixel fields are defined; the other fields are
|
||||||
ignored. To compute a gray-scale pixel value, use:
|
ignored. To compute a gray-scale pixel value, use:
|
||||||
|
@ -273,7 +273,7 @@ SUBSCRIPT_Y @
|
||||||
UNDERLINE_POSITION @
|
UNDERLINE_POSITION @
|
||||||
Font property: INT32
|
Font property: INT32
|
||||||
UNDERLINE_THICKNESS @
|
UNDERLINE_THICKNESS @
|
||||||
Font property: CARD32
|
Font property: CARD32
|
||||||
STRIKEOUT_ASCENT @
|
STRIKEOUT_ASCENT @
|
||||||
Font property: INT32
|
Font property: INT32
|
||||||
STRIKEOUT_DESCENT @
|
STRIKEOUT_DESCENT @
|
||||||
|
@ -314,8 +314,8 @@ CAP_HEIGHT @
|
||||||
|
|
||||||
WM_CLASS @
|
WM_CLASS @
|
||||||
Property name: (type: STRING)
|
Property name: (type: STRING)
|
||||||
Used (possibly by some window managers; definitely by
|
Used (possibly by some window managers; definitely by
|
||||||
session managers) to look up resources in the resource
|
session managers) to look up resources in the resource
|
||||||
data base on behalf of the client who set this property.
|
data base on behalf of the client who set this property.
|
||||||
There are 2 elements:
|
There are 2 elements:
|
||||||
{char *resource_name; char *resource_class;}
|
{char *resource_name; char *resource_class;}
|
||||||
|
@ -323,7 +323,7 @@ WM_CLASS @
|
||||||
|
|
||||||
WM_TRANSIENT_FOR @
|
WM_TRANSIENT_FOR @
|
||||||
Property name: (type: WINDOW)
|
Property name: (type: WINDOW)
|
||||||
Used by transient top-level windows, such as dialog
|
Used by transient top-level windows, such as dialog
|
||||||
boxes, to point to their logical "parents". The window
|
boxes, to point to their logical "parents". The window
|
||||||
manager can then take down the dialog boxes when the
|
manager can then take down the dialog boxes when the
|
||||||
"parent" gets iconified, for instance.
|
"parent" gets iconified, for instance.
|
||||||
|
|
|
@ -536,6 +536,7 @@ DisableDevice(DeviceIntPtr dev, BOOL sendevent)
|
||||||
}
|
}
|
||||||
|
|
||||||
RecalculateMasterButtons(dev);
|
RecalculateMasterButtons(dev);
|
||||||
|
dev->master = NULL;
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -3780,9 +3780,11 @@ ProcEstablishConnection(ClientPtr client)
|
||||||
auth_proto = (char *) prefix + sz_xConnClientPrefix;
|
auth_proto = (char *) prefix + sz_xConnClientPrefix;
|
||||||
auth_string = auth_proto + pad_to_int32(prefix->nbytesAuthProto);
|
auth_string = auth_proto + pad_to_int32(prefix->nbytesAuthProto);
|
||||||
|
|
||||||
if ((client->req_len << 2) != sz_xReq + sz_xConnClientPrefix +
|
if (client->swapped && !AllowByteSwappedClients) {
|
||||||
pad_to_int32(prefix->nbytesAuthProto) +
|
reason = "Prohibited client endianess, see the Xserver man page ";
|
||||||
pad_to_int32(prefix->nbytesAuthString))
|
} else if ((client->req_len << 2) != sz_xReq + sz_xConnClientPrefix +
|
||||||
|
pad_to_int32(prefix->nbytesAuthProto) +
|
||||||
|
pad_to_int32(prefix->nbytesAuthString))
|
||||||
reason = "Bad length";
|
reason = "Bad length";
|
||||||
else if ((prefix->majorVersion != X_PROTOCOL) ||
|
else if ((prefix->majorVersion != X_PROTOCOL) ||
|
||||||
(prefix->minorVersion != X_PROTOCOL_REVISION))
|
(prefix->minorVersion != X_PROTOCOL_REVISION))
|
||||||
|
|
|
@ -139,7 +139,7 @@ static const FbBits fbStipple1Bits[2] = {
|
||||||
* Example: srcX = 0 dstX = 8 (FB unit 32 dstBpp 8)
|
* Example: srcX = 0 dstX = 8 (FB unit 32 dstBpp 8)
|
||||||
*
|
*
|
||||||
* **** **** **** **** **** **** **** ****
|
* **** **** **** **** **** **** **** ****
|
||||||
* ^
|
* ^
|
||||||
* ******** ******** ******** ********
|
* ******** ******** ******** ********
|
||||||
* ^
|
* ^
|
||||||
*
|
*
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Default modes distilled from
|
// Default modes distilled from
|
||||||
// "VESA and Industry Standards and Guide for Computer Display Monitor
|
// "VESA and Industry Standards and Guide for Computer Display Monitor
|
||||||
// Timing", version 1.0, revision 0.8, adopted September 17, 1998.
|
// Timing", version 1.0, revision 0.8, adopted September 17, 1998.
|
||||||
//
|
//
|
||||||
// $XFree86: xc/programs/Xserver/hw/xfree86/etc/vesamodes,v 1.3 1999/11/16 03:28:03 tsi Exp $
|
// $XFree86: xc/programs/Xserver/hw/xfree86/etc/vesamodes,v 1.3 1999/11/16 03:28:03 tsi Exp $
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -646,6 +646,7 @@ typedef enum {
|
||||||
FLAG_MAX_CLIENTS,
|
FLAG_MAX_CLIENTS,
|
||||||
FLAG_IGLX,
|
FLAG_IGLX,
|
||||||
FLAG_DEBUG,
|
FLAG_DEBUG,
|
||||||
|
FLAG_ALLOW_BYTE_SWAPPED_CLIENTS,
|
||||||
} FlagValues;
|
} FlagValues;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -705,6 +706,8 @@ static OptionInfoRec FlagOptions[] = {
|
||||||
{0}, FALSE},
|
{0}, FALSE},
|
||||||
{FLAG_DEBUG, "Debug", OPTV_STRING,
|
{FLAG_DEBUG, "Debug", OPTV_STRING,
|
||||||
{0}, FALSE},
|
{0}, FALSE},
|
||||||
|
{FLAG_ALLOW_BYTE_SWAPPED_CLIENTS, "AllowByteSwappedClients", OPTV_BOOLEAN,
|
||||||
|
{0}, FALSE},
|
||||||
{-1, NULL, OPTV_NONE,
|
{-1, NULL, OPTV_NONE,
|
||||||
{0}, FALSE},
|
{0}, FALSE},
|
||||||
};
|
};
|
||||||
|
@ -746,6 +749,14 @@ configServerFlags(XF86ConfFlagsPtr flagsconf, XF86OptionPtr layoutopts)
|
||||||
xf86Msg(X_CONFIG, "Ignoring ABI Version\n");
|
xf86Msg(X_CONFIG, "Ignoring ABI Version\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
xf86GetOptValBool(FlagOptions, FLAG_ALLOW_BYTE_SWAPPED_CLIENTS, &AllowByteSwappedClients);
|
||||||
|
if (AllowByteSwappedClients) {
|
||||||
|
xf86Msg(X_CONFIG, "Allowing byte-swapped clients\n");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
xf86Msg(X_CONFIG, "Prohibiting byte-swapped clients\n");
|
||||||
|
}
|
||||||
|
|
||||||
if (xf86IsOptionSet(FlagOptions, FLAG_AUTO_ADD_DEVICES)) {
|
if (xf86IsOptionSet(FlagOptions, FLAG_AUTO_ADD_DEVICES)) {
|
||||||
xf86GetOptValBool(FlagOptions, FLAG_AUTO_ADD_DEVICES,
|
xf86GetOptValBool(FlagOptions, FLAG_AUTO_ADD_DEVICES,
|
||||||
&xf86Info.autoAddDevices);
|
&xf86Info.autoAddDevices);
|
||||||
|
|
|
@ -112,7 +112,7 @@ static Bool formatsDone = FALSE;
|
||||||
|
|
||||||
#ifdef X_PRIVSEP
|
#ifdef X_PRIVSEP
|
||||||
static Bool xf86KeepPriv = FALSE;
|
static Bool xf86KeepPriv = FALSE;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
|
@ -507,6 +507,8 @@ xf86LookupMode(ScrnInfoPtr scrp, DisplayModePtr modep,
|
||||||
/* scan through the modes in the sort order above */
|
/* scan through the modes in the sort order above */
|
||||||
if ((p->type & type) != type)
|
if ((p->type & type) != type)
|
||||||
continue;
|
continue;
|
||||||
|
if (p->name == NULL)
|
||||||
|
continue;
|
||||||
|
|
||||||
if (strcmp(p->name, modep->name) == 0) {
|
if (strcmp(p->name, modep->name) == 0) {
|
||||||
|
|
||||||
|
|
|
@ -2123,7 +2123,7 @@ CloseScreen(ScreenPtr pScreen)
|
||||||
dixLookupPrivate(&pScreen->devPrivates, miPointerScreenKey);
|
dixLookupPrivate(&pScreen->devPrivates, miPointerScreenKey);
|
||||||
|
|
||||||
if (PointPriv->spriteFuncs == &drmmode_sprite_funcs)
|
if (PointPriv->spriteFuncs == &drmmode_sprite_funcs)
|
||||||
PointPriv->spriteFuncs = ms->SpriteFuncs;
|
PointPriv->spriteFuncs = ms->SpriteFuncs;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pScrn->vtSema) {
|
if (pScrn->vtSema) {
|
||||||
|
|
|
@ -4097,7 +4097,7 @@ drmmode_handle_uevents(int fd, void *closure)
|
||||||
struct udev_device *dev;
|
struct udev_device *dev;
|
||||||
Bool found = FALSE;
|
Bool found = FALSE;
|
||||||
|
|
||||||
#ifdef CONFIG_UDEV_KMS
|
#ifdef CONFIG_UDEV_KMS
|
||||||
while ((dev = udev_monitor_receive_device(drmmode->uevent_monitor))) {
|
while ((dev = udev_monitor_receive_device(drmmode->uevent_monitor))) {
|
||||||
udev_device_unref(dev);
|
udev_device_unref(dev);
|
||||||
found = TRUE;
|
found = TRUE;
|
||||||
|
@ -4146,7 +4146,7 @@ drmmode_uevent_init(ScrnInfoPtr scrn, drmmode_ptr drmmode)
|
||||||
drmmode_handle_uevents, drmmode);
|
drmmode_handle_uevents, drmmode);
|
||||||
|
|
||||||
drmmode->uevent_monitor = mon;
|
drmmode->uevent_monitor = mon;
|
||||||
#elif CONFIG_KEVENT_KMS
|
#elif CONFIG_KEVENT_KMS
|
||||||
int kq;
|
int kq;
|
||||||
struct kevent ev;
|
struct kevent ev;
|
||||||
|
|
||||||
|
|
|
@ -677,6 +677,9 @@ Possible values are
|
||||||
or
|
or
|
||||||
.BR sync .
|
.BR sync .
|
||||||
Unset by default.
|
Unset by default.
|
||||||
|
.TP 7
|
||||||
|
.BI "Option \*qAllowByteSwappedClients\*q \*q" boolean \*q
|
||||||
|
Allow clients with a different byte-order than the server. Enabled by default.
|
||||||
.SH "MODULE SECTION"
|
.SH "MODULE SECTION"
|
||||||
The
|
The
|
||||||
.B Module
|
.B Module
|
||||||
|
|
|
@ -840,7 +840,7 @@ xf86CompatOutput(ScrnInfoPtr pScrn)
|
||||||
xf86CrtcConfigPtr config;
|
xf86CrtcConfigPtr config;
|
||||||
|
|
||||||
if (xf86CrtcConfigPrivateIndex == -1)
|
if (xf86CrtcConfigPrivateIndex == -1)
|
||||||
return NULL;
|
return NULL;
|
||||||
config = XF86_CRTC_CONFIG_PTR(pScrn);
|
config = XF86_CRTC_CONFIG_PTR(pScrn);
|
||||||
if (config->compat_output < 0)
|
if (config->compat_output < 0)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
|
@ -325,8 +325,8 @@ int (*xf86ReadMmio32) (void *Base, unsigned long Offset)
|
||||||
= readDense32;
|
= readDense32;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Do all things that need root privileges early
|
* Do all things that need root privileges early
|
||||||
* and revoke those priviledges
|
* and revoke those priviledges
|
||||||
*/
|
*/
|
||||||
_X_EXPORT void
|
_X_EXPORT void
|
||||||
xf86PrivilegedInit(void)
|
xf86PrivilegedInit(void)
|
||||||
|
|
|
@ -85,7 +85,7 @@ GARTInit(int screenNum)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
xf86ReleaseGART(-1);
|
xf86ReleaseGART(-1);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -796,7 +796,7 @@ void
|
||||||
xf86DropPriv(void)
|
xf86DropPriv(void)
|
||||||
{
|
{
|
||||||
struct passwd *pw;
|
struct passwd *pw;
|
||||||
|
|
||||||
/* revoke privileges */
|
/* revoke privileges */
|
||||||
if (getuid() == 0) {
|
if (getuid() == 0) {
|
||||||
/* Running as root */
|
/* Running as root */
|
||||||
|
@ -807,7 +807,7 @@ xf86DropPriv(void)
|
||||||
if (ChownLock(pw->pw_uid, pw->pw_gid) == -1) {
|
if (ChownLock(pw->pw_uid, pw->pw_gid) == -1) {
|
||||||
FatalError("Chown Lock");
|
FatalError("Chown Lock");
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Start privileged child */
|
/* Start privileged child */
|
||||||
if (priv_init(pw->pw_uid, pw->pw_gid) == -1) {
|
if (priv_init(pw->pw_uid, pw->pw_gid) == -1) {
|
||||||
FatalError("priv_init");
|
FatalError("priv_init");
|
||||||
|
|
|
@ -7,19 +7,19 @@
|
||||||
* documentation for any purpose is hereby granted without fee, provided that
|
* documentation for any purpose is hereby granted without fee, provided that
|
||||||
* the above copyright notice appear in all copies and that both that
|
* the above copyright notice appear in all copies and that both that
|
||||||
* copyright notice and this permission notice appear in supporting
|
* copyright notice and this permission notice appear in supporting
|
||||||
* documentation, and that the names of Rich Murphey and David Wexelblat
|
* documentation, and that the names of Rich Murphey and David Wexelblat
|
||||||
* not be used in advertising or publicity pertaining to distribution of
|
* not be used in advertising or publicity pertaining to distribution of
|
||||||
* the software without specific, written prior permission. Rich Murphey and
|
* the software without specific, written prior permission. Rich Murphey and
|
||||||
* David Wexelblat make no representations about the suitability of this
|
* David Wexelblat make no representations about the suitability of this
|
||||||
* software for any purpose. It is provided "as is" without express or
|
* software for any purpose. It is provided "as is" without express or
|
||||||
* implied warranty.
|
* implied warranty.
|
||||||
*
|
*
|
||||||
* RICH MURPHEY AND DAVID WEXELBLAT DISCLAIM ALL WARRANTIES WITH REGARD TO
|
* RICH MURPHEY AND DAVID WEXELBLAT DISCLAIM ALL WARRANTIES WITH REGARD TO
|
||||||
* THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
* THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
||||||
* FITNESS, IN NO EVENT SHALL RICH MURPHEY OR DAVID WEXELBLAT BE LIABLE FOR
|
* FITNESS, IN NO EVENT SHALL RICH MURPHEY OR DAVID WEXELBLAT BE LIABLE FOR
|
||||||
* ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
|
* ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
|
||||||
* RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
|
* RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
|
||||||
* CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
|
* CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
|
||||||
* CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
* CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
@ -57,7 +57,7 @@ xf86OSInitVidMem(VidMemInfoPtr pVidMem)
|
||||||
|
|
||||||
#ifdef X_PRIVSEP
|
#ifdef X_PRIVSEP
|
||||||
/*
|
/*
|
||||||
* Do all initialisation that need root privileges
|
* Do all initialisation that need root privileges
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
xf86PrivilegedInit(void)
|
xf86PrivilegedInit(void)
|
||||||
|
|
|
@ -78,14 +78,14 @@ checkDevMem(Bool warn)
|
||||||
if (devMemChecked)
|
if (devMemChecked)
|
||||||
return;
|
return;
|
||||||
devMemChecked = TRUE;
|
devMemChecked = TRUE;
|
||||||
|
|
||||||
#ifdef HAS_APERTURE_DRV
|
#ifdef HAS_APERTURE_DRV
|
||||||
/* Try the aperture driver first */
|
/* Try the aperture driver first */
|
||||||
if ((fd = open(DEV_APERTURE, O_RDWR)) >= 0) {
|
if ((fd = open(DEV_APERTURE, O_RDWR)) >= 0) {
|
||||||
/* Try to map a page at the VGA address */
|
/* Try to map a page at the VGA address */
|
||||||
base = mmap((caddr_t)0, 4096, PROT_READ | PROT_WRITE,
|
base = mmap((caddr_t)0, 4096, PROT_READ | PROT_WRITE,
|
||||||
MAP_FLAGS, fd, (off_t)0xA0000);
|
MAP_FLAGS, fd, (off_t)0xA0000);
|
||||||
|
|
||||||
if (base != MAP_FAILED) {
|
if (base != MAP_FAILED) {
|
||||||
munmap((caddr_t)base, 4096);
|
munmap((caddr_t)base, 4096);
|
||||||
devMemFd = fd;
|
devMemFd = fd;
|
||||||
|
@ -106,7 +106,7 @@ checkDevMem(Bool warn)
|
||||||
/* Try to map a page at the VGA address */
|
/* Try to map a page at the VGA address */
|
||||||
base = mmap((caddr_t)0, 4096, PROT_READ | PROT_WRITE,
|
base = mmap((caddr_t)0, 4096, PROT_READ | PROT_WRITE,
|
||||||
MAP_FLAGS, fd, (off_t)0xA0000);
|
MAP_FLAGS, fd, (off_t)0xA0000);
|
||||||
|
|
||||||
if (base != MAP_FAILED) {
|
if (base != MAP_FAILED) {
|
||||||
munmap((caddr_t)base, 4096);
|
munmap((caddr_t)base, 4096);
|
||||||
devMemFd = fd;
|
devMemFd = fd;
|
||||||
|
@ -134,7 +134,7 @@ checkDevMem(Bool warn)
|
||||||
"\t(%s)\n%s", DEV_APERTURE, DEV_MEM, strerror(errno),
|
"\t(%s)\n%s", DEV_APERTURE, DEV_MEM, strerror(errno),
|
||||||
SYSCTL_MSG);
|
SYSCTL_MSG);
|
||||||
#endif /* __OpenBSD__ */
|
#endif /* __OpenBSD__ */
|
||||||
|
|
||||||
xf86ErrorF("\tlinear framebuffer access unavailable\n");
|
xf86ErrorF("\tlinear framebuffer access unavailable\n");
|
||||||
}
|
}
|
||||||
useDevMem = FALSE;
|
useDevMem = FALSE;
|
||||||
|
@ -228,13 +228,13 @@ xf86DisableIO()
|
||||||
{
|
{
|
||||||
if (!ExtendedEnabled)
|
if (!ExtendedEnabled)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (amd64_iopl(FALSE) == 0) {
|
if (amd64_iopl(FALSE) == 0) {
|
||||||
ExtendedEnabled = FALSE;
|
ExtendedEnabled = FALSE;
|
||||||
}
|
}
|
||||||
/* Otherwise, the X server has revoqued its root uid,
|
/* Otherwise, the X server has revoqued its root uid,
|
||||||
and thus cannot give up IO privileges any more */
|
and thus cannot give up IO privileges any more */
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -280,7 +280,7 @@ xf86SetTVOut(int mode)
|
||||||
switch (xf86Info.consType) {
|
switch (xf86Info.consType) {
|
||||||
#ifdef PCCONS_SUPPORT
|
#ifdef PCCONS_SUPPORT
|
||||||
case PCCONS:{
|
case PCCONS:{
|
||||||
|
|
||||||
if (ioctl (xf86Info.consoleFd, CONSOLE_X_TV_ON, &mode) < 0) {
|
if (ioctl (xf86Info.consoleFd, CONSOLE_X_TV_ON, &mode) < 0) {
|
||||||
xf86Msg(X_WARNING,
|
xf86Msg(X_WARNING,
|
||||||
"xf86SetTVOut: Could not set console to TV output, %s\n",
|
"xf86SetTVOut: Could not set console to TV output, %s\n",
|
||||||
|
@ -303,7 +303,7 @@ xf86SetRGBOut()
|
||||||
switch (xf86Info.consType) {
|
switch (xf86Info.consType) {
|
||||||
#ifdef PCCONS_SUPPORT
|
#ifdef PCCONS_SUPPORT
|
||||||
case PCCONS:{
|
case PCCONS:{
|
||||||
|
|
||||||
if (ioctl (xf86Info.consoleFd, CONSOLE_X_TV_OFF, 0) < 0) {
|
if (ioctl (xf86Info.consoleFd, CONSOLE_X_TV_OFF, 0) < 0) {
|
||||||
xf86Msg(X_WARNING,
|
xf86Msg(X_WARNING,
|
||||||
"xf86SetTVOut: Could not set console to RGB output, %s\n",
|
"xf86SetTVOut: Could not set console to RGB output, %s\n",
|
||||||
|
@ -332,7 +332,7 @@ _X_EXPORT void
|
||||||
xf86PrivilegedInit(void)
|
xf86PrivilegedInit(void)
|
||||||
{
|
{
|
||||||
checkDevMem(TRUE);
|
checkDevMem(TRUE);
|
||||||
|
|
||||||
pci_system_init();
|
pci_system_init();
|
||||||
pci_legacy_open_io(NULL, 0, 64*1024);
|
pci_legacy_open_io(NULL, 0, 64*1024);
|
||||||
ExtendedEnabled = TRUE; /* Will die with xf86EnableIO() */
|
ExtendedEnabled = TRUE; /* Will die with xf86EnableIO() */
|
||||||
|
|
|
@ -6,19 +6,19 @@
|
||||||
* documentation for any purpose is hereby granted without fee, provided that
|
* documentation for any purpose is hereby granted without fee, provided that
|
||||||
* the above copyright notice appear in all copies and that both that
|
* the above copyright notice appear in all copies and that both that
|
||||||
* copyright notice and this permission notice appear in supporting
|
* copyright notice and this permission notice appear in supporting
|
||||||
* documentation, and that the names of Rich Murphey and David Wexelblat
|
* documentation, and that the names of Rich Murphey and David Wexelblat
|
||||||
* not be used in advertising or publicity pertaining to distribution of
|
* not be used in advertising or publicity pertaining to distribution of
|
||||||
* the software without specific, written prior permission. Rich Murphey and
|
* the software without specific, written prior permission. Rich Murphey and
|
||||||
* David Wexelblat make no representations about the suitability of this
|
* David Wexelblat make no representations about the suitability of this
|
||||||
* software for any purpose. It is provided "as is" without express or
|
* software for any purpose. It is provided "as is" without express or
|
||||||
* implied warranty.
|
* implied warranty.
|
||||||
*
|
*
|
||||||
* RICH MURPHEY AND DAVID WEXELBLAT DISCLAIM ALL WARRANTIES WITH REGARD TO
|
* RICH MURPHEY AND DAVID WEXELBLAT DISCLAIM ALL WARRANTIES WITH REGARD TO
|
||||||
* THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
* THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
||||||
* FITNESS, IN NO EVENT SHALL RICH MURPHEY OR DAVID WEXELBLAT BE LIABLE FOR
|
* FITNESS, IN NO EVENT SHALL RICH MURPHEY OR DAVID WEXELBLAT BE LIABLE FOR
|
||||||
* ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
|
* ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
|
||||||
* RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
|
* RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
|
||||||
* CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
|
* CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
|
||||||
* CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
* CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
@ -47,8 +47,8 @@ xf86OSInitVidMem(VidMemInfoPtr pVidMem)
|
||||||
|
|
||||||
#ifdef X_PRIVSEP
|
#ifdef X_PRIVSEP
|
||||||
/*
|
/*
|
||||||
* Do all things that need root privileges early
|
* Do all things that need root privileges early
|
||||||
* and revoke those privileges
|
* and revoke those privileges
|
||||||
*/
|
*/
|
||||||
_X_EXPORT void
|
_X_EXPORT void
|
||||||
xf86PrivilegedInit(void)
|
xf86PrivilegedInit(void)
|
||||||
|
|
|
@ -48,8 +48,8 @@ xf86OSInitVidMem(VidMemInfoPtr pVidMem)
|
||||||
|
|
||||||
#ifdef X_PRIVSEP
|
#ifdef X_PRIVSEP
|
||||||
/*
|
/*
|
||||||
* Do all things that need root privileges early
|
* Do all things that need root privileges early
|
||||||
* and revoke those privileges
|
* and revoke those privileges
|
||||||
*/
|
*/
|
||||||
_X_EXPORT void
|
_X_EXPORT void
|
||||||
xf86PrivilegedInit(void)
|
xf86PrivilegedInit(void)
|
||||||
|
|
|
@ -103,12 +103,12 @@ elif host_machine.system().endswith('bsd')
|
||||||
srcs_xorg_os_support += 'bsd/i386_video.c'
|
srcs_xorg_os_support += 'bsd/i386_video.c'
|
||||||
if host_machine.system() == 'netbsd'
|
if host_machine.system() == 'netbsd'
|
||||||
os_dep += cc.find_library('x86_64')
|
os_dep += cc.find_library('x86_64')
|
||||||
elif host_machine.system() == 'openbsd'
|
elif host_machine.system() == 'secbsd'
|
||||||
os_dep += cc.find_library('amd64')
|
os_dep += cc.find_library('amd64')
|
||||||
endif
|
endif
|
||||||
elif host_machine.cpu_family() == 'x86'
|
elif host_machine.cpu_family() == 'x86'
|
||||||
srcs_xorg_os_support += 'bsd/i386_video.c'
|
srcs_xorg_os_support += 'bsd/i386_video.c'
|
||||||
if host_machine.system() == 'netbsd' or host_machine.system() == 'openbsd'
|
if host_machine.system() == 'netbsd' or host_machine.system() == 'secbsd'
|
||||||
os_dep += cc.find_library('i386')
|
os_dep += cc.find_library('i386')
|
||||||
endif
|
endif
|
||||||
elif host_machine.cpu_family() == 'arm'
|
elif host_machine.cpu_family() == 'arm'
|
||||||
|
|
|
@ -272,6 +272,7 @@ ProcAppleDRICreatePixmap(ClientPtr client)
|
||||||
xAppleDRICreatePixmapReply rep;
|
xAppleDRICreatePixmapReply rep;
|
||||||
int width, height, pitch, bpp;
|
int width, height, pitch, bpp;
|
||||||
void *ptr;
|
void *ptr;
|
||||||
|
CARD32 stringLength;
|
||||||
|
|
||||||
REQUEST_SIZE_MATCH(xAppleDRICreatePixmapReq);
|
REQUEST_SIZE_MATCH(xAppleDRICreatePixmapReq);
|
||||||
|
|
||||||
|
@ -307,6 +308,7 @@ ProcAppleDRICreatePixmap(ClientPtr client)
|
||||||
if (sizeof(rep) != sz_xAppleDRICreatePixmapReply)
|
if (sizeof(rep) != sz_xAppleDRICreatePixmapReply)
|
||||||
ErrorF("error sizeof(rep) is %zu\n", sizeof(rep));
|
ErrorF("error sizeof(rep) is %zu\n", sizeof(rep));
|
||||||
|
|
||||||
|
stringLength = rep.stringLength; /* save unswapped value */
|
||||||
if (client->swapped) {
|
if (client->swapped) {
|
||||||
swaps(&rep.sequenceNumber);
|
swaps(&rep.sequenceNumber);
|
||||||
swapl(&rep.length);
|
swapl(&rep.length);
|
||||||
|
@ -319,7 +321,7 @@ ProcAppleDRICreatePixmap(ClientPtr client)
|
||||||
}
|
}
|
||||||
|
|
||||||
WriteToClient(client, sizeof(rep), &rep);
|
WriteToClient(client, sizeof(rep), &rep);
|
||||||
WriteToClient(client, rep.stringLength, path);
|
WriteToClient(client, stringLength, path);
|
||||||
|
|
||||||
return Success;
|
return Success;
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
*or other dealings in this Software without prior written authorization
|
*or other dealings in this Software without prior written authorization
|
||||||
*from the XFree86 Project.
|
*from the XFree86 Project.
|
||||||
*
|
*
|
||||||
* Authors: Alexander Gottwald
|
* Authors: Alexander Gottwald
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifdef HAVE_XWIN_CONFIG_H
|
#ifdef HAVE_XWIN_CONFIG_H
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
*or other dealings in this Software without prior written authorization
|
*or other dealings in this Software without prior written authorization
|
||||||
*from the XFree86 Project.
|
*from the XFree86 Project.
|
||||||
*
|
*
|
||||||
* Authors: Alexander Gottwald
|
* Authors: Alexander Gottwald
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "win.h"
|
#include "win.h"
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
*or other dealings in this Software without prior written authorization
|
*or other dealings in this Software without prior written authorization
|
||||||
*from the XFree86 Project.
|
*from the XFree86 Project.
|
||||||
*
|
*
|
||||||
* Authors: Alexander Gottwald
|
* Authors: Alexander Gottwald
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifdef HAVE_XWIN_CONFIG_H
|
#ifdef HAVE_XWIN_CONFIG_H
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
*or other dealings in this Software without prior written authorization
|
*or other dealings in this Software without prior written authorization
|
||||||
*from the XFree86 Project.
|
*from the XFree86 Project.
|
||||||
*
|
*
|
||||||
* Authors: Alexander Gottwald
|
* Authors: Alexander Gottwald
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __WIN_MSG_H__
|
#ifndef __WIN_MSG_H__
|
||||||
|
|
|
@ -118,7 +118,7 @@ parse_file (FILE *file)
|
||||||
|
|
||||||
if (!file)
|
if (!file)
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
yylineno = 1;
|
yylineno = 1;
|
||||||
yyin = file;
|
yyin = file;
|
||||||
ret = yyparse ();
|
ret = yyparse ();
|
||||||
|
|
|
@ -51,7 +51,7 @@
|
||||||
/* The global pref settings */
|
/* The global pref settings */
|
||||||
WINPREFS pref;
|
WINPREFS pref;
|
||||||
|
|
||||||
/* The working menu */
|
/* The working menu */
|
||||||
static MENUPARSED menu;
|
static MENUPARSED menu;
|
||||||
|
|
||||||
/* Functions for parsing the tokens into out structure */
|
/* Functions for parsing the tokens into out structure */
|
||||||
|
@ -139,7 +139,7 @@ line: NEWLINE
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
newline_or_nada:
|
newline_or_nada:
|
||||||
| NEWLINE newline_or_nada
|
| NEWLINE newline_or_nada
|
||||||
;
|
;
|
||||||
|
|
||||||
|
@ -335,19 +335,19 @@ CloseMenu (void)
|
||||||
ErrorF("LoadPreferences: Empty menu detected\n");
|
ErrorF("LoadPreferences: Empty menu detected\n");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pref.menuItems)
|
if (pref.menuItems)
|
||||||
pref.menu = realloc (pref.menu, (pref.menuItems+1)*sizeof(MENUPARSED));
|
pref.menu = realloc (pref.menu, (pref.menuItems+1)*sizeof(MENUPARSED));
|
||||||
else
|
else
|
||||||
pref.menu = malloc (sizeof(MENUPARSED));
|
pref.menu = malloc (sizeof(MENUPARSED));
|
||||||
|
|
||||||
memcpy (pref.menu+pref.menuItems, &menu, sizeof(MENUPARSED));
|
memcpy (pref.menu+pref.menuItems, &menu, sizeof(MENUPARSED));
|
||||||
pref.menuItems++;
|
pref.menuItems++;
|
||||||
|
|
||||||
memset (&menu, 0, sizeof(MENUPARSED));
|
memset (&menu, 0, sizeof(MENUPARSED));
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
OpenIcons (void)
|
OpenIcons (void)
|
||||||
{
|
{
|
||||||
if (pref.icon != NULL) {
|
if (pref.icon != NULL) {
|
||||||
|
@ -377,7 +377,7 @@ AddIconLine (char *matchstr, char *iconfile)
|
||||||
pref.iconItems++;
|
pref.iconItems++;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
CloseIcons (void)
|
CloseIcons (void)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
|
@ -54,8 +54,8 @@ conf_data.set('_GNU_SOURCE', '1')
|
||||||
|
|
||||||
# autoconf checks for /dev/xf86 here, but the test should be based on
|
# autoconf checks for /dev/xf86 here, but the test should be based on
|
||||||
# the target, not the build system. Could we get rid of this and just
|
# the target, not the build system. Could we get rid of this and just
|
||||||
# ifdef for openbsd?
|
# ifdef for secbsd?
|
||||||
conf_data.set('HAS_APERTURE_DRV', host_machine.system() == 'openbsd' ? '1' : false)
|
conf_data.set('HAS_APERTURE_DRV', host_machine.system() == 'secbsd' ? '1' : false)
|
||||||
|
|
||||||
if get_option('input_thread') == 'false'
|
if get_option('input_thread') == 'false'
|
||||||
enable_input_thread = false
|
enable_input_thread = false
|
||||||
|
@ -98,7 +98,7 @@ conf_data.set('HAVE_DBUS', build_dbus ? '1' : false)
|
||||||
conf_data.set('CONFIG_HAL', build_hal ? '1' : false)
|
conf_data.set('CONFIG_HAL', build_hal ? '1' : false)
|
||||||
conf_data.set('SYSTEMD_LOGIND', build_systemd_logind ? '1' : false)
|
conf_data.set('SYSTEMD_LOGIND', build_systemd_logind ? '1' : false)
|
||||||
conf_data.set('NEED_DBUS', build_systemd_logind or build_hal ? '1' : false)
|
conf_data.set('NEED_DBUS', build_systemd_logind or build_hal ? '1' : false)
|
||||||
conf_data.set('CONFIG_WSCONS', host_machine.system() == 'openbsd' ? '1' : false)
|
conf_data.set('CONFIG_WSCONS', host_machine.system() == 'secbsd' ? '1' : false)
|
||||||
|
|
||||||
conf_data.set('HAVE_XSHMFENCE', xshmfence_dep.found() ? '1' : false)
|
conf_data.set('HAVE_XSHMFENCE', xshmfence_dep.found() ? '1' : false)
|
||||||
conf_data.set('WITH_LIBDRM', libdrm_required ? '1' : false)
|
conf_data.set('WITH_LIBDRM', libdrm_required ? '1' : false)
|
||||||
|
@ -298,7 +298,7 @@ if host_machine.system() == 'netbsd'
|
||||||
csrg_based = true
|
csrg_based = true
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if host_machine.system() == 'openbsd'
|
if host_machine.system() == 'secbsd'
|
||||||
supports_pcvt = true
|
supports_pcvt = true
|
||||||
supports_wscons = true
|
supports_wscons = true
|
||||||
csrg_based = true
|
csrg_based = true
|
||||||
|
@ -372,7 +372,7 @@ xorg_data.set('XSERVER_LIBPCIACCESS', get_option('pciaccess') ? '1' : false)
|
||||||
xorg_data.set_quoted('PCI_TXT_IDS_PATH', '')
|
xorg_data.set_quoted('PCI_TXT_IDS_PATH', '')
|
||||||
xorg_data.set('XSERVER_PLATFORM_BUS', build_udev_kms ? '1' : false)
|
xorg_data.set('XSERVER_PLATFORM_BUS', build_udev_kms ? '1' : false)
|
||||||
xorg_data.set('WSCONS_SUPPORT',
|
xorg_data.set('WSCONS_SUPPORT',
|
||||||
host_machine.system() == 'netbsd' or host_machine.system() == 'openbsd' ? '1' : false)
|
host_machine.system() == 'netbsd' or host_machine.system() == 'secbsd' ? '1' : false)
|
||||||
xorg_data.set('HAVE_STROPTS_H', cc.has_header('stropts.h') ? '1' : false)
|
xorg_data.set('HAVE_STROPTS_H', cc.has_header('stropts.h') ? '1' : false)
|
||||||
xorg_data.set('HAVE_SYS_KD_H', cc.has_header('sys/kd.h') ? '1' : false)
|
xorg_data.set('HAVE_SYS_KD_H', cc.has_header('sys/kd.h') ? '1' : false)
|
||||||
xorg_data.set('HAVE_SYS_VT_H', cc.has_header('sys/vt.h') ? '1' : false)
|
xorg_data.set('HAVE_SYS_VT_H', cc.has_header('sys/vt.h') ? '1' : false)
|
||||||
|
@ -385,7 +385,7 @@ elif host_machine.system() == 'netbsd'
|
||||||
if host_machine.cpu_family() == 'x86' or host_machine.cpu_family() == 'x86_64'
|
if host_machine.cpu_family() == 'x86' or host_machine.cpu_family() == 'x86_64'
|
||||||
xorg_data.set('USE_I386_IOPL', '1')
|
xorg_data.set('USE_I386_IOPL', '1')
|
||||||
endif
|
endif
|
||||||
elif host_machine.system() == 'openbsd'
|
elif host_machine.system() == 'secbsd'
|
||||||
if host_machine.cpu_family() == 'x86'
|
if host_machine.cpu_family() == 'x86'
|
||||||
xorg_data.set('USE_I386_IOPL', '1')
|
xorg_data.set('USE_I386_IOPL', '1')
|
||||||
endif
|
endif
|
||||||
|
|
|
@ -74,4 +74,6 @@ extern _X_EXPORT Bool bgNoneRoot;
|
||||||
extern _X_EXPORT Bool CoreDump;
|
extern _X_EXPORT Bool CoreDump;
|
||||||
extern _X_EXPORT Bool NoListenAll;
|
extern _X_EXPORT Bool NoListenAll;
|
||||||
|
|
||||||
|
extern _X_EXPORT Bool AllowByteSwappedClients;
|
||||||
|
|
||||||
#endif /* OPAQUE_H */
|
#endif /* OPAQUE_H */
|
||||||
|
|
10
xserver/m4/libtool.m4
vendored
10
xserver/m4/libtool.m4
vendored
|
@ -1196,7 +1196,7 @@ fi
|
||||||
# Invoke $ECHO with all args, space-separated.
|
# Invoke $ECHO with all args, space-separated.
|
||||||
func_echo_all ()
|
func_echo_all ()
|
||||||
{
|
{
|
||||||
$ECHO "$*"
|
$ECHO "$*"
|
||||||
}
|
}
|
||||||
|
|
||||||
case "$ECHO" in
|
case "$ECHO" in
|
||||||
|
@ -1638,7 +1638,7 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
|
||||||
lt_cv_sys_max_cmd_len=8192;
|
lt_cv_sys_max_cmd_len=8192;
|
||||||
;;
|
;;
|
||||||
|
|
||||||
netbsd* | freebsd* | openbsd* | secbsd* | darwin* | dragonfly*)
|
netbsd* | freebsd* | openbsd* | darwin* | dragonfly* | secbsd*)
|
||||||
# This has been around since 386BSD, at least. Likely further.
|
# This has been around since 386BSD, at least. Likely further.
|
||||||
if test -x /sbin/sysctl; then
|
if test -x /sbin/sysctl; then
|
||||||
lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
|
lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
|
||||||
|
@ -3233,7 +3233,7 @@ freebsd* | dragonfly*)
|
||||||
i*86 )
|
i*86 )
|
||||||
# Not sure whether the presence of OpenBSD here was a mistake.
|
# Not sure whether the presence of OpenBSD here was a mistake.
|
||||||
# Let's accept both of them until this is cleared up.
|
# Let's accept both of them until this is cleared up.
|
||||||
lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|SecBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
|
lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
|
||||||
lt_cv_file_magic_cmd=/usr/bin/file
|
lt_cv_file_magic_cmd=/usr/bin/file
|
||||||
lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
|
lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
|
||||||
;;
|
;;
|
||||||
|
@ -3307,7 +3307,7 @@ newos6*)
|
||||||
lt_cv_deplibs_check_method=pass_all
|
lt_cv_deplibs_check_method=pass_all
|
||||||
;;
|
;;
|
||||||
|
|
||||||
openbsd* | secbsd*)
|
openbsd*)
|
||||||
if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
|
if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
|
||||||
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
|
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
|
||||||
else
|
else
|
||||||
|
@ -5364,7 +5364,7 @@ _LT_EOF
|
||||||
*nto* | *qnx*)
|
*nto* | *qnx*)
|
||||||
;;
|
;;
|
||||||
|
|
||||||
openbsd* | secbsd*)
|
openbsd*)
|
||||||
if test -f /usr/libexec/ld.so; then
|
if test -f /usr/libexec/ld.so; then
|
||||||
_LT_TAGVAR(hardcode_direct, $1)=yes
|
_LT_TAGVAR(hardcode_direct, $1)=yes
|
||||||
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
|
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
|
||||||
|
|
2
xserver/m4/lt~obsolete.m4
vendored
2
xserver/m4/lt~obsolete.m4
vendored
|
@ -25,7 +25,7 @@
|
||||||
# included after everything else. This provides aclocal with the
|
# included after everything else. This provides aclocal with the
|
||||||
# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
|
# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
|
||||||
# because those macros already exist, or will be overwritten later.
|
# because those macros already exist, or will be overwritten later.
|
||||||
# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
|
# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
|
||||||
#
|
#
|
||||||
# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
|
# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
|
||||||
# Yes, that means every name once taken will need to remain here until
|
# Yes, that means every name once taken will need to remain here until
|
||||||
|
|
|
@ -114,6 +114,13 @@ pattern. This is the default unless -retro or -wr is specified.
|
||||||
.B \-bs
|
.B \-bs
|
||||||
disables backing store support on all screens.
|
disables backing store support on all screens.
|
||||||
.TP 8
|
.TP 8
|
||||||
|
.B \+byteswappedclients
|
||||||
|
Allow connections from clients with an endianess different to that of the server.
|
||||||
|
This is the default unless \fB\-byteswappedclients\fP is specified.
|
||||||
|
.TP 8
|
||||||
|
.B \-byteswappedclients
|
||||||
|
Prohibit connections from clients with an endianess different to that of the server.
|
||||||
|
.TP 8
|
||||||
.B \-c
|
.B \-c
|
||||||
turns off key-click.
|
turns off key-click.
|
||||||
.TP 8
|
.TP 8
|
||||||
|
|
|
@ -3,10 +3,10 @@ project('xserver', 'c',
|
||||||
'buildtype=debugoptimized',
|
'buildtype=debugoptimized',
|
||||||
'c_std=gnu99',
|
'c_std=gnu99',
|
||||||
],
|
],
|
||||||
version: '21.1.11',
|
version: '21.1.12',
|
||||||
meson_version: '>= 0.47.0',
|
meson_version: '>= 0.47.0',
|
||||||
)
|
)
|
||||||
release_date = '2024-01-16'
|
release_date = '2024-04-03'
|
||||||
|
|
||||||
add_project_arguments('-DHAVE_DIX_CONFIG_H', language: ['c', 'objc'])
|
add_project_arguments('-DHAVE_DIX_CONFIG_H', language: ['c', 'objc'])
|
||||||
cc = meson.get_compiler('c')
|
cc = meson.get_compiler('c')
|
||||||
|
|
|
@ -122,7 +122,7 @@ typedef struct _ScanLineListBlock {
|
||||||
* to scanlines() : Must be an even number
|
* to scanlines() : Must be an even number
|
||||||
*/
|
*/
|
||||||
#define NUMPTSTOBUFFER 200
|
#define NUMPTSTOBUFFER 200
|
||||||
|
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
* a few macros for the inner loops of the fill code where
|
* a few macros for the inner loops of the fill code where
|
||||||
|
|
|
@ -50,7 +50,7 @@ from The Open Group.
|
||||||
* overhead is out of the question.
|
* overhead is out of the question.
|
||||||
* See the author for a derivation if needed.
|
* See the author for a derivation if needed.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* In scan converting polygons, we want to choose those pixels
|
* In scan converting polygons, we want to choose those pixels
|
||||||
* which are inside the polygon. Thus, we add .5 to the starting
|
* which are inside the polygon. Thus, we add .5 to the starting
|
||||||
|
@ -95,7 +95,7 @@ from The Open Group.
|
||||||
} \
|
} \
|
||||||
} \
|
} \
|
||||||
}
|
}
|
||||||
|
|
||||||
#define BRESINCRPGON(d, minval, m, m1, incr1, incr2) { \
|
#define BRESINCRPGON(d, minval, m, m1, incr1, incr2) { \
|
||||||
if (m1 > 0) { \
|
if (m1 > 0) { \
|
||||||
if (d > 0) { \
|
if (d > 0) { \
|
||||||
|
@ -117,7 +117,7 @@ from The Open Group.
|
||||||
} \
|
} \
|
||||||
} \
|
} \
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This structure contains all of the information needed
|
* This structure contains all of the information needed
|
||||||
* to run the bresenham algorithm.
|
* to run the bresenham algorithm.
|
||||||
|
|
|
@ -109,7 +109,7 @@ end of the line, we will find the largest number of Y steps that
|
||||||
satisfies the inequality. In that case, since we are representing
|
satisfies the inequality. In that case, since we are representing
|
||||||
the Y steps as (dy - N), we will actually want to solve for the
|
the Y steps as (dy - N), we will actually want to solve for the
|
||||||
smallest N in that equation.
|
smallest N in that equation.
|
||||||
|
|
||||||
Case 1: X major, starting X coordinate moved by M steps
|
Case 1: X major, starting X coordinate moved by M steps
|
||||||
|
|
||||||
-2dx <= 2Mdy - 2Ndx - dx - B < 0
|
-2dx <= 2Mdy - 2Ndx - dx - B < 0
|
||||||
|
@ -157,7 +157,7 @@ steps, so we want the highest N, so we use the < inequality:
|
||||||
= floor((2Mdy + dx + B + 2dx - 1) / 2dx) - 1
|
= floor((2Mdy + dx + B + 2dx - 1) / 2dx) - 1
|
||||||
= floor((2Mdy + dx + B + 2dx - 1 - 2dx) / 2dx)
|
= floor((2Mdy + dx + B + 2dx - 1 - 2dx) / 2dx)
|
||||||
= floor((2Mdy + dx + B - 1) / 2dx)
|
= floor((2Mdy + dx + B - 1) / 2dx)
|
||||||
|
|
||||||
Case 3: Y major, starting X coordinate moved by M steps
|
Case 3: Y major, starting X coordinate moved by M steps
|
||||||
|
|
||||||
-2dy <= 2Ndx - 2Mdy - dy - B < 0
|
-2dy <= 2Ndx - 2Mdy - dy - B < 0
|
||||||
|
@ -203,7 +203,7 @@ Same analysis as Case 4, but we want the smallest number of Y steps
|
||||||
which means the largest N, so we use the <= inequality:
|
which means the largest N, so we use the <= inequality:
|
||||||
|
|
||||||
N = floor((2Mdy + dy - B) / 2dx)
|
N = floor((2Mdy + dy - B) / 2dx)
|
||||||
|
|
||||||
Now let's try the Y coordinates, we have the same 4 cases.
|
Now let's try the Y coordinates, we have the same 4 cases.
|
||||||
|
|
||||||
Case 5: X major, starting Y coordinate moved by N steps
|
Case 5: X major, starting Y coordinate moved by N steps
|
||||||
|
@ -248,7 +248,7 @@ Same derivations as Case 6, but we want the smallest # of X steps
|
||||||
which means the largest M, so use the <= inequality:
|
which means the largest M, so use the <= inequality:
|
||||||
|
|
||||||
M = floor((2Ndx + dx - B) / 2dy)
|
M = floor((2Ndx + dx - B) / 2dy)
|
||||||
|
|
||||||
Case 7: Y major, starting Y coordinate moved by N steps
|
Case 7: Y major, starting Y coordinate moved by N steps
|
||||||
|
|
||||||
-2dy <= 2Ndx - 2Mdy - dy - B < 0
|
-2dy <= 2Ndx - 2Mdy - dy - B < 0
|
||||||
|
@ -293,7 +293,7 @@ steps which means the largest M, so we use the < inequality:
|
||||||
= floor((2Ndx + dy + B + 2dy - 1) / 2dy) - 1
|
= floor((2Ndx + dy + B + 2dy - 1) / 2dy) - 1
|
||||||
= floor((2Ndx + dy + B + 2dy - 1 - 2dy) / 2dy)
|
= floor((2Ndx + dy + B + 2dy - 1 - 2dy) / 2dy)
|
||||||
= floor((2Ndx + dy + B - 1) / 2dy)
|
= floor((2Ndx + dy + B - 1) / 2dy)
|
||||||
|
|
||||||
So, our equations are:
|
So, our equations are:
|
||||||
|
|
||||||
1: X major move x1 to x1+M floor((2Mdy + dx - B) / 2dx)
|
1: X major move x1 to x1+M floor((2Mdy + dx - B) / 2dx)
|
||||||
|
|
|
@ -13,4 +13,4 @@ EXTRA_DIST = \
|
||||||
rootless.h \
|
rootless.h \
|
||||||
rootlessCommon.h \
|
rootlessCommon.h \
|
||||||
rootlessConfig.h \
|
rootlessConfig.h \
|
||||||
rootlessWindow.h
|
rootlessWindow.h
|
||||||
|
|
|
@ -2,7 +2,7 @@ noinst_LTLIBRARIES = libsync.la
|
||||||
|
|
||||||
AM_CFLAGS = $(DIX_CFLAGS)
|
AM_CFLAGS = $(DIX_CFLAGS)
|
||||||
|
|
||||||
AM_CPPFLAGS =
|
AM_CPPFLAGS =
|
||||||
|
|
||||||
if XORG
|
if XORG
|
||||||
sdk_HEADERS = misync.h misyncstr.h misyncshm.h misyncfd.h
|
sdk_HEADERS = misync.h misyncstr.h misyncshm.h misyncfd.h
|
||||||
|
|
|
@ -71,7 +71,7 @@ os_c_args = []
|
||||||
if get_option('xres')
|
if get_option('xres')
|
||||||
# Only the XRes extension cares about the client ID.
|
# Only the XRes extension cares about the client ID.
|
||||||
os_c_args += '-DCLIENTIDS'
|
os_c_args += '-DCLIENTIDS'
|
||||||
if host_machine.system() == 'openbsd'
|
if host_machine.system() == 'secbsd'
|
||||||
os_dep += cc.find_library('kvm')
|
os_dep += cc.find_library('kvm')
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
|
@ -189,6 +189,8 @@ Bool CoreDump;
|
||||||
|
|
||||||
Bool enableIndirectGLX = FALSE;
|
Bool enableIndirectGLX = FALSE;
|
||||||
|
|
||||||
|
Bool AllowByteSwappedClients = TRUE;
|
||||||
|
|
||||||
#ifdef PANORAMIX
|
#ifdef PANORAMIX
|
||||||
Bool PanoramiXExtensionDisabledHack = FALSE;
|
Bool PanoramiXExtensionDisabledHack = FALSE;
|
||||||
#endif
|
#endif
|
||||||
|
@ -535,6 +537,8 @@ UseMsg(void)
|
||||||
ErrorF("-br create root window with black background\n");
|
ErrorF("-br create root window with black background\n");
|
||||||
ErrorF("+bs enable any backing store support\n");
|
ErrorF("+bs enable any backing store support\n");
|
||||||
ErrorF("-bs disable any backing store support\n");
|
ErrorF("-bs disable any backing store support\n");
|
||||||
|
ErrorF("+byteswappedclients Allow clients with endianess different to that of the server\n");
|
||||||
|
ErrorF("-byteswappedclients Prohibit clients with endianess different to that of the server\n");
|
||||||
ErrorF("-c turns off key-click\n");
|
ErrorF("-c turns off key-click\n");
|
||||||
ErrorF("c # key-click volume (0-100)\n");
|
ErrorF("c # key-click volume (0-100)\n");
|
||||||
ErrorF("-cc int default color visual class\n");
|
ErrorF("-cc int default color visual class\n");
|
||||||
|
@ -731,6 +735,11 @@ ProcessCommandLine(int argc, char *argv[])
|
||||||
else
|
else
|
||||||
UseMsg();
|
UseMsg();
|
||||||
}
|
}
|
||||||
|
else if (strcmp(argv[i], "-byteswappedclients") == 0) {
|
||||||
|
AllowByteSwappedClients = FALSE;
|
||||||
|
} else if (strcmp(argv[i], "+byteswappedclients") == 0) {
|
||||||
|
AllowByteSwappedClients = TRUE;
|
||||||
|
}
|
||||||
else if (strcmp(argv[i], "-br") == 0) /* default */
|
else if (strcmp(argv[i], "-br") == 0) /* default */
|
||||||
party_like_its_1989 = FALSE;
|
party_like_its_1989 = FALSE;
|
||||||
else if (strcmp(argv[i], "+bs") == 0)
|
else if (strcmp(argv[i], "+bs") == 0)
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
* The above copyright notice and this permission notice (including the next
|
* The above copyright notice and this permission notice (including the next
|
||||||
* paragraph) shall be included in all copies or substantial portions of the
|
* paragraph) shall be included in all copies or substantial portions of the
|
||||||
* Software.
|
* Software.
|
||||||
*
|
*
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||||
|
|
|
@ -2071,6 +2071,6 @@ RRHasScanoutPixmap(ScreenPtr pScreen)
|
||||||
if (crtc->scanout_pixmap)
|
if (crtc->scanout_pixmap)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -171,7 +171,7 @@ static DevPrivateKeyRec RecordClientPrivateKeyRec;
|
||||||
*/
|
*/
|
||||||
#define RecordClientPrivate(_pClient) (RecordClientPrivatePtr) \
|
#define RecordClientPrivate(_pClient) (RecordClientPrivatePtr) \
|
||||||
dixLookupPrivate(&(_pClient)->devPrivates, RecordClientPrivateKey)
|
dixLookupPrivate(&(_pClient)->devPrivates, RecordClientPrivateKey)
|
||||||
|
|
||||||
/***************************************************************************/
|
/***************************************************************************/
|
||||||
|
|
||||||
/* global list of all contexts */
|
/* global list of all contexts */
|
||||||
|
@ -210,7 +210,7 @@ RecordFindContextOnAllContexts(RecordContextPtr pContext)
|
||||||
}
|
}
|
||||||
return -1;
|
return -1;
|
||||||
} /* RecordFindContextOnAllContexts */
|
} /* RecordFindContextOnAllContexts */
|
||||||
|
|
||||||
/***************************************************************************/
|
/***************************************************************************/
|
||||||
|
|
||||||
/* RecordFlushReplyBuffer
|
/* RecordFlushReplyBuffer
|
||||||
|
@ -444,7 +444,7 @@ RecordFindClientOnContext(RecordContextPtr pContext,
|
||||||
*
|
*
|
||||||
* Side Effects:
|
* Side Effects:
|
||||||
* The big request is recorded with the correct length field re-inserted.
|
* The big request is recorded with the correct length field re-inserted.
|
||||||
*
|
*
|
||||||
* Note: this function exists mainly to make RecordARequest smaller.
|
* Note: this function exists mainly to make RecordARequest smaller.
|
||||||
*/
|
*/
|
||||||
static void
|
static void
|
||||||
|
@ -842,7 +842,7 @@ RecordFlushAllContexts(CallbackListPtr *pcbl,
|
||||||
* If oneclient is zero, recording hooks needed for all clients and
|
* If oneclient is zero, recording hooks needed for all clients and
|
||||||
* protocol on the RCAP are installed. If oneclient is non-zero,
|
* protocol on the RCAP are installed. If oneclient is non-zero,
|
||||||
* only those hooks needed for the specified client are installed.
|
* only those hooks needed for the specified client are installed.
|
||||||
*
|
*
|
||||||
* Client requestVectors may be altered. numEnabledRCAPs will be
|
* Client requestVectors may be altered. numEnabledRCAPs will be
|
||||||
* incremented if oneclient == 0. Callbacks may be added to
|
* incremented if oneclient == 0. Callbacks may be added to
|
||||||
* various callback lists.
|
* various callback lists.
|
||||||
|
@ -927,7 +927,7 @@ RecordInstallHooks(RecordClientsAndProtocolPtr pRCAP, XID oneclient)
|
||||||
* If oneclient is zero, recording hooks needed for all clients and
|
* If oneclient is zero, recording hooks needed for all clients and
|
||||||
* protocol on the RCAP may be uninstalled. If oneclient is non-zero,
|
* protocol on the RCAP may be uninstalled. If oneclient is non-zero,
|
||||||
* only those hooks needed for the specified client may be uninstalled.
|
* only those hooks needed for the specified client may be uninstalled.
|
||||||
*
|
*
|
||||||
* Client requestVectors may be altered. numEnabledRCAPs will be
|
* Client requestVectors may be altered. numEnabledRCAPs will be
|
||||||
* decremented if oneclient == 0. Callbacks may be deleted from
|
* decremented if oneclient == 0. Callbacks may be deleted from
|
||||||
* various callback lists.
|
* various callback lists.
|
||||||
|
@ -1251,7 +1251,7 @@ RecordCanonicalizeClientSpecifiers(XID *pClientspecs, int *pNumClientspecs,
|
||||||
*pNumClientspecs = numClients;
|
*pNumClientspecs = numClients;
|
||||||
return pClientspecs;
|
return pClientspecs;
|
||||||
} /* RecordCanonicalizeClientSpecifiers */
|
} /* RecordCanonicalizeClientSpecifiers */
|
||||||
|
|
||||||
/****************************************************************************/
|
/****************************************************************************/
|
||||||
|
|
||||||
/* stuff for RegisterClients */
|
/* stuff for RegisterClients */
|
||||||
|
@ -1933,7 +1933,7 @@ ProcRecordUnregisterClients(ClientPtr client)
|
||||||
free(pCanonClients);
|
free(pCanonClients);
|
||||||
return Success;
|
return Success;
|
||||||
} /* ProcRecordUnregisterClients */
|
} /* ProcRecordUnregisterClients */
|
||||||
|
|
||||||
/****************************************************************************/
|
/****************************************************************************/
|
||||||
|
|
||||||
/* stuff for GetContext */
|
/* stuff for GetContext */
|
||||||
|
@ -2771,7 +2771,7 @@ RecordAClientStateChange(CallbackListPtr *pcbl, void *nulldata,
|
||||||
*
|
*
|
||||||
* Side Effects:
|
* Side Effects:
|
||||||
* Performs any cleanup needed by RECORD at server shutdown time.
|
* Performs any cleanup needed by RECORD at server shutdown time.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
static void
|
static void
|
||||||
RecordCloseDown(ExtensionEntry * extEntry)
|
RecordCloseDown(ExtensionEntry * extEntry)
|
||||||
|
|
|
@ -2433,7 +2433,7 @@ _XkbSetMapCheckLength(xkbSetMapReq *req)
|
||||||
}
|
}
|
||||||
/* actions */
|
/* actions */
|
||||||
if (req->present & XkbKeyActionsMask) {
|
if (req->present & XkbKeyActionsMask) {
|
||||||
_add_check_len(req->totalActs * sz_xkbActionWireDesc
|
_add_check_len(req->totalActs * sz_xkbActionWireDesc
|
||||||
+ XkbPaddedSize(req->nKeyActs));
|
+ XkbPaddedSize(req->nKeyActs));
|
||||||
}
|
}
|
||||||
/* behaviours */
|
/* behaviours */
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
dnl Copyright 2005 Red Hat, Inc
|
dnl Copyright 2005 Red Hat, Inc
|
||||||
dnl
|
dnl
|
||||||
dnl Permission to use, copy, modify, distribute, and sell this software and its
|
dnl Permission to use, copy, modify, distribute, and sell this software and its
|
||||||
dnl documentation for any purpose is hereby granted without fee, provided that
|
dnl documentation for any purpose is hereby granted without fee, provided that
|
||||||
dnl the above copyright notice appear in all copies and that both that
|
dnl the above copyright notice appear in all copies and that both that
|
||||||
dnl copyright notice and this permission notice appear in supporting
|
dnl copyright notice and this permission notice appear in supporting
|
||||||
dnl documentation.
|
dnl documentation.
|
||||||
dnl
|
dnl
|
||||||
dnl The above copyright notice and this permission notice shall be included
|
dnl The above copyright notice and this permission notice shall be included
|
||||||
dnl in all copies or substantial portions of the Software.
|
dnl in all copies or substantial portions of the Software.
|
||||||
dnl
|
dnl
|
||||||
dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
@ -16,12 +16,12 @@ dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
||||||
dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
||||||
dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||||
dnl OTHER DEALINGS IN THE SOFTWARE.
|
dnl OTHER DEALINGS IN THE SOFTWARE.
|
||||||
dnl
|
dnl
|
||||||
dnl Except as contained in this notice, the name of the copyright holders shall
|
dnl Except as contained in this notice, the name of the copyright holders shall
|
||||||
dnl not be used in advertising or otherwise to promote the sale, use or
|
dnl not be used in advertising or otherwise to promote the sale, use or
|
||||||
dnl other dealings in this Software without prior written authorization
|
dnl other dealings in this Software without prior written authorization
|
||||||
dnl from the copyright holders.
|
dnl from the copyright holders.
|
||||||
dnl
|
dnl
|
||||||
|
|
||||||
# XORG_DRIVER_CHECK_EXT(MACRO, PROTO)
|
# XORG_DRIVER_CHECK_EXT(MACRO, PROTO)
|
||||||
# --------------------------
|
# --------------------------
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue