Commit Graph

1199 Commits

Author SHA1 Message Date
jsg
6cd42bcb24 Merge Mesa 20.1.6 2020-08-26 06:02:31 +00:00
jsg
241b1c1308 Import Mesa 20.1.6 2020-08-26 05:26:37 +00:00
matthieu
c79b35190f Fix an integer overflow in init_om() that could lead to a double free.
Reported by Jayden Rivers.
2020-08-25 15:39:58 +00:00
matthieu
bb74146ca2 Fix a bug where some input clients can't connect to the input server.
FreeBSD bugzilla reference:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=248549
2020-08-20 19:12:48 +00:00
matthieu
4c672aa51a Merge from upstream X.Org : Fix size calculation in _XimAttributeToValue
The check here guards the read below.

For `XimType_XIMStyles`, these are `num` of `CARD32` and for
`XimType_XIMHotKeyTriggers` these are `num` of `XIMTRIGGERKEY` ref[1]
which is defined as 3 x `CARD32`.  (There are data after the
`XIMTRIGGERKEY` according to the spec but they are not read by this
function and doesn't need to be checked.)

The old code here used the native datatype size instead of the wire
protocol size causing the check to always fail.

Also fix the size calculation for the header (size). It is 2 x CARD16
for both types despite the unused `CARD16` for `XimType_XIMStyles`.

This fixes a regression caused by previous commit.
2020-08-06 14:28:54 +00:00
visa
587f130e27 Fix Mesa build with clang 10 on mips64.
On mips64, the compiler does not allow use of non-zero argument with
__builtin_frame_address(). However, the returned frame address is only
used when PIPE_ARCH_X86 is defined. The compile error can be avoided
by making #ifdef PIPE_ARCH_X86 cover the getting of frame address too.

The argument checking of __builtin_frame_address() has been present
as a debug assert in clang 8. In clang 10, there is a proper runtime
check for the argument. This is why the build has not failed before.

OK jsg@
2020-08-01 03:51:31 +00:00
matthieu
f22a219d59 Fixes for Heap corruption in the X input method client in libX11
CVE-2020-14344

These where reported to X.Org and patches proposed by Todd Carson.
Thanks.
2020-07-31 13:53:24 +00:00
matthieu
c7cbd7e332 Fix SHARED_LIBS 2020-07-19 17:10:17 +00:00
matthieu
722049b7bf Unlink libxbui from the build. ok jsg@ 2020-07-08 20:01:53 +00:00
matthieu
6dd6f885f2 Update to freetype 2.10.2. Tested by krw@ and myself.
Adds supprot for WOFF2 fonts. No visible API/ABI changes.
2020-06-27 09:06:07 +00:00
jsg
cb3c6b9276 llvmpipe: use LLVM version string instead of re-computing it
From Eric Engestrom
7f5ef97a07d4054efb96f0d644344644023af82c in Mesa git

fixes llvmpipe renderer string showing "LLVM 16.0" with LLVM 10
2020-06-18 11:45:13 +00:00
jsg
7b35d83e06 ac: fix build with recent LLVM
from Samuel Pitoiset
ee9811a0bb86d3d75fafeece368f6182048807d0 in mainline Mesa
2020-06-16 10:44:59 +00:00
matthieu
8ff49d974a Update to libXxf86dga 1.1.5 2020-05-16 09:47:20 +00:00
matthieu
bf55aa2b59 Update to libXrandr 1.5.2 2020-05-16 09:45:24 +00:00
matthieu
0ed5a7f139 Update to libxcb 1.14 and xcb-proto 1.14. ok tb@ 2020-05-16 08:49:00 +00:00
kettenis
b8fd44900b Remove #ifdef that doesn't make sense anymore; extend clang workaround to
conver __sync_val_compare_and_swap.

ok jsg@
2020-04-03 10:06:14 +00:00
kettenis
cd2d30e6df Make this build on clang architectures that don't have 64-bit atomic
instructions.  Clang doesn't allow redeclaration (and therefore
redefinition) of the __sync_* builtins.  Use #pragma redefine_extname
to work around that restriction.  Clang also turns __sync_add_and_fetch
into __sync_fetch_and_add (and __sync_sub_and_fetch into
__sync_fetch_and_sub) in certain cases, so provide these functions as
well.

ok jsg@
2020-04-03 07:26:18 +00:00
jsg
d1d3f7dcb4 test for 32 bit atomic builtins was incorrectly testing for 64 bit atomics
noticed when going over a macppc clang build error reported by deraadt@
2020-04-03 01:58:40 +00:00
jsg
4706129d11 add mips64, mips64el and powerpc to the list of archs with -O0 in CFLAGS
builds were running out of memory

requested by deraadt@
2020-02-21 07:23:09 +00:00
jsg
12feee4512 regen 2020-02-20 02:59:02 +00:00
jsg
e374dad6a5 use futexes in Mesa on archs with atomics
tested by matthieu@ naddy@ and myself
2020-02-20 02:55:46 +00:00
matthieu
8e89b73ce9 Add sanity checks to futex_wait()
- handle the NULL timeout pointer case
- avoid negative cases.

