Hello community,

here is the log from the commit of package xorg-x11-server for openSUSE:Factory 
checked in at 2016-05-03 09:34:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xorg-x11-server (Old)
 and      /work/SRC/openSUSE:Factory/.xorg-x11-server.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "xorg-x11-server"

Changes:
--------
--- /work/SRC/openSUSE:Factory/xorg-x11-server/xorg-x11-server.changes  
2016-03-29 09:55:16.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.xorg-x11-server.new/xorg-x11-server.changes     
2016-05-03 09:34:32.000000000 +0200
@@ -1,0 +2,72 @@
+Mon May  2 13:46:34 UTC 2016 - [email protected]
+
+- removed u_exa-only-draw-valid-trapezoids.patch; no longer needed
+  since pixman 0.32.0
+
+-------------------------------------------------------------------
+Fri Apr 29 08:40:24 UTC 2016 - [email protected]
+
+- removed no longer needed patch
+  u_ad-hoc-fix-for-mmap-s-truncated-offset-parameter-on-.patch, see
+  https://lists.x.org/archives/xorg-devel/2016-April/049493.html for
+  upstream discussion; obsoleted by upstream patch
+  
https://cgit.freedesktop.org/xorg/xserver/commit/?id=4962c8c08842d9d3ca66d254b1ce4cacc4fb3756,
 which is already in xorg-server 1.18.3
+
+-------------------------------------------------------------------
+Tue Apr 12 15:33:45 UTC 2016 - [email protected]
+
+- Add permission verification for SUID wrapper
+- Disable SUID wrapper per default until reviewed
+
+-------------------------------------------------------------------
+Tue Apr 12 13:59:48 UTC 2016 - [email protected]
+
+-  n_Install-Avoid-failure-on-wrapper-installation.patch:
+   rename to:
+    N_Install-Avoid-failure-on-wrapper-installation.patch
+-  u_xorg-wrapper-Drop-supplemental-group-IDs.patch:
+   Drop supplementary group privileges.
+-  u_xorg-wrapper-build-Build-position-independent-code.patch:
+   Build position independent.
+
+-------------------------------------------------------------------
+Tue Apr 12 09:06:06 UTC 2016 - [email protected]
+
+- n_Install-Avoid-failure-on-wrapper-installation.patch:
+  Fix up build for wrapper.
+- Place SUID wrapper into a separate package: 
+  xorg-x11-server-wrapper
+
+-------------------------------------------------------------------
+Thu Apr  7 15:53:39 UTC 2016 - [email protected]
+
+- Set configure option --enable-suid-wrapper for TW:
+  This way, the SUID wrapper is built which allows to run the Xserver
+  as root even though the the DM instance runs as user. This allows to
+  support drivers which require direct HW access.
+
+-------------------------------------------------------------------
+Mon Apr  4 20:11:13 UTC 2016 - [email protected]
+
+- Update to version 1.18.3:
+  A few fixes relative to 1.18.2, including one fairly important
+  performance fix to the Present extension.
+- Remove U_present-Only-requeue-for-next-MSC-after-flip-failure.patch
+  The patch is included in this release.
+
+-------------------------------------------------------------------
+Thu Mar 31 14:27:29 UTC 2016 - [email protected]
+
+- Add patch U_present-Only-requeue-for-next-MSC-after-flip-failure.patch
+  Fix a hang while using the present extension
+  Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94515
+            https://bugs.freedesktop.org/show_bug.cgi?id=94596
+
+-------------------------------------------------------------------
+Tue Mar 29 08:56:43 UTC 2016 - [email protected]
+
+- Add automake, autoconf, libtool, c_compiler, pkgconfig(xorg-macros),
+  pkgconfig(libudev), pkgconfig(libevdev), pkgconfig(mtdev) to Requires:
+  of the SDK. This simplifies the build of Xserver modules.
+
+-------------------------------------------------------------------

Old:
----
  u_ad-hoc-fix-for-mmap-s-truncated-offset-parameter-on-.patch
  u_exa-only-draw-valid-trapezoids.patch
  xorg-server-1.18.2.tar.bz2

New:
----
  N_Install-Avoid-failure-on-wrapper-installation.patch
  u_xorg-wrapper-Drop-supplemental-group-IDs.patch
  u_xorg-wrapper-build-Build-position-independent-code.patch
  xorg-server-1.18.3.tar.bz2

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

