mgorny      14/10/27 10:21:40

  Added:                xorg-server-disable-acpi.patch
                        xorg-server-1.9-cve-2013-1940.patch
                        xorg-server-1.9-nouveau-default.patch
                        xorg-cve-2011-4028+4029.patch
                        xorg-server-1.9-cve-2013-4396.patch
                        
xrdp-0.8.0-0001-Include-xorg-list.h-to-fix-build-errors.patch
                        xrdp-0.8.0-0002-Remove-dither-printing.patch
  Log:
  Add x11rdp server.
  
  (Portage version: 2.2.14/cvs/Linux x86_64, signed Manifest commit with key 
EFB4464E!)

Revision  Changes    Path
1.1                  net-misc/x11rdp/files/xorg-server-disable-acpi.patch

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/x11rdp/files/xorg-server-disable-acpi.patch?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/x11rdp/files/xorg-server-disable-acpi.patch?rev=1.1&content-type=text/plain

Index: xorg-server-disable-acpi.patch
===================================================================
>From a8079882f1884edc62a9de28af915bd8b65dfbbe Mon Sep 17 00:00:00 2001
From: Adam Jackson <[email protected]>
Date: Wed, 11 Mar 2009 14:02:11 -0400
Subject: [PATCH] Don't build the ACPI code.

No good can come of this.
---
 configure.ac |    2 --
 1 files changed, 0 insertions(+), 2 deletions(-)

diff --git a/configure.ac b/configure.ac
index 72ae67e..04716f8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1269,13 +1269,11 @@ if test "x$XORG" = xyes; then
                case $host_cpu in
                  ia64*)
                        linux_ia64=yes
-                       linux_acpi="yes"
                        ;;
                  alpha*)
                        linux_alpha=yes
                        ;;
                  i*86|amd64*|x86_64*)
-                       linux_acpi="yes"
                        ;;
                  *)
                        ;;
-- 
1.6.1.3




1.1                  net-misc/x11rdp/files/xorg-server-1.9-cve-2013-1940.patch

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/x11rdp/files/xorg-server-1.9-cve-2013-1940.patch?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/x11rdp/files/xorg-server-1.9-cve-2013-1940.patch?rev=1.1&content-type=text/plain

Index: xorg-server-1.9-cve-2013-1940.patch
===================================================================
>From 6ca03b9161d33b1d2b55a3a1a913cf88deb2343f Mon Sep 17 00:00:00 2001
From: Dave Airlie <[email protected]>
Date: Wed, 10 Apr 2013 06:09:01 +0000
Subject: xf86: fix flush input to work with Linux evdev devices.

So when we VT switch back and attempt to flush the input devices,
we don't succeed because evdev won't return part of an event,
since we were only asking for 4 bytes, we'd only get -EINVAL back.

This could later cause events to be flushed that we shouldn't have
gotten.

This is a fix for CVE-2013-1940.

Signed-off-by: Dave Airlie <[email protected]>
Reviewed-by: Peter Hutterer <[email protected]>
Signed-off-by: Peter Hutterer <[email protected]>

