[PATCH:libXext] Remove fallback for _XEatDataWords, require libX11 1.6 for it

Alan Coopersmith alan.coopersmith at oracle.com
Thu Nov 7 16:33:38 PST 2013


_XEatDataWords was orignally introduced with the May 2013 security
patches, and in order to ease the process of delivering those,
fallback versions of _XEatDataWords were included in the X extension
library patches so they could be applied to older versions that didn't
have libX11 1.6 yet.   Now that we're past that hurdle, we can drop
the fallbacks and just require libX11 1.6 for building new versions
of the extension libraries.

Signed-off-by: Alan Coopersmith <alan.coopersmith at oracle.com>
---
 configure.ac    |    8 +-------
 src/Makefile.am |    1 -
 src/XEVI.c      |    1 -
 src/XMultibuf.c |    1 -
 src/XSecurity.c |    1 -
 src/XShape.c    |    1 -
 src/XSync.c     |    1 -
 src/Xcup.c      |    1 -
 src/Xdbe.c      |    1 -
 src/eat.h       |   40 ----------------------------------------
 10 files changed, 1 insertion(+), 55 deletions(-)
 delete mode 100644 src/eat.h

diff --git a/configure.ac b/configure.ac
index 9a1e0c2..491aac0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -36,13 +36,7 @@ fi
 AC_SUBST(XEXT_SOREV)
 
 # Obtain compiler/linker options for depedencies
-PKG_CHECK_MODULES(XEXT, [xproto >= 7.0.13] [x11 >= 1.1.99.1] [xextproto >= 7.1.99])
-
-# Check for _XEatDataWords function that may be patched into older Xlib releases
-SAVE_LIBS="$LIBS"
-LIBS="$XEXT_LIBS"
-AC_CHECK_FUNCS([_XEatDataWords])
-LIBS="$SAVE_LIBS"
+PKG_CHECK_MODULES(XEXT, [xproto >= 7.0.13] [x11 >= 1.6] [xextproto >= 7.1.99])
 
 # Allow checking code with lint, sparse, etc.
 XORG_WITH_LINT
diff --git a/src/Makefile.am b/src/Makefile.am
index b828547..e236c33 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -12,7 +12,6 @@ libXext_la_LDFLAGS = -version-number $(XEXT_SOREV) -no-undefined
 libXext_la_LIBADD = $(XEXT_LIBS)
 
 libXext_la_SOURCES = \
-	eat.h \
 	DPMS.c \
 	MITMisc.c \
 	XAppgroup.c \
diff --git a/src/XEVI.c b/src/XEVI.c
index 5a95583..6d77fdf 100644
--- a/src/XEVI.c
+++ b/src/XEVI.c
@@ -31,7 +31,6 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
 #include <X11/extensions/extutil.h>
 #include <X11/Xutil.h>
 #include <limits.h>
-#include "eat.h"
 
 static XExtensionInfo *xevi_info;/* needs to move to globals.c */
 static const char *xevi_extension_name = EVINAME;
diff --git a/src/XMultibuf.c b/src/XMultibuf.c
index 43d56d3..75854aa 100644
--- a/src/XMultibuf.c
+++ b/src/XMultibuf.c
@@ -34,7 +34,6 @@ in this Software without prior written authorization from The Open Group.
 #include <X11/extensions/extutil.h>
 #include <X11/extensions/multibufproto.h>
 #include <X11/extensions/multibuf.h>
-#include "eat.h"
 
 static XExtensionInfo _multibuf_info_data;
 static XExtensionInfo *multibuf_info = &_multibuf_info_data;
diff --git a/src/XSecurity.c b/src/XSecurity.c
index ab17755..73305a3 100644
--- a/src/XSecurity.c
+++ b/src/XSecurity.c
@@ -33,7 +33,6 @@ in this Software without prior written authorization from The Open Group.
 #include <X11/extensions/extutil.h>
 #include <X11/extensions/securproto.h>
 #include <X11/extensions/security.h>
-#include "eat.h"
 
 static XExtensionInfo _Security_info_data;
 static XExtensionInfo *Security_info = &_Security_info_data;
diff --git a/src/XShape.c b/src/XShape.c
index d025020..15d754f 100644
--- a/src/XShape.c
+++ b/src/XShape.c
@@ -36,7 +36,6 @@ in this Software without prior written authorization from The Open Group.
 #include <X11/extensions/shape.h>
 #include <X11/extensions/shapeproto.h>
 #include <limits.h>
-#include "eat.h"
 
 static XExtensionInfo _shape_info_data;
 static XExtensionInfo *shape_info = &_shape_info_data;
diff --git a/src/XSync.c b/src/XSync.c
index 6e2af79..3077db2 100644
--- a/src/XSync.c
+++ b/src/XSync.c
@@ -60,7 +60,6 @@ PERFORMANCE OF THIS SOFTWARE.
 #include <X11/extensions/sync.h>
 #include <X11/extensions/syncproto.h>
 #include <limits.h>
-#include "eat.h"
 
 static XExtensionInfo _sync_info_data;
 static XExtensionInfo *sync_info = &_sync_info_data;
diff --git a/src/Xcup.c b/src/Xcup.c
index cdc64c2..fd6850e 100644
--- a/src/Xcup.c
+++ b/src/Xcup.c
@@ -37,7 +37,6 @@ in this Software without prior written authorization from The Open Group.
 #include <X11/extensions/Xext.h>
 #include <X11/extensions/extutil.h>
 #include <limits.h>
-#include "eat.h"
 
 static XExtensionInfo _xcup_info_data;
 static XExtensionInfo *xcup_info = &_xcup_info_data;
diff --git a/src/Xdbe.c b/src/Xdbe.c
index 7dd6c5a..13ec347 100644
--- a/src/Xdbe.c
+++ b/src/Xdbe.c
@@ -40,7 +40,6 @@
 #include <X11/extensions/Xdbe.h>
 #include <X11/extensions/dbeproto.h>
 #include <limits.h>
-#include "eat.h"
 
 static XExtensionInfo _dbe_info_data;
 static XExtensionInfo *dbe_info = &_dbe_info_data;
diff --git a/src/eat.h b/src/eat.h
deleted file mode 100644
index 239532b..0000000
--- a/src/eat.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice (including the next
- * paragraph) shall be included in all copies or substantial portions of the
- * Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- */
-
-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
-
-#ifndef HAVE__XEATDATAWORDS
-#include <X11/Xmd.h>  /* for LONG64 on 64-bit platforms */
-#include <limits.h>
-
-static inline void _XEatDataWords(Display *dpy, unsigned long n)
-{
-# ifndef LONG64
-    if (n >= (ULONG_MAX >> 2))
-        _XIOError(dpy);
-# endif
-    _XEatData (dpy, n << 2);
-}
-#endif
-- 
1.7.9.2



More information about the xorg-devel mailing list