Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libX11 for openSUSE:Factory checked 
in at 2023-07-19 19:09:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libX11 (Old)
 and      /work/SRC/openSUSE:Factory/.libX11.new.5570 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libX11"

Wed Jul 19 19:09:37 2023 rev:49 rq:1098898 version:1.8.6

Changes:
--------
--- /work/SRC/openSUSE:Factory/libX11/libX11.changes    2023-06-17 
22:20:21.127551971 +0200
+++ /work/SRC/openSUSE:Factory/.libX11.new.5570/libX11.changes  2023-07-19 
19:09:38.368217120 +0200
@@ -1,0 +2,14 @@
+Sat Jul 15 14:44:18 UTC 2023 - Dirk Müller <dmuel...@suse.com>
+
+- update to 1.8.6:
+  * InitExt.c: Add bounds checks for extension request,
+    event, & error codes
+  * Fixes CVE-2023-3138: X servers could return values from
+    XQueryExtension that would cause Xlib to write entries
+    out-of-bounds of the arrays to store them, though this
+    would only overwrite other parts of the Display
+    struct, not outside the bounds allocated for that
+    structure.
+- drop U_InitExt.c-Add-bounds-checks-for-extension-request-ev.patch (upstream)
+
+-------------------------------------------------------------------

Old:
----
  U_InitExt.c-Add-bounds-checks-for-extension-request-ev.patch
  libX11-1.8.5.tar.xz

New:
----
  libX11-1.8.6.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libX11.spec ++++++
--- /var/tmp/diff_new_pack.K0KrvI/_old  2023-07-19 19:09:39.816225589 +0200
+++ /var/tmp/diff_new_pack.K0KrvI/_new  2023-07-19 19:09:39.820225612 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           libX11
-Version:        1.8.5
+Version:        1.8.6
 Release:        0
 Summary:        Core X11 protocol client library
 License:        MIT
@@ -32,7 +32,6 @@
 # PATCH-FIX-UPSTREAM en-locales.diff fdo#48596 bnc#388711 -- Add missing data 
for more en locales
 Patch2:         en-locales.diff
 Patch3:         u_no-longer-crash-in-XVisualIDFromVisual.patch
-Patch1212102:   U_InitExt.c-Add-bounds-checks-for-extension-request-ev.patch
 BuildRequires:  fdupes
 BuildRequires:  libtool
 BuildRequires:  pkgconfig
@@ -136,7 +135,6 @@
 %patch1
 %patch2
 %patch3 -p1
-%patch1212102 -p1
 
 %build
 %configure \

++++++ libX11-1.8.5.tar.xz -> libX11-1.8.6.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libX11-1.8.5/ChangeLog new/libX11-1.8.6/ChangeLog
--- old/libX11-1.8.5/ChangeLog  2023-06-01 03:16:48.000000000 +0200
+++ new/libX11-1.8.6/ChangeLog  2023-06-15 18:28:37.000000000 +0200
@@ -1,3 +1,25 @@
+commit 695e90ad26f632feb0f58ad94882fb3a263bf114
+Author: Alan Coopersmith <alan.coopersm...@oracle.com>
+Date:   Thu Jun 15 09:14:48 2023 -0700
+
+    libX11 1.8.6
+    
+    Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com>
+
+commit 304a654a0d57bf0f00d8998185f0360332cfa36c
+Author: Alan Coopersmith <alan.coopersm...@oracle.com>
+Date:   Sat Jun 10 16:30:07 2023 -0700
+
+    InitExt.c: Add bounds checks for extension request, event, & error codes
+    
+    Fixes CVE-2023-3138: X servers could return values from XQueryExtension
+    that would cause Xlib to write entries out-of-bounds of the arrays to
+    store them, though this would only overwrite other parts of the Display
+    struct, not outside the bounds allocated for that structure.
+    
+    Reported-by: Gregory James DUCK <gjd...@gmail.com>
+    Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com>
+
 commit 71b08b8af20474bb704a11affaa8ea39b06d5ddf
 Author: Alan Coopersmith <alan.coopersm...@oracle.com>
 Date:   Wed May 31 17:45:40 2023 -0700
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libX11-1.8.5/README.md new/libX11-1.8.6/README.md
--- old/libX11-1.8.5/README.md  2023-06-01 03:16:22.000000000 +0200
+++ new/libX11-1.8.6/README.md  2023-06-15 18:28:10.000000000 +0200
@@ -31,6 +31,10 @@
 
   https://www.x.org/wiki/Development/Documentation/SubmittingPatches
 
+## Release 1.8.6
+
+ * Add bounds checks in InitExt.c (CVE-2023-3138)
+
 ## Release 1.8.5
 
  * autoconf & libtool updates (!187, !188)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libX11-1.8.5/configure new/libX11-1.8.6/configure
--- old/libX11-1.8.5/configure  2023-06-01 03:16:31.000000000 +0200
+++ new/libX11-1.8.6/configure  2023-06-15 18:28:19.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.71 for libX11 1.8.5.
+# Generated by GNU Autoconf 2.71 for libX11 1.8.6.
 #
 # Report bugs to <https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues>.
 #
@@ -682,8 +682,8 @@
 # Identity of this package.
 PACKAGE_NAME='libX11'
 PACKAGE_TARNAME='libX11'
-PACKAGE_VERSION='1.8.5'
-PACKAGE_STRING='libX11 1.8.5'
+PACKAGE_VERSION='1.8.6'
+PACKAGE_STRING='libX11 1.8.6'
 PACKAGE_BUGREPORT='https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues'
 PACKAGE_URL=''
 
@@ -1551,7 +1551,7 @@
   # 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.
   cat <<_ACEOF