Other differences:
------------------
++++++ xorg-x11-server.spec ++++++
--- /var/tmp/diff_new_pack.Jqk926/_old  2016-05-03 09:34:33.000000000 +0200
+++ /var/tmp/diff_new_pack.Jqk926/_new  2016-05-03 09:34:33.000000000 +0200
@@ -25,9 +25,24 @@
 %endif
 %endif
 
+%define build_suid_wrapper 0
+
+%if 0%{!?build_suid_wrapper:1}
+%ifarch s390 s390x
+%define build_suid_wrapper 0
+%else
+%if 0%{?suse_version} >= 1330
+%define build_suid_wrapper 1
+%define suid_wrapper_dir %{_libexecdir}
+%else
+%define build_suid_wrapper 0
+%endif
+%endif
+%endif
+
 Name:           xorg-x11-server
 
-%define dirsuffix 1.18.2
+%define dirsuffix 1.18.3
 
 Summary:        X
 License:        MIT
@@ -164,17 +179,16 @@
 Patch3:         N_driver-autoconfig.diff
 Patch4:         N_fix_fglrx_screendepth_issue.patch
 Patch6:         N_fix-dpi-values.diff
-
+Patch7:         N_Install-Avoid-failure-on-wrapper-installation.patch
+Patch8:         u_xorg-wrapper-Drop-supplemental-group-IDs.patch
+Patch9:         u_xorg-wrapper-build-Build-position-independent-code.patch
 Patch100:       u_01-Improved-ConfineToShape.patch
 Patch101:       
u_02-DIX-ConfineTo-Don-t-bother-about-the-bounding-box-when-grabbing-a-shaped-window.patch
 # PATCH-FIX-UPSTREAM u_x86emu-include-order.patch [email protected] -- Change 
include order to avoid conflict with system header, remove duplicate definitions
 Patch102:       u_x86emu-include-order.patch
 Patch104:       u_xorg-server-xdmcp.patch
-# PATCH-FIX-UPSTREAM u_exa-only-draw-valid-trapezoids.patch bnc#853846 
[email protected] -- Fixes possible crash of server using invalid trapezoids. 
2013-12-12 patch is waiting in mailing list to be upstreamed.
-Patch106:       u_exa-only-draw-valid-trapezoids.patch
 Patch112:       
u_render-Cast-color-masks-to-unsigned-long-before-shifting-them.patch
 
-Patch114:       u_ad-hoc-fix-for-mmap-s-truncated-offset-parameter-on-.patch
 Patch115:       N_Force-swcursor-for-KMS-drivers-without-hw-cursor-sup.patch
 
 Patch117:       xorg-x11-server-byte-order.patch
@@ -230,15 +244,33 @@
 This package contains the Xserver running on the Wayland Display Server.
 %endif
 
+%if 0%{?build_suid_wrapper} == 1
+%package wrapper
+Summary:        Xserver SUID Wrapper
+Group:          System/X11/Servers/XF86_4
+PreReq:         permissions
+Requires:       xorg-x11-server == %{version}
+
+%description wrapper
+This package contains an SUID wrapper for the Xserver.
+%endif
+
 %package sdk
 Summary:        X
 Group:          System/Libraries
+Requires:       autoconf
+Requires:       automake
+Requires:       c_compiler
+Requires:       libtool
 Requires:       xorg-x11-server
 Requires:       pkgconfig(fontconfig)
 Requires:       pkgconfig(fontenc)
 Requires:       pkgconfig(freetype2)
 Requires:       pkgconfig(ice)
 Requires:       pkgconfig(libdrm)
+Requires:       pkgconfig(libevdev)
+Requires:       pkgconfig(libudev)
+Requires:       pkgconfig(mtdev)
 Requires:       pkgconfig(sm)
 Requires:       pkgconfig(x11)
 Requires:       pkgconfig(xau)
@@ -247,6 +279,7 @@
 Requires:       pkgconfig(xfixes)
 Requires:       pkgconfig(xkbfile)
 Requires:       pkgconfig(xmu)
+Requires:       pkgconfig(xorg-macros)
 Requires:       pkgconfig(xp)
 Requires:       pkgconfig(xpm)
 Requires:       pkgconfig(xprintutil)
@@ -281,16 +314,17 @@
 %patch3 -p0
 %patch4 -p0
 %patch6 -p0
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1
 #
 %patch100 -p1
 #%patch101 -p1
 %patch102 -p1
 %patch104 -p1