Suggested by cheloha@ ok cheloha@, jsg@
2020-02-05 07:26:15 +00:00
matthieu
514c5b7b09 Fix absolute to relative timeout computation. ok jsg@, mpi@ 2020-02-04 18:40:21 +00:00
jca
5c4fe3d884 Zap stray #warning introduced in last commit
Grrr, sorry about that.
2020-01-30 13:52:30 +00:00
jca
704a56b63d Better checks for static_assert availability
When not in c++ or c11 mode:
- check for _Static_assert support in clang with __has_extension
- gcc implements _Static_assert starting with 4.6.0
- as a fallback, use a forward decl instead of ((void)0) so that
  static_assert can be used at file scope (scope issue pointed out by
  guenther@)

ok jsg@
2020-01-30 13:21:13 +00:00
jca
8344f41b9b Avoid _Static_assert in Mesa/libEGL on non-clang archs
Temporary workaround while we find a better solution.
Linking errors in ports reported by cwen@, "Please commit" jsg@
2020-01-28 14:25:30 +00:00
matthieu
f3fa3831bb Update to libepoxy 1.5.4. ok jsg@ 2020-01-26 13:45:49 +00:00
jsg
d37d5f3d84 fix some things which got broken in merge 2020-01-22 03:34:13 +00:00
jsg
c0a649c02f add files generated by python scripts which stopped being shipped with
distfiles when upstream removed autotools
2020-01-22 03:07:41 +00:00
jsg
75490c6cdf add back autotools files removed upstream 2020-01-22 03:02:59 +00:00
jsg
2796e1e6a2 Merge Mesa 19.2.8 2020-01-22 02:49:17 +00:00
jsg
18af3bcac6 Import Mesa 19.2.8 2020-01-22 02:07:15 +00:00
matthieu
6cb0617196 Oops fix previous. 2020-01-14 21:18:04 +00:00
matthieu
b9ee46e1d5 Remove support for XA_IP_ADDRESS from XmuConvertStandardSelection()
This cause problems with pledged applications like xterm, as reported by
Benjamin Baier and also lacks support for IPv6 as shown in
Xorg bug #7611 https://bugs.freedesktop.org/show_bug.cgi?id=7611

Discussed with jca@ and deraadt@ and submitted upstreams
2020-01-14 21:01:32 +00:00
matthieu
6869a5f294 Update to libXmu 1.1.3 2020-01-14 20:58:31 +00:00
matthieu
b7be776563 Update to libXt 1.2.0. Tested by tb@ 2020-01-14 20:48:59 +00:00
matthieu
cecb53bbe8 Update to libXpm 3.5.13. 2020-01-04 18:00:46 +00:00
matthieu
af3df7cdfd Update to libxkbfile 1.1.0. Tested by krw@ and naddy@ 2020-01-04 17:58:47 +00:00
matthieu
a72dcdf233 Update to libXvMC 1.0.12. Tested by krw@ and naddy@ 2020-01-04 17:57:39 +00:00
matthieu
10e0196fe9 Update to libXi 1.7.10. Tested by krw@ and naddy@ 2020-01-04 17:56:26 +00:00
matthieu
bc231106f4 Uppdate to libX11 1.6.9. Tested by krw@ and naddy@ 2020-01-04 17:55:16 +00:00
matthieu
6fa14ff265 Update to libXfont2 2.0.4 2019-12-14 14:57:44 +00:00
jsg
529ec772d8 regen 2019-12-07 03:10:09 +00:00
jsg
d3074235e2 build Mesa with _ISOC11_SOURCE for c11 visibility
autoconf function tests run without --std and have c11 visibility
timespec_get(3), a c11 function is found this way.

With gcc < 4.6 Mesa will build with --std=gnu99 with clang it will
build with --std=c99 and timespec_get() will no longer be visibile.
Further complicating things gcc 4.2 does not recognise --std=c11.

This was not noticed on linux as they build with _GNU_SOURCE which
among other things gives c11 visibility even with --std=c99.

discussed with millert@
2019-12-07 03:09:41 +00:00
deraadt
5886ab525a Constrain honouring of path-related environment variables based upon
issetugid(), not just the sloppy uid != euid test. gid != egid cases
can occur also.
Part of 6.6/009_mesaxlock.patch.sig and 6.5/020_mesaxlock.patch.sig
From Qualys, ok
2019-12-04 02:26:36 +00:00
jsg
f42e66cbd7 update to GLU 9.0.1
Among other minor changes this adds a stddef.h include for NULL required
to build with Mesa 19.2 headers.
2019-11-27 10:26:12 +00:00
jsg
94e5bba011 Merge libdrm 2.4.100 2019-11-27 02:17:47 +00:00
jsg
a628e08ec1 Import libdrm 2.4.100 2019-11-27 02:09:48 +00:00
jsg
76ee08e832 Call shmget() with permission 0600 instead of 0777
From Brian Paul
02c3dad0f3b4d26e0faa5cc51d06bc50d693dcdc in mainline Mesa

"A security advisory (TALOS-2019-0857/CVE-2019-5068) found that
creating shared memory regions with permission mode 0777 could allow
any user to access that memory.  Several Mesa drivers use shared-
memory XImages to implement back buffers for improved performance.

This path changes the shmget() calls to use 0600 (user r/w).

Tested with legacy Xlib driver and llvmpipe."
2019-11-20 03:13:04 +00:00
matthieu
92537e2975 Fix build with gcc3 which doesn't support symbol visibility.
Reposrted and tested by aoyama@
2019-09-13 19:11:23 +00:00