diff -ur a/hw/xfree86/os-support/shared/posix_tty.c 
b/hw/xfree86/os-support/shared/posix_tty.c
--- a/hw/xfree86/os-support/shared/posix_tty.c  2010-06-11 08:10:22.000000000 
+0200
+++ b/hw/xfree86/os-support/shared/posix_tty.c  2013-04-17 22:49:20.389795964 
+0200
@@ -460,7 +460,8 @@
 {
        fd_set fds;
        struct timeval timeout;
-       char c[4];
+       /* this needs to be big enough to flush an evdev event. */
+       char c[256];
 
        DebugF("FlushingSerial\n");
        if (tcflush(fd, TCIFLUSH) == 0)



1.1                  net-misc/x11rdp/files/xorg-server-1.9-nouveau-default.patch

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/x11rdp/files/xorg-server-1.9-nouveau-default.patch?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/x11rdp/files/xorg-server-1.9-nouveau-default.patch?rev=1.1&content-type=text/plain

Index: xorg-server-1.9-nouveau-default.patch
===================================================================
diff --git a/hw/xfree86/common/xf86pciBus.c b/hw/xfree86/common/xf86pciBus.c
index 74016af..9c296f5 100644
--- a/hw/xfree86/common/xf86pciBus.c
+++ b/hw/xfree86/common/xf86pciBus.c
@@ -1118,7 +1118,23 @@ videoPtrToDriverList(struct pci_device *dev,
            break;
        case 0x102b:                driverList[0] = "mga";      break;
        case 0x10c8:                driverList[0] = "neomagic"; break;
-       case 0x10de: case 0x12d2:   driverList[0] = "nv";       break;
+       case 0x10de: case 0x12d2:
+           switch (dev->device_id) {
+           /* NV1 */
+           case 0x0008:
+           case 0x0009:
+               driverList[0] = "vesa";
+               break;
+           /* NV3 */
+           case 0x0018:
+           case 0x0019:
+               driverList[0] = "nv";
+               break;
+           default:
+               driverList[0] = "nouveau";
+               break;
+           }
+           break;
        case 0x1106:                driverList[0] = "openchrome"; break;
         case 0x1b36:               driverList[0] = "qxl"; break;
        case 0x1163:                driverList[0] = "rendition"; break;
-- 



1.1                  net-misc/x11rdp/files/xorg-cve-2011-4028+4029.patch

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/x11rdp/files/xorg-cve-2011-4028+4029.patch?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/x11rdp/files/xorg-cve-2011-4028+4029.patch?rev=1.1&content-type=text/plain

Index: xorg-cve-2011-4028+4029.patch
===================================================================
diff --git a/os/utils.c b/os/utils.c
index e8ecb71..18ff1ca 100644
--- a/os/utils.c
+++ b/os/utils.c
@@ -297,7 +297,7 @@ LockServer(void)
     FatalError("Could not create lock file in %s\n", tmp);
   (void) sprintf(pid_str, "%10ld\n", (long)getpid());
   (void) write(lfd, pid_str, 11);
-  (void) chmod(tmp, 0444);
+  (void) fchmod(lfd, 0444);
   (void) close(lfd);

   /*
@@ -318,7 +318,7 @@ LockServer(void)
       /*
        * Read the pid from the existing file
        */
-      lfd = open(LockFile, O_RDONLY);
+      lfd = open(LockFile, O_RDONLY|O_NOFOLLOW);
       if (lfd < 0) {
         unlink(tmp);
         FatalError("Can't read lock file %s\n", LockFile);



1.1                  net-misc/x11rdp/files/xorg-server-1.9-cve-2013-4396.patch

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/x11rdp/files/xorg-server-1.9-cve-2013-4396.patch?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/x11rdp/files/xorg-server-1.9-cve-2013-4396.patch?rev=1.1&content-type=text/plain

Index: xorg-server-1.9-cve-2013-4396.patch
===================================================================
diff -ur a/dix/dixfonts.c b/dix/dixfonts.c
--- a/dix/dixfonts.c    2011-12-18 05:44:54.000000000 +0100
+++ b/dix/dixfonts.c    2013-10-10 12:06:44.579225694 +0200
@@ -1479,6 +1479,7 @@
            GC *pGC;
            unsigned char *data;
            ITclosurePtr new_closure;
+           ITclosurePtr old_closure;
 
            /* We're putting the client to sleep.  We need to
               save some state.  Similar problem to that handled
@@ -1491,6 +1492,7 @@
                err = BadAlloc;
                goto bail;
            }
+           old_closure = c;
            *new_closure = *c;
            c = new_closure;
 
@@ -1498,6 +1500,7 @@
            if (!data)
            {
                free(c);
+               c = old_closure;
                err = BadAlloc;
                goto bail;
            }
@@ -1509,6 +1512,7 @@
            {
                free(c->data);
                free(c);
+               c = old_closure;
                err = BadAlloc;
                goto bail;
            }
@@ -1522,6 +1526,7 @@
                FreeScratchGC(pGC);
                free(c->data);
                free(c);
+               c = old_closure;
                err = BadAlloc;
                goto bail;
            }



1.1                  
net-misc/x11rdp/files/xrdp-0.8.0-0001-Include-xorg-list.h-to-fix-build-errors.patch

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/x11rdp/files/xrdp-0.8.0-0001-Include-xorg-list.h-to-fix-build-errors.patch?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/x11rdp/files/xrdp-0.8.0-0001-Include-xorg-list.h-to-fix-build-errors.patch?rev=1.1&content-type=text/plain

Index: xrdp-0.8.0-0001-Include-xorg-list.h-to-fix-build-errors.patch
===================================================================
>From 13b7150aef9c61966d39d779c652f988232d7381 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <[email protected]>
Date: Mon, 27 Oct 2014 09:52:56 +0100
Subject: [PATCH 1/2] Include <xorg/list.h> to fix build errors

---
 xorg/X11R7.6/rdp/rdp.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/xorg/X11R7.6/rdp/rdp.h b/xorg/X11R7.6/rdp/rdp.h
index 00725d1..a2f5bdc 100644
--- a/xorg/X11R7.6/rdp/rdp.h
+++ b/xorg/X11R7.6/rdp/rdp.h
@@ -46,6 +46,8 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 
THE SOFTWARE.
 
 //#include "cfb.h"
 
+#include <xorg/list.h>
+
 #include "mibstore.h"
 #include "colormapst.h"
 #include "gcstruct.h"
-- 
2.1.2




1.1                  
net-misc/x11rdp/files/xrdp-0.8.0-0002-Remove-dither-printing.patch

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/x11rdp/files/xrdp-0.8.0-0002-Remove-dither-printing.patch?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/x11rdp/files/xrdp-0.8.0-0002-Remove-dither-printing.patch?rev=1.1&content-type=text/plain

Index: xrdp-0.8.0-0002-Remove-dither-printing.patch
===================================================================
>From fef4e6d15aa42a7d3bb4b134cba9253323398cc6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <[email protected]>
Date: Mon, 27 Oct 2014 09:55:49 +0100
Subject: [PATCH 2/2] Remove dither printing

---
 xorg/X11R7.6/rdp/rdpComposite.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/xorg/X11R7.6/rdp/rdpComposite.c b/xorg/X11R7.6/rdp/rdpComposite.c
index f763783..50ee6d7 100644
--- a/xorg/X11R7.6/rdp/rdpComposite.c
+++ b/xorg/X11R7.6/rdp/rdpComposite.c
@@ -240,9 +240,9 @@ compsoite_print(CARD8 op, PicturePtr pSrc, PicturePtr 
pMask, PicturePtr pDst,
     if (pSrc != 0)
     {
         LLOGLN(0, ("  src depth %d width %d height %d repeat %d repeatType %d "
-                   "dither %d filter %d alphaMap %p componentAlpha %d", 
pSrc->pDrawable->depth,
+                   "filter %d alphaMap %p componentAlpha %d", 
pSrc->pDrawable->depth,
                    pSrc->pDrawable->width, pSrc->pDrawable->height,
-                   pSrc->repeat, pSrc->repeatType, pSrc->dither, pSrc->filter,
+                   pSrc->repeat, pSrc->repeatType, pSrc->filter,
                    pSrc->alphaMap, pSrc->componentAlpha));
         LLOGLN(0, ("  transform %p", pSrc->transform));
         LLOGLN(0, ("  detail format red %d red mask %d green %d green mask %d "
@@ -277,9 +277,9 @@ compsoite_print(CARD8 op, PicturePtr pSrc, PicturePtr 
pMask, PicturePtr pDst,
     if (pDst != 0)
     {
         LLOGLN(0, ("  dst depth %d width %d height %d repeat %d repeatType %d "
-                   "dither %d filter %d alphaMap %p", pDst->pDrawable->depth,
+                   "filter %d alphaMap %p", pDst->pDrawable->depth,
                    pDst->pDrawable->width, pDst->pDrawable->height,
-                   pDst->repeat, pDst->repeatType, pDst->dither, pDst->filter,
+                   pDst->repeat, pDst->repeatType, pDst->filter,
                    pDst->alphaMap));
         LLOGLN(0, ("  transform %p", pDst->transform));
         print_format(pDst->format);
-- 
2.1.2





Reply via email to