summaryrefslogtreecommitdiffstats
path: root/main/libxres/0002-Use-_XEatDataWords-to-avoid-overflow-of-rep.length-s.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/libxres/0002-Use-_XEatDataWords-to-avoid-overflow-of-rep.length-s.patch')
-rw-r--r--main/libxres/0002-Use-_XEatDataWords-to-avoid-overflow-of-rep.length-s.patch75
1 files changed, 0 insertions, 75 deletions
diff --git a/main/libxres/0002-Use-_XEatDataWords-to-avoid-overflow-of-rep.length-s.patch b/main/libxres/0002-Use-_XEatDataWords-to-avoid-overflow-of-rep.length-s.patch
deleted file mode 100644
index 9f22c4fa5..000000000
--- a/main/libxres/0002-Use-_XEatDataWords-to-avoid-overflow-of-rep.length-s.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From 69457711050ac3a53859ef11790a7ac815cd7d94 Mon Sep 17 00:00:00 2001
-From: Alan Coopersmith <alan.coopersmith@oracle.com>
-Date: Sat, 13 Apr 2013 10:34:22 -0700
-Subject: [PATCH 2/4] Use _XEatDataWords to avoid overflow of rep.length
- shifting
-
-rep.length is a CARD32, so rep.length << 2 could overflow in 32-bit builds
-
-Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
----
- configure.ac | 6 ++++++
- src/XRes.c | 16 ++++++++++++++--
- 2 files changed, 20 insertions(+), 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 90205cc..f68b689 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -50,6 +50,12 @@ XORG_CHECK_MALLOC_ZERO
- # Obtain compiler/linker options for depedencies
- PKG_CHECK_MODULES(XRES, x11 xext xextproto [resourceproto >= 1.2.0])
-
-+# Check for _XEatDataWords function that may be patched into older Xlib release
-+SAVE_LIBS="$LIBS"
-+LIBS="$XRES_LIBS"
-+AC_CHECK_FUNCS([_XEatDataWords])
-+LIBS="$SAVE_LIBS"
-+
- AC_CONFIG_FILES([Makefile
- src/Makefile
- man/Makefile
-diff --git a/src/XRes.c b/src/XRes.c
-index 1744196..1ab1db8 100644
---- a/src/XRes.c
-+++ b/src/XRes.c
-@@ -13,6 +13,18 @@
- #include <X11/extensions/XResproto.h>
- #include <X11/extensions/XRes.h>
-
-+#include <limits.h>
-+
-+#ifndef HAVE__XEATDATAWORDS
-+static inline void _XEatDataWords(Display *dpy, unsigned long n)
-+{
-+# ifndef LONG64
-+ if (n >= (ULONG_MAX >> 2))
-+ _XIOError(dpy);
-+# endif
-+ _XEatData (dpy, n << 2);
-+}
-+#endif
-
- static XExtensionInfo _xres_ext_info_data;
- static XExtensionInfo *xres_ext_info = &_xres_ext_info_data;
-@@ -131,7 +143,7 @@ Status XResQueryClients (
- *num_clients = rep.num_clients;
- result = 1;
- } else {
-- _XEatData(dpy, rep.length << 2);
-+ _XEatDataWords(dpy, rep.length);
- }
- }
-
-@@ -183,7 +195,7 @@ Status XResQueryClientResources (
- *num_types = rep.num_types;
- result = 1;
- } else {
-- _XEatData(dpy, rep.length << 2);
-+ _XEatDataWords(dpy, rep.length);
- }
- }
-
---
-1.8.2.3
-