-\`configure' configures libX11 1.8.5 to adapt to many kinds of systems.
+\`configure' configures libX11 1.8.6 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1622,7 +1622,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of libX11 1.8.5:";;
+     short | recursive ) echo "Configuration of libX11 1.8.6:";;
    esac
   cat <<\_ACEOF
 
@@ -1794,7 +1794,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-libX11 configure 1.8.5
+libX11 configure 1.8.6
 generated by GNU Autoconf 2.71
 
 Copyright (C) 2021 Free Software Foundation, Inc.
@@ -2262,7 +2262,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by libX11 $as_me 1.8.5, which was
+It was created by libX11 $as_me 1.8.6, which was
 generated by GNU Autoconf 2.71.  Invocation command line was
 
   $ $0$ac_configure_args_raw
@@ -4910,7 +4910,7 @@
 
 # Define the identity of the package.
  PACKAGE='libX11'
- VERSION='1.8.5'
+ VERSION='1.8.6'
 
 
 printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@@ -23676,7 +23676,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by libX11 $as_me 1.8.5, which was
+This file was extended by libX11 $as_me 1.8.6, which was
 generated by GNU Autoconf 2.71.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -23744,7 +23744,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config='$ac_cs_config_escaped'
 ac_cs_version="\\
-libX11 config.status 1.8.5
+libX11 config.status 1.8.6
 configured by $0, generated by GNU Autoconf 2.71,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libX11-1.8.5/configure.ac 
new/libX11-1.8.6/configure.ac
--- old/libX11-1.8.5/configure.ac       2023-06-01 03:16:22.000000000 +0200
+++ new/libX11-1.8.6/configure.ac       2023-06-15 18:28:10.000000000 +0200
@@ -1,7 +1,7 @@
 
 # Initialize Autoconf
 AC_PREREQ([2.70])
-AC_INIT([libX11], [1.8.5],
+AC_INIT([libX11], [1.8.6],
         [https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues], [libX11])
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_HEADERS([src/config.h include/X11/XlibConf.h])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libX11-1.8.5/src/InitExt.c 
new/libX11-1.8.6/src/InitExt.c
--- old/libX11-1.8.5/src/InitExt.c      2023-06-01 03:16:22.000000000 +0200
+++ new/libX11-1.8.6/src/InitExt.c      2023-06-15 18:28:10.000000000 +0200
@@ -33,6 +33,18 @@
 #include <X11/Xos.h>
 #include <stdio.h>
 
+/* The X11 protocol spec reserves events 64 through 127 for extensions */
+#ifndef LastExtensionEvent
+#define LastExtensionEvent 127
+#endif
+
+/* The X11 protocol spec reserves requests 128 through 255 for extensions */
+#ifndef LastExtensionRequest
+#define FirstExtensionRequest 128
+#define LastExtensionRequest 255
+#endif
+
+
 /*
  * This routine is used to link a extension in so it will be called
  * at appropriate times.
@@ -242,6 +254,12 @@
        WireToEventType proc)   /* routine to call when converting event */
 {
        register WireToEventType oldproc;
+       if (event_number < 0 ||
+           event_number > LastExtensionEvent) {
+           fprintf(stderr, "Xlib: ignoring invalid extension event %d\n",
+                   event_number);
+           return (WireToEventType)_XUnknownWireEvent;
+       }
        if (proc == NULL) proc = (WireToEventType)_XUnknownWireEvent;
        LockDisplay (dpy);
        oldproc = dpy->event_vec[event_number];
@@ -263,6 +281,12 @@
     )
 {
        WireToEventCookieType oldproc;
+       if (extension < FirstExtensionRequest ||
+           extension > LastExtensionRequest) {
+           fprintf(stderr, "Xlib: ignoring invalid extension opcode %d\n",
+                   extension);
+           return (WireToEventCookieType)_XUnknownWireEventCookie;
+       }
        if (proc == NULL) proc = 
(WireToEventCookieType)_XUnknownWireEventCookie;
        LockDisplay (dpy);
        oldproc = dpy->generic_event_vec[extension & 0x7F];
@@ -284,6 +308,12 @@
     )
 {
        CopyEventCookieType oldproc;
+       if (extension < FirstExtensionRequest ||
+           extension > LastExtensionRequest) {
+           fprintf(stderr, "Xlib: ignoring invalid extension opcode %d\n",
+                   extension);
+           return (CopyEventCookieType)_XUnknownCopyEventCookie;
+       }
        if (proc == NULL) proc = (CopyEventCookieType)_XUnknownCopyEventCookie;
        LockDisplay (dpy);
        oldproc = dpy->generic_event_copy_vec[extension & 0x7F];
@@ -305,6 +335,12 @@
        EventToWireType proc)   /* routine to call when converting event */
 {
        register EventToWireType oldproc;
+       if (event_number < 0 ||
+           event_number > LastExtensionEvent) {
+           fprintf(stderr, "Xlib: ignoring invalid extension event %d\n",
+                   event_number);
+           return (EventToWireType)_XUnknownNativeEvent;
+       }
        if (proc == NULL) proc = (EventToWireType) _XUnknownNativeEvent;
        LockDisplay (dpy);
        oldproc = dpy->wire_vec[event_number];
@@ -325,6 +361,12 @@
        WireToErrorType proc)   /* routine to call when converting error */
 {
        register WireToErrorType oldproc = NULL;
+       if (error_number < 0 ||
+           error_number > LastExtensionError) {
+          fprintf(stderr, "Xlib: ignoring invalid extension error %d\n",
+                   error_number);
+          return (WireToErrorType)_XDefaultWireError;
+       }
        if (proc == NULL) proc = (WireToErrorType)_XDefaultWireError;
        LockDisplay (dpy);
        if (!dpy->error_vec) {

Reply via email to