-%patch106 -p1
 
 %patch112 -p1
 
-%patch114 -p1
 %patch115 -p1
 
 %patch117 -p1
@@ -324,7 +358,7 @@
 
 %build
 test -e source-file-list || \
-    find . -type f \! -name '*.orig' \! -path ./source-file-list > \
+    find -L . -type f \! -name '*.orig' \! -path ./source-file-list > \
     source-file-list
 
 autoreconf -fi
@@ -366,6 +400,10 @@
 %else
             --disable-xwayland \
 %endif
+%if 0%{?build_suid_wrapper} == 1
+           --enable-suid-wrapper \
+           --libexecdir=%{suid_wrapper_dir} \
+%endif
             --with-log-dir="/var/log" \
             --with-os-name="openSUSE" \
             --with-os-vendor="SUSE LINUX" \
@@ -485,6 +523,14 @@
 %endif
 %endif
 
+%if 0%{?build_suid_wrapper} == 1
+%post wrapper
+%set_permissions %{suid_wrapper_dir}/Xorg.wrap
+
+%verifyscript wrapper
+%verify_permissions -e %{suid_wrapper_dir}/Xorg.wrap
+%endif
+
 %files
 %defattr(-,root,root)
 %ifnarch s390 s390x
@@ -511,6 +557,9 @@
 %{_localstatedir}/lib/xkb/compiled/README.compiled
 %ifnarch s390 s390x
 %{_bindir}/Xorg
+%if 0%{?build_suid_wrapper} == 1
+%{suid_wrapper_dir}/Xorg
+%endif
 %{_bindir}/X
 
 %{_bindir}/cvt
@@ -532,6 +581,12 @@
 %{_bindir}/Xwayland
 %endif
 
+%if 0%{?build_suid_wrapper} == 1
+%files wrapper
+%defattr(-,root,root)
+%attr(4755,root,root) %{suid_wrapper_dir}/Xorg.wrap
+%endif
+
 %files extra
 %defattr(-,root,root)
 %{_bindir}/Xephyr

++++++ N_Install-Avoid-failure-on-wrapper-installation.patch ++++++
From: Egbert Eich <[email protected]>
Date: Tue Apr 12 09:22:40 2016 +0200
Subject: [PATCH]Install: Avoid failure on wrapper installation
Patch-mainline: never
References: 
Signed-off-by: Egbert Eich <[email protected]>

- Check for SUID_WRAPPER_DIR being identical to bindir
  before copying script.
- Check whether user is root before doing a chmod/chown

Signed-off-by: Egbert Eich <[email protected]>
---
 hw/xfree86/Makefile.am | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/hw/xfree86/Makefile.am b/hw/xfree86/Makefile.am
index 85bd0be..461e818 100644
--- a/hw/xfree86/Makefile.am
+++ b/hw/xfree86/Makefile.am
@@ -108,9 +108,10 @@ if INSTALL_SETUID
 endif
 if SUID_WRAPPER
        $(MKDIR_P) $(DESTDIR)$(SUID_WRAPPER_DIR)
-       mv $(DESTDIR)$(bindir)/Xorg $(DESTDIR)$(SUID_WRAPPER_DIR)/Xorg
-       ${INSTALL} -m 755 Xorg.sh $(DESTDIR)$(bindir)/Xorg
-       -chown root $(DESTDIR)$(SUID_WRAPPER_DIR)/Xorg.wrap && chmod u+s 
$(DESTDIR)$(SUID_WRAPPER_DIR)/Xorg.wrap
+       mv $(DESTDIR)$(bindir)/Xorg $(DESTDIR)$(SUID_WRAPPER_DIR)/Xorg 
2>/dev/null && target=Xorg; \
+       ${INSTALL} -m 755 Xorg.sh $(DESTDIR)$(bindir)/$${target}
+       -test "x$UID" = "x0" -o "x$EUID" = "x0" && \
+               chown root $(DESTDIR)$(SUID_WRAPPER_DIR)/Xorg.wrap && chmod u+s 
$(DESTDIR)$(SUID_WRAPPER_DIR)/Xorg.wrap
 endif
 
 uninstall-local:
