Commit Graph

7502 Commits

Author SHA1 Message Date
matthieu
639908544d Update to fonttosfnt 1.2.3 2024-01-28 13:59:43 +00:00
matthieu
9ad627f7b7 Update to xserver 21.1.11.
All the security fixes have already been committed.
2024-01-28 09:58:04 +00:00
claudio
553e6668eb Rewrite the privsep imsg code using the new ibuf API.
Properly wrap the imsg_read() / imsg_get() calls in a while loop.
Do not initialize the fd of the struct ibuf to -1 (this is already done).
Rewrite the imsg parser using imsg_get_ibuf(), ibuf_get and a local new
function ibuf_get_string() which abstracts the extraction of the strings
from the ibuf.
Properly clear and free the user, pass and style variables.

OK tb@ matthieu@
2024-01-22 10:13:34 +00:00
kettenis
669d3297eb WSDISPLAY_TYPE_RKDRM was renamed to WSDISPLAY_TYPE_KMS 2024-01-19 17:52:03 +00:00
matthieu
e3932c6814 update 2024-01-16 13:14:26 +00:00
matthieu
a631224042 Multiple issues have been found in the X server and Xwayland
implementations:

1) CVE-2023-6816 can be triggered by passing an invalid array index to
DeviceFocusEvent or ProcXIQueryPointer.

2) CVE-2024-0229 can be triggered if a device has both a button and a
key class and zero buttons.

3) CVE-2024-21885 can be triggered if a device with a given ID was
removed and a new device with the same ID added both in the same
operation.

4) CVE-2024-21886 can be triggered by disabling a master device with
disabled slave devices.

5) CVE-2024-0409 can be triggered by enabling SELinux
xserver_object_manager and running a client.

6) CVE-2024-0408 can be triggered by enabling SELinux
xserver_object_manager and creating a GLX PBuffer.
2024-01-16 12:34:23 +00:00
matthieu
6367cbe266 Update xserver to 21.1.10.
The security fixes have already been committed.
2024-01-07 11:11:57 +00:00
matthieu
70f838e990 update 2024-01-05 07:05:51 +00:00
millert
975ee75e4b Substitute "100" for __default_termid__ instead of "vt100".
The "vt" prefix is optional for the default terminal ID.
Fixes an instance of "vtvt100" in the installed man page.
OK matthieu@
2023-12-19 20:31:21 +00:00
claudio
77f3ff527f Replace another memset() with explicit_bzero() since the goal is the reason
why we have explicit_bzero().
OK matthieu@
2023-12-14 09:46:10 +00:00
claudio
f6e6877b93 Use proper len in strndup() call for the style argument.
OK matthieu@
2023-12-14 09:44:15 +00:00
matthieu
f33da8b94d The previous fix from X.Org was incorrect. This fixes it.
Xi: allocate enough XkbActions for our buttons
CVE-2023-6377
2023-12-13 06:34:18 +00:00
matthieu
679d2a4fc6 randr: avoid integer truncation in length check of ProcRRChange*Property
CVE-2023-6478
2023-12-13 06:21:57 +00:00
matthieu
1df2839930 Xi: allocate enough XkbActions for our buttons
CVE-2023-6377
2023-12-13 06:20:16 +00:00
jsg
0eabb5c60c r600/sfn: Don't try to re-use iterators when the set is made empty
From Gert Wollny
c13de0509c43f9b9764dc939aa64fe70c6a80870 in mainline Mesa

fixes games/xonotic crash on r600 reported by edd@ on bugs@
2023-12-01 07:56:04 +00:00
matthieu
ccdae98fc7 Add group handling to match fbtab(5). Suggested by and ok aja@ 2023-11-10 18:49:21 +00:00
jsg
e200c394d8 meson: use llvm-config instead of cmake to fix linking errors with meson 1.2.1
From Marek Olsak
d11900d5e76922790de90ebfb89f918673759a88 in mainline Mesa
2023-11-10 03:59:40 +00:00
jsg
1580297f05 link libgbm with xrandr-xcb
fixes graphics/clutter/cogl build failure reported by tb@
2023-11-03 00:58:54 +00:00
jsg
414c46eefe update 2023-11-02 06:09:39 +00:00
jsg
3c32459578 don't warn when file descriptor equality is unknown
linux uses kcmp(2) with KCMP_FILE, we have no equivalent
2023-11-02 06:00:03 +00:00
jsg
ff8d3c99f3 sync 2023-11-02 04:55:01 +00:00
jsg
4f0d84743f Merge Mesa 23.1.9 2023-11-02 04:53:12 +00:00
jsg
60059fee64 Import Mesa 23.1.9 2023-11-02 04:31:01 +00:00
matthieu
6923e6de61 update 2023-10-29 17:29:07 +00:00
matthieu
a812a0d861 Update to libXrandr 1.5.4 2023-10-29 17:11:00 +00:00
matthieu
f9c3f64c48 Update to xserver 21.1.9.
All the security patches have already been committed.
Udated autoconf to 2.71 explains the large build infrastructure diff.
2023-10-29 16:45:32 +00:00
matthieu
b9d2fd7454 Update to xorgproto 2023.2 2023-10-29 16:17:21 +00:00
matthieu
39b5220750 Fix several input validation errors in the X server
CVE-2023-5367 CVE-2023-5380 CVE-2023-5574
2023-10-25 05:16:39 +00:00
matthieu
2e58678ea2 sync 2023-10-17 13:08:36 +00:00
matthieu
500b475d35 Bump major version after libXpm bump 2023-10-17 13:08:08 +00:00
matthieu
2191a1c8c3 Update libXpm to version 3.5.17. ok tb@ 2023-10-17 13:07:33 +00:00
matthieu
92d2f37a1d update 2023-10-12 19:30:50 +00:00
bluhm
3f38130026 Fix several input validation errors in libX11 and libXpm.
CVE-2023-43785 CVE-2023-43786 CVE-2023-43787 CVE-2023-43788 CVE-2023-43789
2023-10-03 15:55:58 +00:00
matthieu
d65f6ec688 Fix out of bounds write in glamor_xv_query_image_attributes for NV12
image format. This is a format with num_planes == 2, so we have only 2
elements in offsets[] and pitches[].