++++++ u_xorg-wrapper-Drop-supplemental-group-IDs.patch ++++++
From: Egbert Eich <[email protected]>
Date: Tue Apr 12 15:52:37 2016 +0200
Subject: [PATCH]xorg-wrapper: Drop supplemental group IDs
Patch-mainline: to be upstreamed
References: 
Signed-off-by: Egbert Eich <[email protected]>

Signed-off-by: Egbert Eich <[email protected]>
---
 hw/xfree86/xorg-wrapper.c | 48 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

diff --git a/hw/xfree86/xorg-wrapper.c b/hw/xfree86/xorg-wrapper.c
index d930962..64a43c4 100644
--- a/hw/xfree86/xorg-wrapper.c
+++ b/hw/xfree86/xorg-wrapper.c
@@ -36,6 +36,8 @@
 #include <sys/ioctl.h>
 #include <sys/stat.h>
 #include <sys/types.h>
+#include <pwd.h>
+#include <grp.h>
 #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
 #include <sys/consio.h>
 #endif
@@ -252,6 +254,52 @@ int main(int argc, char *argv[])
     if (needs_root_rights == 0 || (total_cards && kms_cards == total_cards)) {
         gid_t realgid = getgid();
         uid_t realuid = getuid();
+        int ngroups = 0;
+        gid_t *groups = NULL;
+        long int initlen = sysconf(_SC_GETPW_R_SIZE_MAX);
+        size_t len;
+        struct passwd result, *resultp;
+        char *buffer;
+        int e;
+
+        if (initlen == -1)
+            len = 1024;
+        else
+            len = (size_t) initlen;
+        if ((buffer = malloc(len)) < 0) {
+            fprintf(stderr, "%s: Could not allocate memory: %s\n",
+                    progname, strerror(errno));
+            exit (1);
+        }
+        if ((e = getpwuid_r(realuid, &result, buffer, len, &resultp)) > 0) {
+            fprintf(stderr, "%s: Could not get user name: %s\n",
+                    progname, strerror(errno));
+            exit (1);
+        } else if (resultp == NULL) {
+            fprintf(stderr, "%s: Could not find user name for UID %d\n",
+                    progname, realuid);
+            exit (1);
+        }
+        if (getgrouplist(result.pw_name, realgid, groups, &ngroups) < 0) {
+            if ((groups = malloc(sizeof(gid_t) * ngroups)) == NULL) {
+                fprintf(stderr, "%s: Could not allocate memory: %s\n",
+                        progname, strerror(errno));
+                exit (1);
+            }
+            if (getgrouplist(result.pw_name, realgid, groups, &ngroups) < 0) {
+                fprintf(stderr, "%s: Could not get supplementary group list\n",
+                        progname);
+                ngroups = 0;
+            }
+        }
+        if (setgroups(ngroups, groups) == -1) {
+            fprintf(stderr, "%s: Could not set groups: %s\n",
+                    progname, strerror(errno));
+            exit (1);
+        }
+        memset(buffer, 0, len);
+        free(buffer);
+        free(groups);
 
         if (setresgid(-1, realgid, realgid) != 0) {
             fprintf(stderr, "%s: Could not drop setgid privileges: %s\n",
++++++ u_xorg-wrapper-build-Build-position-independent-code.patch ++++++
From: Egbert Eich <[email protected]>
Date: Tue Apr 12 15:53:11 2016 +0200
Subject: [PATCH]xorg-wrapper/build: Build position independent code
Patch-mainline: to be upstreamed
References: 
Signed-off-by: Egbert Eich <[email protected]>

Signed-off-by: Egbert Eich <[email protected]>
---
 hw/xfree86/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/xfree86/Makefile.am b/hw/xfree86/Makefile.am
index 461e818..c0ce3b8 100644
--- a/hw/xfree86/Makefile.am
+++ b/hw/xfree86/Makefile.am
@@ -87,6 +87,7 @@ if SUID_WRAPPER
 wrapdir = $(SUID_WRAPPER_DIR)
 wrap_PROGRAMS = Xorg.wrap
 Xorg_wrap_SOURCES = xorg-wrapper.c
+Xorg_wrap_CFLAGS = $(AM_CFLAGS) -pie -fpie
 endif
 
 BUILT_SOURCES = xorg.conf.example
++++++ xorg-server-1.18.2.tar.bz2 -> xorg-server-1.18.3.tar.bz2 ++++++
++++ 21776 lines of diff (skipped)


Reply via email to