Bug found by otto@ using his strict malloc checking.
2023-09-20 18:27:00 +00:00
matthieu
fb763cc6fe Revert previous:
unbreak build with clang-16 by fixing up function definitions to match
the whole CARD64 vs uint64_t issue needs more thinking.
Suggested by kettenis@
2023-09-08 05:44:27 +00:00
matthieu
f7753c17ad Revert previous. Needs more thinking. suggested by kettenis@ 2023-09-08 05:40:10 +00:00
matthieu
50e9bfdb05 Fix the build after recent CARD64 / unsigned long fises for llvm 16
There are many places in X drivers where CARD64 is used mixed with uint64_t
and CARD32 mixed with uint32_t.
Initially the CARD* types were only meant to be used in the X protocol
definition and implementation. Later they got used in driver for fixed-
length unsigned integers as synonyms for uintxx_t types.
Unfortunatly on OpenBSD the definition of uint64_t and CARD64 don't match.
So take the bull by the horns and fix the CARDxx definitions using the
corresponding uintxx_t types from stdint.h.
2023-09-07 21:54:21 +00:00
robert
5ab3ec55fb unbreak build with clang-16 by not using non-existent functions and by
using correct types where needed; this also removes some unnecessary casts
and some ancient compat defines

parts from and ok jsg@
2023-09-07 09:13:51 +00:00
matthieu
763e4f241a fix libxcvt.pc 2023-09-06 20:36:50 +00:00
robert
09bc32815c unbreak build with clang-16 by fixing up function definitions to match
our uint64_t is an unsinged long long, but CARD64 is defined as unsigned long
so the function pointer types in both glamor and xf86-video-amdgpu were
mismatched and clang-16 treats that as an error

ok matthieu@
2023-09-06 11:42:37 +00:00
jsg
60273ffa39 include signal.h for kill(2)
Remove an ifdef that prevented this.  signal.h is part of posix
and dtucker@ notes OpenSSH portable uses it without ifdefs.

ok matthieu@ robert@
2023-09-06 09:29:25 +00:00
robert
6a599fd2aa fix ISO C++17 does not allow 'register' storage class specifier error with clang16
pulled from upstream: https://gitlab.freedesktop.org/mesa/glu/-/merge_requests/10

ok jsg@
2023-09-05 15:35:17 +00:00
matthieu
4c4398b2e9 Avoid close(-1). ok miod@
wsClose() is called twice on X server exit, so this test is needed to
avoid calling close a 2nd time with -1.
2023-08-12 16:48:44 +00:00
miod
a012b5de33 Make sure we don't close(-1); buglet introduced in 1.26.
ok matthieu@
2023-08-12 16:16:25 +00:00
aoyama
849b02b8d8 Support 8bpp X server on LUNA.
LUNA's frame buffer is 'planar' type, not packed pixel. So use
shadowUpdateAfb8 as shadow framebuffer procedure to work 8bpp X
server.

It took 10 years to make X server colored on LUNA.

Originally inspired by NetBSD/amiga.

ok miod@
2023-08-04 23:49:45 +00:00
aoyama
dd4313439f Add pad_to_double() when the function allocates memories for 'double'
internally.

The functions wireToRawEvent() and copyRawEvent() get memories first,
then allocate memory blocks sequentially for several objects include
'double' from there.

On m88k, the memory area for 'double' should be 8-byte aligned, but
sizeof(XIRawEvent) is 60 and sizeof(out->valuators.mask_len) is 8.
In this case, allocated 'double' memory was not 8-byte aligned.

Because of this, 'xeyes' on luna88k was aborted with Bus Error right
after moving mouse for several years with sys/arch/m88k/m88k/trap.c
r.127.

Tested by me on luna88k, ok matthieu@
2023-08-02 13:57:24 +00:00
aoyama
16c1375008 Fix mmap'ing size for LUNA framebuffer.
LUNA's video memory has 'linebytes * fPtr->info.height' bytes per 1
plane and the real visible area begins at 'offset' within that video
memory area, so it does not need to add 'offset' when mmap'ing video
memory.

Noticed by nono emulator.

ok miod@
2023-08-01 11:06:13 +00:00
okan
cd47a6bf03 Allow cwm(1) to cycle through windows of the same window class as the
active window; default key binding to M-grave, respectively Alt-Tilde,
like other window managers have as well.

from Simon Dassow
2023-07-20 14:39:34 +00:00
matthieu
508791166c fix drmGetMinorNameForFD(). tweaks and ok jsg@.
For the gpu n, the main device node is /dev/dri/card<n> and the
render device node is /dev/dri/renderD<n+drmGetMinorBase()> not
/dev/dri/renderD<n>
and miod@ checked that no port should be affected.
2023-07-06 07:21:30 +00:00
tb
93198764fc Disable neon asm on aarch64 to unbreak the build
with/ok matthieu
2023-07-05 15:52:50 +00:00