[X2Go-Commits] [nx-libs] 04/45: imake cleanup: Drop all references to XdmxServer and BuildXdmx*.

git-admin at x2go.org git-admin at x2go.org
Mon Apr 27 04:50:12 CEST 2015


This is an automated email from the git hooks/post-receive script.

x2go pushed a commit to branch 3.6.x
in repository nx-libs.

commit ebe00df38f264ef71dac3c73d416a74685c8cbd2
Author: Mike Gabriel <mike.gabriel at das-netzwerkteam.de>
Date:   Wed Mar 4 08:35:50 2015 +0100

    imake cleanup: Drop all references to XdmxServer and BuildXdmx*.
---
 debian/rules                           |    2 -
 nx-X11/config/cf/README                |    1 -
 nx-X11/config/cf/X11.tmpl              |   65 +-
 nx-X11/config/cf/host.def              |    7 -
 nx-X11/config/cf/xf86site.def          |    6 -
 nx-X11/config/cf/xorgsite.def          |    6 -
 nx-X11/include/extensions/Imakefile    |    5 +-
 nx-X11/include/extensions/dmxext.h     |  190 ------
 nx-X11/include/extensions/dmxproto.h   |  446 -------------
 nx-X11/lib/X11/Imakefile               |    2 +-
 nx-X11/programs/Xserver/Imakefile      |   54 +-
 nx-X11/programs/Xserver/Xext/Imakefile |    5 -
 nx-X11/programs/Xserver/Xext/dmx.c     | 1133 --------------------------------
 nx-X11/programs/Xserver/hw/Imakefile   |   18 -
 nx-libs.spec                           |    2 -
 15 files changed, 8 insertions(+), 1934 deletions(-)

diff --git a/debian/rules b/debian/rules
index 2375b46..d3532b3 100755
--- a/debian/rules
+++ b/debian/rules
@@ -59,8 +59,6 @@ override_dh_install:
 	rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/xf86dga.h
 	rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/xf86dga1str.h
 	rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/xf86mscstr.h
-	rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/dmxext.h
-	rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/dmxproto.h
 	rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/bigreqstr.h
 	rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/xcmiscstr.h
 	rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/XIproto.h
diff --git a/nx-X11/config/cf/README b/nx-X11/config/cf/README
index 8317ef4..051d587 100644
--- a/nx-X11/config/cf/README
+++ b/nx-X11/config/cf/README
@@ -465,7 +465,6 @@ The following variables are used by some part of the tree:
 	HtmlDir			path used by Web server for HTML and RX docs
 	CgiBinDir		path used by Web server for CGI programs
 	ProxyManager		ICE network ID to contact a running proxymngr
-	XdmxServer		build Distributed Multihead X server
 
 
 Make Variables
diff --git a/nx-X11/config/cf/X11.tmpl b/nx-X11/config/cf/X11.tmpl
index 38e6271..09dbc8f 100644
--- a/nx-X11/config/cf/X11.tmpl
+++ b/nx-X11/config/cf/X11.tmpl
@@ -138,18 +138,8 @@ XORGRELSTRING = XorgManVersionString
 #ifndef BuildDocs
 #define BuildDocs		!BuildServersOnly
 #endif
-#ifndef BuildDmx
-#define BuildDmx		NO
-#endif
-#ifndef XdmxServer
-#define XdmxServer		BuildDmx
-#endif
-#ifndef BuildLibrariesForDmx
-#define BuildLibrariesForDmx	XdmxServer
-#endif
 #ifndef BuildLibraries
-#define BuildLibraries		(!BuildServersOnly || BuildClients || \
-				 BuildLibrariesForDmx)
+#define BuildLibraries		(!BuildServersOnly || BuildClients)
 #endif
 #ifndef BuildLibrariesForXServers
 #define BuildLibrariesForXServers	BuildServer
@@ -362,8 +352,7 @@ XORGRELSTRING = XorgManVersionString
 #define BuildXInputExt		NO
 #endif
 #ifndef BuildXInputLib
-#define BuildXInputLib		(BuildXInputExt && \
-				 (!BuildServersOnly || BuildLibrariesForDmx))
+#define BuildXInputLib		(BuildXInputExt && !BuildServersOnly)
 #endif
 #ifndef BuildEVI
 #define BuildEVI		YES
@@ -385,8 +374,7 @@ XORGRELSTRING = XorgManVersionString
 #define BuildFontLib		(BuildLibraries || BuildServer)
 #else
 #define BuildFontLib		(BuildLibraries || \
-				 (BuildServer && !DoLoadableServer) || \
-				 XprtServer || XdmxServer)
+				 (BuildServer && !DoLoadableServer) || XprtServer)
 #endif
 #endif
 #ifndef BuildFontCache
@@ -419,7 +407,6 @@ XORGRELSTRING = XorgManVersionString
 #endif
 #ifndef BuildXKBlib
 #define BuildXKBlib		(BuildXKB && (!BuildServersOnly || \
-					      XdmxServer || \
 					      BuildXkbcomp ))
 #endif
 #ifndef BuildXKBuilib
@@ -459,13 +446,6 @@ XORGRELSTRING = XorgManVersionString
 #ifndef BuildXineramaLibrary
 #define BuildXineramaLibrary	(BuildXinerama)
 #endif
-#ifndef BuildDmxDevelTools
-#define BuildDmxDevelTools	NO
-#endif
-#ifndef BuildDmxLibrary
-#define BuildDmxLibrary		(BuildDmx && \
-				 (!BuildServersOnly || BuildDmxDevelTools))
-#endif
 #ifndef BuildXCSecurity
 #define BuildXCSecurity		YES
 #endif
@@ -550,8 +530,7 @@ XORGRELSTRING = XorgManVersionString
 #define BuildXResExt            NO
 #endif
 #ifndef BuildXResLibrary
-#define BuildXResLibrary        (BuildXResExt && \
-				 (!BuildServersOnly || BuildDmxDevelTools))
+#define BuildXResLibrary        (BuildXResExt && !BuildServersOnly)
 #endif
 #ifndef BuildXvExt
 #define BuildXvExt		NO
@@ -616,7 +595,7 @@ XORGRELSTRING = XorgManVersionString
 #define BuildRender		YES
 #endif
 #ifndef BuildRenderLibrary
-#define BuildRenderLibrary	(XdmxServer || !BuildServersOnly)
+#define BuildRenderLibrary	!BuildServersOnly
 #endif
 #ifndef BuildXftLibrary
 #define BuildXftLibrary		BuildRenderLibrary
@@ -2516,30 +2495,6 @@ SharedLibReferences(XXF86DGA,NX_Xxf86dga,$(XXF86DGALIBSRC),SOXXF86DGAREV,SharedX
 ProjectUnsharedLibReferences(XXF86DGA,NX_Xxf86dga,$(XXF86DGALIBSRC),XBuildLibDir)
 #endif
 
-#if BuildDmxLibrary
-#ifndef SharedLibDmx
-#define SharedLibDmx		NO
-#endif
-#ifndef NormalLibDmx
-#define NormalLibDmx		YES
-#endif
-#ifndef DebugLibDmx
-#define DebugLibDmx		NO
-#endif
-#ifndef ProfileLibDmx
-#define ProfileLibDmx		NO
-#endif
-#else /* BuildDmxLibrary */
-#undef SharedLibDmx
-#define SharedLibDmx		NO
-#undef NormalLibDmx
-#define NormalLibDmx		NO
-#undef DebugLibDmx
-#define DebugLibDmx		NO
-#undef ProfileLibDmx
-#define ProfileLibDmx		NO
-#endif /* BuildDmxLibrary */
-
     XXF86RUSHLIBSRC = $(LIBSRC)/Xxf86rush
 #if SharedLibXxf86rush
 #ifndef SharedXxf86rushRev
@@ -2592,16 +2547,6 @@ SharedLibReferences(XRES,NX_XRes,$(XRESLIBSRC),SOXRESREV,SharedXResRev)
 ProjectUnsharedLibReferences(XRES,NX_XRes,$(XRESLIBSRC),XBuildLibDir)
 #endif
 
-    DMXLIBSRC = $(LIBSRC)/dmx
-#if SharedLibDmx
-#ifndef SharedDmxRev
-#define SharedDmxRev 1.0
-#endif
-SharedLibReferences(DMX,NX_dmx,$(DMXLIBSRC),SODMXREV,SharedDmxRev)
-#else
-ProjectUnsharedLibReferences(DMX,NX_dmx,$(DMXLIBSRC),XBuildLibDir)
-#endif
-
     DPSLIBSRC = $(LIBSRC)/dps
 #if SharedLibDps
 #ifndef SharedDpsRev
diff --git a/nx-X11/config/cf/host.def b/nx-X11/config/cf/host.def
index 28f0e3a..4a5f4b2 100644
--- a/nx-X11/config/cf/host.def
+++ b/nx-X11/config/cf/host.def
@@ -76,13 +76,6 @@ XCOMM $XFree86: xc/config/cf/xf86site.def,v 3.186 2003/06/25 18:06:22 eich Exp $
 #define XorgServer		NO
 
 /*
- * To enable building Xdmx, uncomment this.
- *
-#define XdmxServer YES
- */
-#define XdmxServer NO
-
-/*
  * To disable building Xprt, uncomment this.
  *
 #define XprtServer NO
diff --git a/nx-X11/config/cf/xf86site.def b/nx-X11/config/cf/xf86site.def
index 4cdf0d8..ca429c9 100644
--- a/nx-X11/config/cf/xf86site.def
+++ b/nx-X11/config/cf/xf86site.def
@@ -45,12 +45,6 @@ XCOMM $XFree86: xc/config/cf/xf86site.def,v 3.186 2003/06/25 18:06:22 eich Exp $
  */
 
 /*
- * To enable building Xdmx, uncomment this.
- *
-#define XdmxServer		YES
- */
-
-/*
  * To disable building Xprt, uncomment this.
  *
 #define XprtServer NO
diff --git a/nx-X11/config/cf/xorgsite.def b/nx-X11/config/cf/xorgsite.def
index ad9bfd8..ee0c5db 100644
--- a/nx-X11/config/cf/xorgsite.def
+++ b/nx-X11/config/cf/xorgsite.def
@@ -45,12 +45,6 @@ XCOMM $XFree86: xc/config/cf/xf86site.def,v 3.186 2003/06/25 18:06:22 eich Exp $
  */
 
 /*
- * To enable building Xdmx, uncomment this.
- *
-#define XdmxServer YES
- */
-
-/*
  * To disable building Xprt, uncomment this.
  *
 #define XprtServer NO
diff --git a/nx-X11/include/extensions/Imakefile b/nx-X11/include/extensions/Imakefile
index 65c78ad..269b8bb 100644
--- a/nx-X11/include/extensions/Imakefile
+++ b/nx-X11/include/extensions/Imakefile
@@ -64,9 +64,6 @@ XRESHEADERS = XRes.h XResproto.h
 #if BuildXevie || BuildXevieLibrary
 XEVIEHEADERS = Xevie.h Xeviestr.h
 #endif
-#if BuildDmx || BuildDmxLibrary
-XDMXHEADERS = dmxext.h dmxproto.h
-#endif
 
 EXTRAHEADERS = $(SCREENSAVERHEADERS) $(XF86MISCHEADERS) $(XF86BIGFONTHEADERS) \
 	       $(XF86VIDMODEHEADERS) $(XF86DGAHEADERS) $(XINERAMAHEADERS) \
@@ -74,7 +71,7 @@ EXTRAHEADERS = $(SCREENSAVERHEADERS) $(XF86MISCHEADERS) $(XF86BIGFONTHEADERS) \
 	       $(FONTCACHEHEADERS) $(RENDERHEADERS) $(RANDRHEADERS) \
 	       $(XFIXESHEADERS) $(DAMAGEHEADERS) $(COMPOSITEHEADERS) \
 	       $(XEVIEHEADERS) \
-	       $(XTRAPHEADERS) $(XRESHEADERS) $(XDMXHEADERS)
+	       $(XTRAPHEADERS) $(XRESHEADERS)
 
 
 
diff --git a/nx-X11/include/extensions/dmxext.h b/nx-X11/include/extensions/dmxext.h
deleted file mode 100644
index c554232..0000000
--- a/nx-X11/include/extensions/dmxext.h
+++ /dev/null
@@ -1,190 +0,0 @@
-/* $XFree86$ */
-/*
- * Copyright 2002-2004 Red Hat Inc., Durham, North Carolina.
- *
- * 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 on 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
- * NON-INFRINGEMENT.  IN NO EVENT SHALL RED HAT AND/OR THEIR SUPPLIERS
- * 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.
- */
-
-/*
- * Authors:
- *   Rickard E. (Rik) Faith <faith at redhat.com>
- *
- */
-
-/** \file
- * This file describes the interface to the client-side libdmx.a
- * library.  All DMX-aware client-side applications should include this
- * file. */
-
-#ifndef _DMXEXT_H_
-#define _DMXEXT_H_
-
-/* These values must be larger than LastExtensionError.
-   The values in dmxext.h and dmxproto.h *MUST* match. */
-#define DmxBadXinerama         1001
-#define DmxBadValue            1002
-#define DmxBadReply            1003
-
-#define DMXScreenWindowWidth   (1L<<0)
-#define DMXScreenWindowHeight  (1L<<1)
-#define DMXScreenWindowXoffset (1L<<2)
-#define DMXScreenWindowYoffset (1L<<3)
-#define DMXRootWindowWidth     (1L<<4)
-#define DMXRootWindowHeight    (1L<<5)
-#define DMXRootWindowXoffset   (1L<<6)
-#define DMXRootWindowYoffset   (1L<<7)
-#define DMXRootWindowXorigin   (1L<<8)
-#define DMXRootWindowYorigin   (1L<<9)
-
-#define DMXDesktopWidth        (1L<<0)
-#define DMXDesktopHeight       (1L<<1)
-#define DMXDesktopShiftX       (1L<<2)
-#define DMXDesktopShiftY       (1L<<3)
-
-#define DMXInputType           (1L<<0)
-#define DMXInputPhysicalScreen (1L<<1)
-#define DMXInputSendsCore      (1L<<2)
-
-#ifndef _DMX_SERVER_
-
-/** Client-library screen information structure, returned by
- * #DMXGetScreenAttributes.  */
-typedef struct {
-    char         *displayName;
-    int          logicalScreen;
-
-    unsigned int screenWindowWidth;    /* displayName's coordinate system */
-    unsigned int screenWindowHeight;   /* displayName's coordinate system */
-    int          screenWindowXoffset;  /* displayName's coordinate system */
-    int          screenWindowYoffset;  /* displayName's coordinate system */
-
-    unsigned int rootWindowWidth;      /* screenWindow's coordinate system */
-    unsigned int rootWindowHeight;     /* screenWindow's coordinate system */
-    int          rootWindowXoffset;    /* screenWindow's coordinate system */
-    int          rootWindowYoffset;    /* screenWindow's coordinate system */
-
-    int          rootWindowXorigin;    /* global coordinate system */
-    int          rootWindowYorigin;    /* global coordinate system */
-} DMXScreenAttributes;
-
-/** Client-library window information structure, returned by
- * #DMXGetWindowAttributes. */
-typedef struct {
-    int          screen;
-    Window       window;
-    XRectangle   pos, vis;
-} DMXWindowAttributes;
-
-/** Client-library desktop information structure, returned by
- * #DMXGetDesktopAttributes. */
-typedef struct {
-    unsigned int width;         /* global coordinate system */
-    unsigned int height;        /* global coordinate system */
-    int          shiftX;        /* global coordinate system */
-    int          shiftY;        /* global coordinate system */
-} DMXDesktopAttributes;
-
-/** Enumeration for the #inputType field in the #DMXInputAttributes
- * structure. */
-typedef enum {
-    DMXLocalInputType,
-    DMXConsoleInputType,
-    DMXBackendInputType
-} DMXInputEnum;
-
-/** Client-library input information structure, returned by
- * #DMXGetInputAttributes. */ 
-typedef struct {
-    DMXInputEnum inputType;
-    int          physicalScreen;
-    int          physicalId;
-    Bool         isCore;
-    Bool         sendsCore;
-    const char   *name;
-    Bool         detached;
-} DMXInputAttributes;
-
-_XFUNCPROTOBEGIN
-
-extern Bool DMXQueryExtension(Display *dpy,
-                              int *event_basep, int *error_basep);
-extern Bool DMXQueryVersion(Display *dpy, int *major_version,
-                            int *minor_version, int *patch_version);
-extern Bool DMXSync(Display *dpy);
-extern Bool DMXForceWindowCreation(Display *dpy, Window window);
-
-
-extern Bool DMXGetScreenCount(Display *dpy, int *screen_count);
-extern Bool DMXGetScreenAttributes(Display *dpy,
-                                   int screen,
-                                   DMXScreenAttributes *attr);
-extern int  DMXChangeScreensAttributes(Display *dpy,
-                                       int screen_count,
-                                       int *screens,
-                                       int mask_count,
-                                       unsigned int *masks,
-                                       DMXScreenAttributes *attr, /* vector */
-                                       int *error_screen);
-
-extern Bool DMXAddScreen(Display *dpy,
-                         const char *displayName,
-                         unsigned int mask,
-                         DMXScreenAttributes *attr,
-                         int *screen);
-extern Bool DMXRemoveScreen(Display *dpy, int screen);
-
-/* Call DMXGetScreenWindowCount and allocate info to that size.  Pass
- * the size in available_count.  This call can generate a large amount
- * of wire traffic and should not be used called with available_count=0
- * just to determine the screen_count value -- use DMXGetScreenCount
- * instead.  NOTE: Also see DMX protocol specification (DMXSpec.txt) for
- * usage of DMXSync to flush pending commands. */
-extern Bool DMXGetWindowAttributes(Display *dpy, Window window,
-                                   int *screen_count, int available_count,
-                                   DMXWindowAttributes *attr);
-
-extern Bool DMXGetDesktopAttributes(Display *dpy, DMXDesktopAttributes *attr);
-extern int  DMXChangeDesktopAttributes(Display *dpy,
-                                       unsigned int mask,
-                                       DMXDesktopAttributes *attr);
-
-extern Bool DMXGetInputCount(Display *dpy, int *input_count);
-extern Bool DMXGetInputAttributes(Display *dpy, int id,
-                                  DMXInputAttributes *attr);
-
-extern Bool DMXAddInput(Display *dpy,
-                        unsigned int mask,
-                        DMXInputAttributes *attr,
-                        int *id);
-extern Bool DMXRemoveInput(Display *dpy, int id);
-
-/* These are helper functions that call DMXAddInput. */
-extern Bool DMXAddBackendInput(Display *dpy, int screen, int sendsCore,
-                               int *newId);
-extern Bool DMXAddConsoleInput(Display *dpy, const char *name, int sendsCore,
-                               int *newId);
-
-_XFUNCPROTOEND
-#endif
-#endif
diff --git a/nx-X11/include/extensions/dmxproto.h b/nx-X11/include/extensions/dmxproto.h
deleted file mode 100644
index b6b11f4..0000000
--- a/nx-X11/include/extensions/dmxproto.h
+++ /dev/null
@@ -1,446 +0,0 @@
-/* $XFree86$ */
-/*
- * Copyright 2002-2004 Red Hat Inc., Durham, North Carolina.
- *
- * 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 on 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
- * NON-INFRINGEMENT.  IN NO EVENT SHALL RED HAT AND/OR THEIR SUPPLIERS
- * 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.
- */
-
-/*
- * Authors:
- *   Rickard E. (Rik) Faith <faith at redhat.com>
- *
- */
-
-/** \file
- * This file describes the structures necessary to implement the wire
- * protocol for the DMX protocol extension.  It should be included only
- * in files that implement the client-side (or server-side) part of the
- * protocol (i.e., client-side applications should \b not include this
- * file). */
-
-#ifndef _DMXSTR_H_
-#define _DMXSTR_H_
-
-#define DMX_EXTENSION_NAME  "DMX"
-#define DMX_EXTENSION_MAJOR 2
-#define DMX_EXTENSION_MINOR 2
-#define DMX_EXTENSION_PATCH 20040604
-
-/* These values must be larger than LastExtensionError.
-   The values in dmxext.h and dmxproto.h *MUST* match. */
-#define DMX_BAD_XINERAMA     1001
-#define DMX_BAD_VALUE        1002
-
-#define X_DMXQueryVersion                   0
-#define X_DMXGetScreenCount                 1
-#define X_DMXGetScreenInformationDEPRECATED 2
-#define X_DMXGetWindowAttributes            3
-#define X_DMXGetInputCount                  4
-#define X_DMXGetInputAttributes             5
-#define X_DMXForceWindowCreationDEPRECATED  6
-#define X_DMXReconfigureScreenDEPRECATED    7
-#define X_DMXSync                           8
-#define X_DMXForceWindowCreation            9
-#define X_DMXGetScreenAttributes           10
-#define X_DMXChangeScreensAttributes       11
-#define X_DMXAddScreen                     12
-#define X_DMXRemoveScreen                  13
-#define X_DMXGetDesktopAttributes          14
-#define X_DMXChangeDesktopAttributes       15
-#define X_DMXAddInput                      16
-#define X_DMXRemoveInput                   17
-
-/** Wire-level description of DMXQueryVersion protocol request. */
-typedef struct {
-    CARD8   reqType;            /* dmxcode */
-    CARD8   dmxReqType;         /* X_DMXQueryVersion */
-    CARD16  length B16;
-} xDMXQueryVersionReq;
-#define sz_xDMXQueryVersionReq 4
-
-/** Wire-level description of DMXQueryVersion protocol reply. */
-typedef struct {
-    BYTE    type;               /* X_Reply */
-    CARD8   ununsed;
-    CARD16  sequenceNumber B16;
-    CARD32  length B32;
-    CARD32  majorVersion B32;
-    CARD32  minorVersion B32;
-    CARD32  patchVersion B32;
-    CARD32  pad0 B32;
-    CARD32  pad1 B32;
-    CARD32  pad2 B32;
-} xDMXQueryVersionReply;
-#define sz_xDMXQueryVersionReply 32
-
-/** Wire-level description of DMXSync protocol request. */
-typedef struct {
-    CARD8   reqType;            /* DMXCode */
-    CARD8   dmxReqType;         /* X_DMXSync */
-    CARD16  length B16;
-} xDMXSyncReq;
-#define sz_xDMXSyncReq 4
-
-/** Wire-level description of DMXSync protocol reply. */
-typedef struct {
-    BYTE    type;               /* X_Reply */
-    CARD8   unused;
-    CARD16  sequenceNumber B16;
-    CARD32  length B32;
-    CARD32  status B32;
-    CARD32  pad0 B32;
-    CARD32  pad1 B32;
-    CARD32  pad2 B32;
-    CARD32  pad3 B32;
-    CARD32  pad4 B32;
-} xDMXSyncReply;
-#define sz_xDMXSyncReply 32
-
-/** Wire-level description of DMXForceWindowCreation protocol request. */
-typedef struct {
-    CARD8   reqType;            /* DMXCode */
-    CARD8   dmxReqType;         /* X_DMXForceWindowCreation */
-    CARD16  length B16;
-    CARD32  window B32;
-} xDMXForceWindowCreationReq;
-#define sz_xDMXForceWindowCreationReq 8
-
-/** Wire-level description of DMXForceWindowCreation protocol reply. */
-typedef struct {
-    BYTE    type;               /* X_Reply */
-    CARD8   unused;
-    CARD16  sequenceNumber B16;
-    CARD32  length B32;
-    CARD32  status B32;
-    CARD32  pad0 B32;
-    CARD32  pad1 B32;
-    CARD32  pad2 B32;
-    CARD32  pad3 B32;
-    CARD32  pad4 B32;
-} xDMXForceWindowCreationReply;
-#define sz_xDMXForceWindowCreationReply 32
-
-/** Wire-level description of DMXGetScreenCount protocol request. */
-typedef struct {
-    CARD8   reqType;            /* DMXCode */
-    CARD8   dmxReqType;         /* X_DMXGetScreenCount */
-    CARD16  length B16;
-} xDMXGetScreenCountReq;
-#define sz_xDMXGetScreenCountReq 4
-
-/** Wire-level description of DMXGetScreenCount protocol reply. */
-typedef struct {
-    BYTE    type;               /* X_Reply */
-    CARD8   unused;
-    CARD16  sequenceNumber B16;
-    CARD32  length B32;
-    CARD32  screenCount B32;
-    CARD32  pad0 B32;
-    CARD32  pad1 B32;
-    CARD32  pad2 B32;
-    CARD32  pad3 B32;
-    CARD32  pad4 B32;
-} xDMXGetScreenCountReply;
-#define sz_xDMXGetScreenCountReply 32
-
-/** Wire-level description of DMXGetScreenAttributes protocol request. */
-typedef struct {
-    CARD8   reqType;            /* DMXCode */
-    CARD8   dmxReqType;         /* X_DMXGetScreenAttributes */
-    CARD16  length B16;
-    CARD32  physicalScreen B32;
-} xDMXGetScreenAttributesReq;
-#define sz_xDMXGetScreenAttributesReq 8
-
-/** Wire-level description of DMXGetScreenAttributes protocol reply. */
-typedef struct {
-    BYTE    type;               /* X_Reply */
-    CARD8   unused;
-    CARD16  sequenceNumber B16;
-    CARD32  length B32;
-    CARD32  displayNameLength B32;
-    CARD32  logicalScreen B32;
-
-    CARD16  screenWindowWidth B16;
-    CARD16  screenWindowHeight B16;
-    INT16   screenWindowXoffset B16;
-    INT16   screenWindowYoffset B16;
-
-    CARD16  rootWindowWidth B16;
-    CARD16  rootWindowHeight B16;
-    INT16   rootWindowXoffset B16;
-    INT16   rootWindowYoffset B16;
-    INT16   rootWindowXorigin B16;
-    INT16   rootWindowYorigin B16;
-} xDMXGetScreenAttributesReply;
-#define sz_xDMXGetScreenAttributesReply 36
-
-/** Wire-level description of DMXChangeScreensAttributes protocol request. */
-typedef struct {
-    CARD8   reqType;            /* DMXCode */
-    CARD8   dmxReqType;         /* X_DMXChangeScreensAttributes */
-    CARD16  length B16;
-    CARD32  screenCount B32;
-    CARD32  maskCount B32;
-} xDMXChangeScreensAttributesReq;
-#define sz_xDMXChangeScreensAttributesReq 12
-
-/** Wire-level description of DMXChangeScreensAttributes protocol reply. */
-typedef struct {
-    BYTE    type;               /* X_Reply */
-    CARD8   unused;
-    CARD16  sequenceNumber B16;
-    CARD32  length B32;
-    CARD32  status B32;
-    CARD32  errorScreen B32;
-    CARD32  pad0 B32;
-    CARD32  pad1 B32;
-    CARD32  pad2 B32;
-    CARD32  pad3 B32;
-} xDMXChangeScreensAttributesReply;
-#define sz_xDMXChangeScreensAttributesReply 32
-
-/** Wire-level description of DMXAddScreen protocol request. */
-typedef struct {
-    CARD8   reqType;            /* DMXCode */
-    CARD8   dmxReqType;         /* X_DMXAddScreen */
-    CARD16  length B16;
-    CARD32  displayNameLength B32;
-    CARD32  physicalScreen B32;
-    CARD32  valueMask B32;
-} xDMXAddScreenReq;
-#define sz_xDMXAddScreenReq 16
-
-/** Wire-level description of DMXAddScreen protocol reply. */
-typedef struct {
-    BYTE    type;               /* X_Reply */
-    CARD8   unused;
-    CARD16  sequenceNumber B16;
-    CARD32  length B32;
-    CARD32  status B32;
-    CARD32  physicalScreen B32;
-    CARD32  pad0 B32;
-    CARD32  pad1 B32;
-    CARD32  pad2 B32;
-    CARD32  pad3 B32;
-} xDMXAddScreenReply;
-#define sz_xDMXAddScreenReply 32
-
-/** Wire-level description of DMXRemoveScreen protocol request. */
-typedef struct {
-    CARD8   reqType;            /* DMXCode */
-    CARD8   dmxReqType;         /* X_DMXRemoveScreen */
-    CARD16  length B16;
-    CARD32  physicalScreen B32;
-} xDMXRemoveScreenReq;
-#define sz_xDMXRemoveScreenReq 8
-
-/** Wire-level description of DMXRemoveScreen protocol reply. */
-typedef struct {
-    BYTE    type;               /* X_Reply */
-    CARD8   unused;
-    CARD16  sequenceNumber B16;
-    CARD32  length B32;
-    CARD32  status B32;
-    CARD32  pad0 B32;
-    CARD32  pad1 B32;
-    CARD32  pad2 B32;
-    CARD32  pad3 B32;
-    CARD32  pad4 B32;
-} xDMXRemoveScreenReply;
-#define sz_xDMXRemoveScreenReply 32
-
-/** Wire-level description of DMXGetWindowAttributes protocol request. */
-typedef struct {
-    CARD8   reqType;            /* DMXCode */
-    CARD8   dmxReqType;         /* X_DMXGetWindowAttributes */
-    CARD16  length B16;
-    CARD32  window B32;
-} xDMXGetWindowAttributesReq;
-#define sz_xDMXGetWindowAttributesReq 8
-
-/** Wire-level description of DMXGetWindowAttributes protocol reply. */
-typedef struct {
-    BYTE    type;               /* X_Reply */
-    CARD8   unused;
-    CARD16  sequenceNumber B16;
-    CARD32  length B32;
-    CARD32  screenCount B32;
-    CARD32  pad0 B32;
-    CARD32  pad1 B32;
-    CARD32  pad2 B32;
-    CARD32  pad3 B32;
-    CARD32  pad4 B32;
-} xDMXGetWindowAttributesReply;
-#define sz_xDMXGetWindowAttributesReply 32
-
-/** Wire-level description of DMXGetDesktopAttributes protocol request. */
-typedef struct {
-    CARD8   reqType;            /* DMXCode */
-    CARD8   dmxReqType;         /* X_DMXGetDesktopAttributes */
-    CARD16  length B16;
-} xDMXGetDesktopAttributesReq;
-#define sz_xDMXGetDesktopAttributesReq 4
-
-/** Wire-level description of DMXGetDesktopAttributes protocol reply. */
-typedef struct {
-    BYTE    type;               /* X_Reply */
-    CARD8   unused;
-    CARD16  sequenceNumber B16;
-    CARD32  length B32;
-    INT16   width;
-    INT16   height;
-    INT16   shiftX;
-    INT16   shiftY;
-    CARD32  pad0 B32;
-    CARD32  pad1 B32;
-    CARD32  pad2 B32;
-    CARD32  pad3 B32;
-} xDMXGetDesktopAttributesReply;
-#define sz_xDMXGetDesktopAttributesReply 32
-
-/** Wire-level description of DMXChangeDesktopAttributes protocol request. */
-typedef struct {
-    CARD8   reqType;            /* DMXCode */
-    CARD8   dmxReqType;         /* X_DMXChangeDesktopAttributes */
-    CARD16  length B16;
-    CARD32  valueMask B32;
-} xDMXChangeDesktopAttributesReq;
-#define sz_xDMXChangeDesktopAttributesReq 8
-
-/** Wire-level description of DMXChangeDesktopAttributes protocol reply. */
-typedef struct {
-    BYTE    type;               /* X_Reply */
-    CARD8   unused;
-    CARD16  sequenceNumber B16;
-    CARD32  length B32;
-    CARD32  status B32;
-    CARD32  pad0 B32;
-    CARD32  pad1 B32;
-    CARD32  pad2 B32;
-    CARD32  pad3 B32;
-    CARD32  pad4 B32;
-} xDMXChangeDesktopAttributesReply;
-#define sz_xDMXChangeDesktopAttributesReply 32
-
-/** Wire-level description of DMXGetInputCount protocol request. */
-typedef struct {
-    CARD8   reqType;            /* DMXCode */
-    CARD8   dmxReqType;         /* X_DMXGetInputCount */
-    CARD16  length B16;
-} xDMXGetInputCountReq;
-#define sz_xDMXGetInputCountReq 4
-
-/** Wire-level description of DMXGetInputCount protocol reply. */
-typedef struct {
-    BYTE    type;               /* X_Reply */
-    CARD8   unused;
-    CARD16  sequenceNumber B16;
-    CARD32  length B32;
-    CARD32  inputCount B32;
-    CARD32  pad0 B32;
-    CARD32  pad1 B32;
-    CARD32  pad2 B32;
-    CARD32  pad3 B32;
-    CARD32  pad4 B32;
-} xDMXGetInputCountReply;
-#define sz_xDMXGetInputCountReply 32
-
-/** Wire-level description of DMXGetInputAttributes protocol request. */
-typedef struct {
-    CARD8   reqType;            /* DMXCode */
-    CARD8   dmxReqType;         /* X_DMXGetInputAttributes */
-    CARD16  length B16;
-    CARD32  deviceId B32;
-} xDMXGetInputAttributesReq;
-#define sz_xDMXGetInputAttributesReq 8
-
-/** Wire-level description of DMXGetInputAttributes protocol reply. */
-typedef struct {
-    BYTE    type;               /* X_Reply */
-    CARD8   unused;
-    CARD16  sequenceNumber B16;
-    CARD32  length B32;
-    CARD32  inputType B32;
-    CARD32  physicalScreen B32;
-    CARD32  physicalId B32;
-    CARD32  nameLength B32;
-    BOOL    isCore;
-    BOOL    sendsCore;
-    BOOL    detached;
-    CARD8   pad0;
-    CARD32  pad1 B32;
-} xDMXGetInputAttributesReply;
-#define sz_xDMXGetInputAttributesReply 32
-
-/** Wire-level description of DMXAddInput protocol request. */
-typedef struct {
-    CARD8   reqType;            /* DMXCode */
-    CARD8   dmxReqType;         /* X_DMXAddInput */
-    CARD16  length B16;
-    CARD32  displayNameLength B32;
-    CARD32  valueMask;
-} xDMXAddInputReq;
-#define sz_xDMXAddInputReq 12
-
-/** Wire-level description of DMXAddInput protocol reply. */
-typedef struct {
-    BYTE    type;               /* X_Reply */
-    CARD8   unused;
-    CARD16  sequenceNumber B16;
-    CARD32  length B32;
-    CARD32  status B32;
-    CARD32  physicalId B32;
-    CARD32  pad0 B32;
-    CARD32  pad1 B32;
-    CARD32  pad2 B32;
-    CARD32  pad3 B32;
-} xDMXAddInputReply;
-#define sz_xDMXAddInputReply 32
-
-/** Wire-level description of DMXRemoveInput protocol request. */
-typedef struct {
-    CARD8   reqType;            /* DMXCode */
-    CARD8   dmxReqType;         /* X_DMXRemoveInput */
-    CARD16  length B16;
-    CARD32  physicalId B32;
-} xDMXRemoveInputReq;
-#define sz_xDMXRemoveInputReq 8
-
-/** Wire-level description of DMXRemoveInput protocol reply. */
-typedef struct {
-    BYTE     type;
-    CARD8    unused;
-    CARD16   sequenceNumber B16;
-    CARD32   length B32;
-    CARD32   status B32;
-    CARD32   pad0 B32;
-    CARD32   pad1 B32;
-    CARD32   pad2 B32;
-    CARD32   pad3 B32;
-    CARD32   pad4 B32;
-} xDMXRemoveInputReply;
-#define sz_xDMXRemoveInputReply 32
-
-#endif
diff --git a/nx-X11/lib/X11/Imakefile b/nx-X11/lib/X11/Imakefile
index ca6ce96..4e781f5 100644
--- a/nx-X11/lib/X11/Imakefile
+++ b/nx-X11/lib/X11/Imakefile
@@ -27,7 +27,7 @@ XCOMM $XFree86: xc/lib/X11/Imakefile,v 3.52 2003/05/27 16:53:15 tsi Exp $
         HEADERS = Xlib.h Xresource.h Xutil.h cursorfont.h Xlibint.h \
 		Xcms.h Xlocale.h XKBlib.h XlibConf.h Xregion.h ImUtil.h
 
-#if BuildServersOnly && !BuildGLXLibrary && !BuildClients && !XdmxServer && !NXAgentServer
+#if BuildServersOnly && !BuildGLXLibrary && !BuildClients && !NXAgentServer
 all::
 
 BuildIncludes($(HEADERS),IncSubdir,..)
diff --git a/nx-X11/programs/Xserver/Imakefile b/nx-X11/programs/Xserver/Imakefile
index b39b0b9..979a946 100644
--- a/nx-X11/programs/Xserver/Imakefile
+++ b/nx-X11/programs/Xserver/Imakefile
@@ -542,9 +542,6 @@ XF86SERVER = XFree86
 #if defined(XorgServer) && XorgServer
 XF86SERVER = Xorg
 #endif
-#if XdmxServer
-XDMX = Xdmx
-#endif
 #if defined(NXAgentServer) && NXAgentServer
 NXAGENT = nxagent
 #endif
@@ -554,7 +551,6 @@ NXWIN = NXWin
 #if (defined(XF86Server) && XF86Server) || \
     (defined(XorgServer) && XorgServer) || \
     (defined(NXAgentServer) && NXAgentServer) || \
-    (defined(XdmxServer) && XdmxServer) || \
     (!MakeDllModules && defined(NXWinServer) && NXWinServer) 
 MakeMutex($(XF86SERVER) $(NXAGENT) $(NXWIN))
 #endif
@@ -1050,54 +1046,6 @@ Xnon: $(STDDIRS) $(MFBDIR) $(CFB8DIR) $(CFB16DIR) $(CFB32DIR) $(DEPDIRS)
 #endif /* XnonServer */
 
 
-#if defined(XdmxServer) && XdmxServer
-XCOMM
-XCOMM distribued multihead Server
-XCOMM
-#ifndef Win32Architecture
-XDMXDDXDIR = hw/dmx
-#else
-XDMXDDXDIR = hw
-#endif
-FBDIR = fb
-FBSUBDIR = fb
-MIDAMAGEDIR = miext/damage
-SHADOWDIR = miext/shadow
-XDMXDIRS = $(STDDIRS) $(XDMXDDXDIR) $(SHADOWDIR) $(DEPDIRS) $(FBDIR) $(MIDAMAGEDIR)
-#if BuildGlxExt
-#if BuildXinerama
-GLXPROXY_EXTRAOBJS = hw/dmx/panoramiX.o
-#endif
-GLXPROXYLIB = hw/dmx/glxProxy/LibraryTargetName(glxProxy)
-#endif
-#if !defined(LynxOSArchitecture) && \
-    !defined(Win32Architecture) && \
-    !defined(QNX4Architecture)
-XDMXOBJS = hw/dmx/miinitext.o $(GLXPROXY_EXTRAOBJS)
-#else
-XDMXOBJS = hw/dmx/miinitext.o $(GLXPROXY_EXTRAOBJS) dix/main.o
-#endif
-XDMX = hw/dmx/LibraryTargetName(dmx) \
-       hw/dmx/input/LibraryTargetName(dmxinput) \
-       hw/dmx/config/LibraryTargetName(dmxconfig) \
-       $(GLXPROXYLIB)
-XDMXLIBS = PreFbLibs $(XDMX) MiExtLibs FbPostFbLibs $(XDMX)
-#if BuildRender
-XDMXRENDERLIB = $(XRENDERLIB)
-#endif
-XDMXSYSLIBS = $(FONTLIBS) $(LDPRELIBS) $(XILIB) $(XLIB) $(SYSLIBS) $(XMULIB) $(XDMXRENDERLIB)
-#if HasParallelMake
-MakeMutex($(XDMXDIRS) $(XDMXOBJS) $(XDMXLIBS) $(XDMXSYSLIBS))
-#endif
-#if ForceServerRemake
-$(XDMXOBJS) $(XDMXLIBS) $(XDMXSYSLIBS):: $(XDMXDIRS)
-	@if [ -f $@ ]; then touch $@ >/dev/null 2>&1 || exit 0; fi
-#endif
-ServerTarget(Xdmx,$(XDMXDIRS),$(XDMXOBJS), \
-       $(LIBCWRAPPER) $(XDMXLIBS) $(LOADABLEEXTS),$(XDMXSYSLIBS))
-#endif /* XdmxServer */
-
-
 #if defined(NXWinServer) && NXWinServer
 XCOMM
 XCOMM X Server for MS Windows
@@ -1372,7 +1320,7 @@ MIEXTDIRS = $(SHADOWDIR) $(LAYERDIR) $(ROOTLESSDIR) $(MIDAMAGEDIR)
 IPLANDIRS = $(IPLAN2P2DIR) $(IPLAN2P4DIR) $(IPLAN2P8DIR)
 DDXDIRS = $(DECWSDDXDIR) $(SUNDDXDIR) $(LYNXDDXDIR) \
 	  $(HPDDXDIR) $(XFREE86DDXDIR) $(DARWINDDXDIR) \
-	  $(XDMXDDXDIR) $(NXAGENTDDXDIR) $(NXWINDDXDIR)
+	  $(NXAGENTDDXDIR) $(NXWINDDXDIR)
 SUBDIRS = $(STDDIRS) $(MFBSUBDIR) $(CFBSUBDIRS) \
 	  $(IPLANDIRS) $(ILBMDIR) $(AFBSUBDIR) \
           $(DDXDIRS) $(FBSUBDIR) $(KDRIVEDIRS) $(MIEXTDIRS)
diff --git a/nx-X11/programs/Xserver/Xext/Imakefile b/nx-X11/programs/Xserver/Xext/Imakefile
index b75f891..6846c28 100644
--- a/nx-X11/programs/Xserver/Xext/Imakefile
+++ b/nx-X11/programs/Xserver/Xext/Imakefile
@@ -113,11 +113,6 @@ XF86BIGFOBJS = xf86bigfont.o
         PNRXOBJS = panoramiX.o panoramiXSwap.o panoramiXprocs.o
     PNRXINCLUDES = -I$(FONTINCSRC) -I../mi -I../render
 #endif
-#if XdmxServer
-         DMXSRCS = dmx.c
-         DMXOBJS = dmx.o
-     DMXINCLUDES = -I../hw/dmx
-#endif
 #if BuildDPMS
         DPMSSRCS = dpms.c
         DPMSOBJS = dpms.o
diff --git a/nx-X11/programs/Xserver/Xext/dmx.c b/nx-X11/programs/Xserver/Xext/dmx.c
deleted file mode 100644
index 75623e6..0000000
--- a/nx-X11/programs/Xserver/Xext/dmx.c
+++ /dev/null
@@ -1,1133 +0,0 @@
-/* $XFree86$ */
-/*
- * Copyright 2002-2004 Red Hat Inc., Durham, North Carolina.
- *
- * 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 on 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
- * NON-INFRINGEMENT.  IN NO EVENT SHALL RED HAT AND/OR THEIR SUPPLIERS
- * 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.
- */
-
-/*
- * Authors:
- *   Rickard E. (Rik) Faith <faith at redhat.com>
- *
- */
-
-/** \file
- * This file implements the server-side part of the DMX protocol. A
- * vector of fucntions is provided at extension initialization time, so
- * most all of the useful functions in this file are declared static and
- * do not appear in the doxygen documentation.
- *
- * Much of the low-level work is done by functions in #dmxextension.c
- *
- * Please see the Client-to-Server DMX Extension to the X Protocol
- * document for details about the protocol.  */
-
-#ifdef HAVE_DMX_CONFIG_H
-#include <dmx-config.h>
-#endif
-
-#include <X11/X.h>
-#include <X11/Xproto.h>
-#include "misc.h"
-#include "os.h"
-#include "dixstruct.h"
-#define EXTENSION_PROC_ARGS void *
-#include "extnsionst.h"
-#include "opaque.h"
-
-#include "dmxextension.h"
-#include <X11/extensions/dmxproto.h>
-
-#define _DMX_SERVER_
-#include <X11/extensions/dmxext.h>
-
-#ifdef PANORAMIX
-#include "panoramiX.h"
-extern unsigned long XRT_WINDOW;
-extern int           PanoramiXNumScreens;
-#endif
-
-extern void DMXExtensionInit(void);
-
-static unsigned char DMXCode;
-
-static DISPATCH_PROC(ProcDMXDispatch);
-static DISPATCH_PROC(ProcDMXQueryVersion);
-static DISPATCH_PROC(ProcDMXSync);
-static DISPATCH_PROC(ProcDMXForceWindowCreation);
-static DISPATCH_PROC(ProcDMXGetScreenCount);
-static DISPATCH_PROC(ProcDMXGetScreenAttributes);
-static DISPATCH_PROC(ProcDMXChangeScreensAttributes);
-static DISPATCH_PROC(ProcDMXAddScreen);
-static DISPATCH_PROC(ProcDMXRemoveScreen);
-static DISPATCH_PROC(ProcDMXGetWindowAttributes);
-static DISPATCH_PROC(ProcDMXGetDesktopAttributes);
-static DISPATCH_PROC(ProcDMXChangeDesktopAttributes);
-static DISPATCH_PROC(ProcDMXGetInputCount);
-static DISPATCH_PROC(ProcDMXGetInputAttributes);
-static DISPATCH_PROC(ProcDMXAddInput);
-static DISPATCH_PROC(ProcDMXRemoveInput);
-
-static DISPATCH_PROC(SProcDMXDispatch);
-static DISPATCH_PROC(SProcDMXQueryVersion);
-static DISPATCH_PROC(SProcDMXSync);
-static DISPATCH_PROC(SProcDMXForceWindowCreation);
-static DISPATCH_PROC(SProcDMXGetScreenCount);
-static DISPATCH_PROC(SProcDMXGetScreenAttributes);
-static DISPATCH_PROC(SProcDMXChangeScreensAttributes);
-static DISPATCH_PROC(SProcDMXAddScreen);
-static DISPATCH_PROC(SProcDMXRemoveScreen);
-static DISPATCH_PROC(SProcDMXGetWindowAttributes);
-static DISPATCH_PROC(SProcDMXGetDesktopAttributes);
-static DISPATCH_PROC(SProcDMXChangeDesktopAttributes);
-static DISPATCH_PROC(SProcDMXGetInputCount);
-static DISPATCH_PROC(SProcDMXGetInputAttributes);
-static DISPATCH_PROC(SProcDMXAddInput);
-static DISPATCH_PROC(SProcDMXRemoveInput);
-
-static int _DMXXineramaActive(void)
-{
-#ifdef PANORAMIX
-    return !noPanoramiXExtension;
-#endif
-    return 0;
-}
-
-static void DMXResetProc(ExtensionEntry *extEntry)
-{
-}
-
-/** Initialize the extension. */
-void DMXExtensionInit(void)
-{
-    ExtensionEntry *extEntry;
-    
-    if ((extEntry = AddExtension(DMX_EXTENSION_NAME, 0, 0,
-                                 ProcDMXDispatch, SProcDMXDispatch,
-                                 DMXResetProc, StandardMinorOpcode)))
-	DMXCode = extEntry->base;
-}
-
-static void dmxSetScreenAttribute(int bit, DMXScreenAttributesPtr attr,
-                                  CARD32 value)
-{
-    switch (1 << bit) {
-    case DMXScreenWindowWidth:   attr->screenWindowWidth   = value; break;
-    case DMXScreenWindowHeight:  attr->screenWindowHeight  = value; break;
-    case DMXScreenWindowXoffset: attr->screenWindowXoffset = value; break;
-    case DMXScreenWindowYoffset: attr->screenWindowYoffset = value; break;
-    case DMXRootWindowWidth:     attr->rootWindowWidth     = value; break;
-    case DMXRootWindowHeight:    attr->rootWindowHeight    = value; break;
-    case DMXRootWindowXoffset:   attr->rootWindowXoffset   = value; break;
-    case DMXRootWindowYoffset:   attr->rootWindowYoffset   = value; break;
-    case DMXRootWindowXorigin:   attr->rootWindowXorigin   = value; break;
-    case DMXRootWindowYorigin:   attr->rootWindowYorigin   = value; break;
-    }
-}
-
-static int dmxFetchScreenAttributes(unsigned int mask,
-                                    DMXScreenAttributesPtr attr,
-                                    CARD32 *value_list)
-{
-    int    i;
-    CARD32 *value = value_list;
-    int    count  = 0;
-        
-    for (i = 0; i < 32; i++) {
-        if (mask & (1 << i)) {
-            dmxSetScreenAttribute(i, attr, *value);
-            ++value;
-            ++count;
-        }
-    }
-    return count;
-}
-
-static void dmxSetDesktopAttribute(int bit, DMXDesktopAttributesPtr attr,
-                                   CARD32 value)
-{
-    switch (1 << bit) {
-    case DMXDesktopWidth:  attr->width  = value; break;
-    case DMXDesktopHeight: attr->height = value; break;
-    case DMXDesktopShiftX: attr->shiftX = value; break;
-    case DMXDesktopShiftY: attr->shiftY = value; break;
-    }
-}
-
-static int dmxFetchDesktopAttributes(unsigned int mask,
-                                     DMXDesktopAttributesPtr attr,
-                                     CARD32 *value_list)
-{
-    int    i;
-    CARD32 *value = value_list;
-    int    count  = 0;
-        
-    for (i = 0; i < 32; i++) {
-        if (mask & (1 << i)) {
-            dmxSetDesktopAttribute(i, attr, *value);
-	    ++value;
-            ++count;
-        }
-    }
-    return count;
-}
-
-static void dmxSetInputAttribute(int bit, DMXInputAttributesPtr attr,
-                                 CARD32 value)
-{
-    switch (1 << bit) {
-    case DMXInputType:           attr->inputType      = value;   break;
-    case DMXInputPhysicalScreen: attr->physicalScreen = value;   break;
-    case DMXInputSendsCore:      attr->sendsCore      = !!value; break;
-    }
-}
-
-static int dmxFetchInputAttributes(unsigned int mask,
-                                   DMXInputAttributesPtr attr,
-                                   CARD32 *value_list)
-{
-    int    i;
-    CARD32 *value = value_list;
-    int    count  = 0;
-
-    for (i = 0; i < 32; i++) {
-        if (mask & (1 << i)) {
-            dmxSetInputAttribute(i, attr, *value);
-            ++value;
-            ++count;
-        }
-    }
-    return count;
-}
-
-static int ProcDMXQueryVersion(ClientPtr client)
-{
-    xDMXQueryVersionReply rep;
-    int                   n;
-
-    REQUEST_SIZE_MATCH(xDMXQueryVersionReq);
-
-    rep.type           = X_Reply;
-    rep.sequenceNumber = client->sequence;
-    rep.length         = 0;
-    rep.majorVersion   = DMX_EXTENSION_MAJOR;
-    rep.minorVersion   = DMX_EXTENSION_MINOR;
-    rep.patchVersion   = DMX_EXTENSION_PATCH;
-    if (client->swapped) {
-    	swaps(&rep.sequenceNumber, n);
-        swapl(&rep.length, n);
-	swapl(&rep.majorVersion, n);
-	swapl(&rep.minorVersion, n);
-	swapl(&rep.patchVersion, n);
-    }
-    WriteToClient(client, sizeof(xDMXQueryVersionReply), (char *)&rep);
-    return client->noClientException;
-}
-
-static int ProcDMXSync(ClientPtr client)
-{
-    xDMXSyncReply rep;
-    int           n;
-
-    REQUEST_SIZE_MATCH(xDMXSyncReq);
-
-    dmxFlushPendingSyncs();
-
-    rep.type           = X_Reply;
-    rep.sequenceNumber = client->sequence;
-    rep.length         = 0;
-    rep.status         = 0;
-    if (client->swapped) {
-        swaps(&rep.sequenceNumber, n);
-        swapl(&rep.length, n);
-        swapl(&rep.status, n);
-    }
-    WriteToClient(client, sizeof(xDMXSyncReply), (char *)&rep);
-    return client->noClientException;
-}
-
-static int ProcDMXForceWindowCreation(ClientPtr client)
-{
-    xDMXForceWindowCreationReply rep;
-    REQUEST(xDMXForceWindowCreationReq);
-    WindowPtr     pWin;
-    int           n;
-
-    REQUEST_SIZE_MATCH(xDMXForceWindowCreationReq);
-
-#ifdef PANORAMIX
-    if (!noPanoramiXExtension) {
-        PanoramiXRes *win;
-        int          i;
-
-        if (!(win = SecurityLookupIDByType(client, stuff->window, XRT_WINDOW,
-                                           SecurityReadAccess)))
-            return -1;           /* BadWindow */
-
-        FOR_NSCREENS(i) {
-            if (!(pWin = SecurityLookupWindow(win->info[i].id, client,
-                                              SecurityReadAccess)))
-                return -1;       /* BadWindow */
-
-            dmxForceWindowCreation(pWin);
-        }
-        goto doreply;
-    }
-#endif
-
-    if (!(pWin = SecurityLookupWindow(stuff->window, client,
-                                      SecurityReadAccess)))
-        return -1;               /* BadWindow */
-
-    dmxForceWindowCreation(pWin);
-  doreply:
-    dmxFlushPendingSyncs();
-    rep.type           = X_Reply;
-    rep.sequenceNumber = client->sequence;
-    rep.length         = 0;
-    rep.status         = 0;
-    if (client->swapped) {
-        swaps(&rep.sequenceNumber, n);
-        swapl(&rep.length, n);
-        swapl(&rep.status, n);
-    }
-    WriteToClient(client, sizeof(xDMXForceWindowCreationReply), (char *)&rep);
-    return Success;
-}
-
-static int ProcDMXGetScreenCount(ClientPtr client)
-{
-    xDMXGetScreenCountReply rep;
-    int                     n;
-
-    REQUEST_SIZE_MATCH(xDMXGetScreenCountReq);
-
-    rep.type           = X_Reply;
-    rep.sequenceNumber = client->sequence;
-    rep.length         = 0;
-    rep.screenCount    = dmxGetNumScreens();
-    if (client->swapped) {
-    	swaps(&rep.sequenceNumber, n);
-        swapl(&rep.length, n);
-        swapl(&rep.screenCount, n);
-    }
-    WriteToClient(client, sizeof(xDMXGetScreenCountReply), (char *)&rep);
-    return client->noClientException;
-}
-
-static int ProcDMXGetScreenAttributes(ClientPtr client)
-{
-    REQUEST(xDMXGetScreenAttributesReq);
-    xDMXGetScreenAttributesReply rep;
-    int                          n;
-    int                          length;
-    int                          paddedLength;
-    DMXScreenAttributesRec       attr;
-
-    REQUEST_SIZE_MATCH(xDMXGetScreenAttributesReq);
-
-    if (stuff->physicalScreen < 0
-        || stuff->physicalScreen >= dmxGetNumScreens()) return BadValue;
-
-    if (!dmxGetScreenAttributes(stuff->physicalScreen, &attr))
-        return BadValue;
-
-    rep.logicalScreen       = attr.logicalScreen;
-    rep.screenWindowWidth   = attr.screenWindowWidth;
-    rep.screenWindowHeight  = attr.screenWindowHeight;
-    rep.screenWindowXoffset = attr.screenWindowXoffset;
-    rep.screenWindowYoffset = attr.screenWindowYoffset;
-    rep.rootWindowWidth     = attr.rootWindowWidth;
-    rep.rootWindowHeight    = attr.rootWindowHeight;
-    rep.rootWindowXoffset   = attr.rootWindowXoffset;
-    rep.rootWindowYoffset   = attr.rootWindowYoffset;
-    rep.rootWindowXorigin   = attr.rootWindowXorigin;
-    rep.rootWindowYorigin   = attr.rootWindowYorigin;
-                                 
-    length                  = attr.displayName ? strlen(attr.displayName) : 0;
-    paddedLength            = (length + 3) & ~3;
-    rep.type                = X_Reply;
-    rep.sequenceNumber      = client->sequence;
-    rep.length              = paddedLength >> 2;
-    rep.displayNameLength   = length;
-
-    if (client->swapped) {
-    	swaps(&rep.sequenceNumber, n);
-        swapl(&rep.length, n);
-        swapl(&rep.displayNameLength, n);
-        swapl(&rep.logicalScreen, n);
-        swaps(&rep.screenWindowWidth, n);
-        swaps(&rep.screenWindowHeight, n);
-        swaps(&rep.screenWindowXoffset, n);
-        swaps(&rep.screenWindowYoffset, n);
-        swaps(&rep.rootWindowWidth, n);
-        swaps(&rep.rootWindowHeight, n);
-        swaps(&rep.rootWindowXoffset, n);
-        swaps(&rep.rootWindowYoffset, n);
-        swaps(&rep.rootWindowXorigin, n);
-        swaps(&rep.rootWindowYorigin, n);
-    }
-    WriteToClient(client, sizeof(xDMXGetScreenAttributesReply), (char *)&rep);
-    if (length) WriteToClient(client, length, (char *)attr.displayName);
-    return client->noClientException;
-}
-
-static int ProcDMXChangeScreensAttributes(ClientPtr client)
-{
-    REQUEST(xDMXChangeScreensAttributesReq);
-    xDMXChangeScreensAttributesReply rep;
-    int                              n;
-    int                              status = DMX_BAD_XINERAMA;
-    unsigned int                     mask   = 0;
-    unsigned int                     i;
-    CARD32                           *screen_list;
-    CARD32                           *mask_list;
-    CARD32                           *value_list;
-    DMXScreenAttributesPtr           attribs;
-    int                              errorScreen = 0;
-    unsigned int                     len;
-    int                              ones = 0;
-    
-
-    REQUEST_AT_LEAST_SIZE(xDMXChangeScreensAttributesReq);
-    len = client->req_len - (sizeof(xDMXChangeScreensAttributesReq) >> 2);
-    if (len < stuff->screenCount + stuff->maskCount)
-        return BadLength;
-
-    screen_list = (CARD32 *)(stuff + 1);
-    mask_list   = &screen_list[stuff->screenCount];
-    value_list  = &mask_list[stuff->maskCount];
-
-    for (i = 0; i < stuff->maskCount; i++) ones += Ones(mask_list[i]);
-    if (len != stuff->screenCount + stuff->maskCount + ones)
-        return BadLength;
-    
-    if (!_DMXXineramaActive()) goto noxinerama;
-
-    if (!(attribs = ALLOCATE_LOCAL(stuff->screenCount * sizeof(*attribs))))
-        return BadAlloc;
-
-    for (i = 0; i < stuff->screenCount; i++) {
-        int count;
-        
-        if (i < stuff->maskCount) mask = mask_list[i];
-        dmxGetScreenAttributes(screen_list[i], &attribs[i]);
-        count = dmxFetchScreenAttributes(mask, &attribs[i], value_list);
-        value_list += count;
-    }
-
-#if PANORAMIX
-    status = dmxConfigureScreenWindows(stuff->screenCount,
-				       screen_list,
-				       attribs,
-				       &errorScreen);
-#endif
-
-    DEALLOCATE_LOCAL(attribs);
-
-    if (status == BadValue) return status;
-
-  noxinerama:
-    rep.type           = X_Reply;
-    rep.sequenceNumber = client->sequence;
-    rep.length         = 0;
-    rep.status         = status;
-    rep.errorScreen    = errorScreen;
-    if (client->swapped) {
-        swaps(&rep.sequenceNumber, n);
-        swapl(&rep.length, n);
-        swapl(&rep.status, n);
-        swapl(&rep.errorScreen, n);
-    }
-    WriteToClient(client,
-                  sizeof(xDMXChangeScreensAttributesReply),
-                  (char *)&rep);
-    return client->noClientException;
-}
-
-static int ProcDMXAddScreen(ClientPtr client)
-{
-    REQUEST(xDMXAddScreenReq);
-    xDMXAddScreenReply     rep;
-    int                    n;
-    int                    status = 0;
-    CARD32                 *value_list;
-    DMXScreenAttributesRec attr;
-    int                    count;
-    char                   *name;
-    int                    len;
-    int                    paddedLength;
-
-    REQUEST_AT_LEAST_SIZE(xDMXAddScreenReq);
-    paddedLength = (stuff->displayNameLength + 3) & ~3;
-    len          = client->req_len - (sizeof(xDMXAddScreenReq) >> 2);
-    if (len != Ones(stuff->valueMask) + paddedLength/4)
-        return BadLength;
-
-    memset(&attr, 0, sizeof(attr));
-    dmxGetScreenAttributes(stuff->physicalScreen, &attr);
-    value_list = (CARD32 *)(stuff + 1);
-    count      = dmxFetchScreenAttributes(stuff->valueMask, &attr, value_list);
-    
-    if (!(name = ALLOCATE_LOCAL(stuff->displayNameLength + 1 + 4)))
-        return BadAlloc;
-    memcpy(name, &value_list[count], stuff->displayNameLength);
-    name[stuff->displayNameLength] = '\0';
-    attr.displayName = name;
-
-    status = dmxAttachScreen(stuff->physicalScreen, &attr);
-
-    DEALLOCATE_LOCAL(name);
-
-    rep.type           = X_Reply;
-    rep.sequenceNumber = client->sequence;
-    rep.length         = 0;
-    rep.status         = status;
-    rep.physicalScreen = stuff->physicalScreen;
-    if (client->swapped) {
-        swaps(&rep.sequenceNumber, n);
-        swapl(&rep.length, n);
-        swapl(&rep.status, n);
-        swapl(&rep.physicalScreen, n);
-    }
-    WriteToClient(client,
-                  sizeof(xDMXAddScreenReply),
-                  (char *)&rep);
-    return client->noClientException;
-}
-
-static int ProcDMXRemoveScreen(ClientPtr client)
-{
-    REQUEST(xDMXRemoveScreenReq);
-    xDMXRemoveScreenReply rep;
-    int                   n;
-    int                   status = 0;
-
-    REQUEST_SIZE_MATCH(xDMXRemoveScreenReq);
-
-    status = dmxDetachScreen(stuff->physicalScreen);
-
-    rep.type           = X_Reply;
-    rep.sequenceNumber = client->sequence;
-    rep.length         = 0;
-    rep.status         = status;
-    if (client->swapped) {
-        swaps(&rep.sequenceNumber, n);
-        swapl(&rep.length, n);
-        swapl(&rep.status, n);
-    }
-    WriteToClient(client,
-                  sizeof(xDMXRemoveScreenReply),
-                  (char *)&rep);
-    return client->noClientException;
-}
-
-
-#ifdef PANORAMIX
-static int dmxPopulatePanoramiX(ClientPtr client, Window window,
-                                CARD32 *screens, CARD32 *windows,
-                                xRectangle *pos, xRectangle *vis)
-{
-    WindowPtr              pWin;
-    PanoramiXRes           *win;
-    int                    i;
-    int                    count = 0;
-    DMXWindowAttributesRec attr;
-    
-    if (!(win = SecurityLookupIDByType(client, window, XRT_WINDOW,
-                                       SecurityReadAccess)))
-        return -1;               /* BadWindow */
-    
-    FOR_NSCREENS(i) {
-        if (!(pWin = SecurityLookupWindow(win->info[i].id, client,
-                                          SecurityReadAccess)))
-            return -1;          /* BadWindow */
-        if (dmxGetWindowAttributes(pWin, &attr)) {
-            screens[count] = attr.screen;
-            windows[count] = attr.window;
-            pos[count]     = attr.pos;
-            vis[count]     = attr.vis;
-            ++count;            /* Only count existing windows */
-        }
-    }
-    return count;
-}
-#endif
-
-static int dmxPopulate(ClientPtr client, Window window, CARD32 *screens,
-                       CARD32 *windows, xRectangle *pos, xRectangle *vis)
-{
-    WindowPtr              pWin;
-    DMXWindowAttributesRec attr;
-
-#ifdef PANORAMIX
-    if (!noPanoramiXExtension)
-        return dmxPopulatePanoramiX(client, window, screens, windows,
-                                    pos, vis);
-#endif
-    
-    if (!(pWin = SecurityLookupWindow(window, client, SecurityReadAccess)))
-        return -1;               /* BadWindow */
-
-    dmxGetWindowAttributes(pWin, &attr);
-    *screens = attr.screen;
-    *windows = attr.window;
-    *pos     = attr.pos;
-    *vis     = attr.vis;
-    return 1;
-}
-
-static int dmxMaxNumScreens(void)
-{
-#ifdef PANORAMIX
-    if (!noPanoramiXExtension) return PanoramiXNumScreens;
-#endif
-    return 1;
-}
-
-static int ProcDMXGetWindowAttributes(ClientPtr client)
-{
-    REQUEST(xDMXGetWindowAttributesReq);
-    xDMXGetWindowAttributesReply rep;
-    int                          i, n;
-    CARD32                       *screens;
-    CARD32                       *windows;
-    xRectangle                   *pos, *vis;
-    int                          count = dmxMaxNumScreens();
-
-    REQUEST_SIZE_MATCH(xDMXGetWindowAttributesReq);
-
-    if (!(screens = ALLOCATE_LOCAL(count * sizeof(*screens))))
-        return BadAlloc;
-    if (!(windows = ALLOCATE_LOCAL(count * sizeof(*windows)))) {
-        DEALLOCATE_LOCAL(screens);
-        return BadAlloc;
-    }
-    if (!(pos = ALLOCATE_LOCAL(count * sizeof(*pos)))) {
-        DEALLOCATE_LOCAL(windows);
-        DEALLOCATE_LOCAL(screens);
-        return BadAlloc;
-    }
-    if (!(vis = ALLOCATE_LOCAL(count * sizeof(*vis)))) {
-        DEALLOCATE_LOCAL(pos);
-        DEALLOCATE_LOCAL(windows);
-        DEALLOCATE_LOCAL(screens);
-        return BadAlloc;
-    }
-
-    if ((count = dmxPopulate(client, stuff->window, screens, windows,
-                             pos, vis)) < 0) {
-        DEALLOCATE_LOCAL(vis);
-        DEALLOCATE_LOCAL(pos);
-        DEALLOCATE_LOCAL(windows);
-        DEALLOCATE_LOCAL(screens);
-        return BadWindow;
-    }
-
-    rep.type           = X_Reply;
-    rep.sequenceNumber = client->sequence;
-    rep.length         = count * 6;
-    rep.screenCount    = count;
-    if (client->swapped) {
-    	swaps(&rep.sequenceNumber, n);
-        swapl(&rep.length, n);
-        swapl(&rep.screenCount, n);
-        for (i = 0; i < count; i++) {
-            swapl(&screens[i], n);
-            swapl(&windows[i], n);
-            
-            swaps(&pos[i].x, n);
-            swaps(&pos[i].y, n);
-            swaps(&pos[i].width, n);
-            swaps(&pos[i].height, n);
-            
-            swaps(&vis[i].x, n);
-            swaps(&vis[i].y, n);
-            swaps(&vis[i].width, n);
-            swaps(&vis[i].height, n);
-        }
-    }
-
-    dmxFlushPendingSyncs();
-
-    WriteToClient(client, sizeof(xDMXGetWindowAttributesReply), (char *)&rep);
-    if (count) {
-        WriteToClient(client, count * sizeof(*screens), (char *)screens);
-        WriteToClient(client, count * sizeof(*windows), (char *)windows);
-        WriteToClient(client, count * sizeof(*pos),     (char *)pos);
-        WriteToClient(client, count * sizeof(*vis),     (char *)vis);
-    }
-
-    DEALLOCATE_LOCAL(vis);
-    DEALLOCATE_LOCAL(pos);
-    DEALLOCATE_LOCAL(windows);
-    DEALLOCATE_LOCAL(screens);
-
-    return client->noClientException;
-}
-
-static int ProcDMXGetDesktopAttributes(ClientPtr client)
-{
-    xDMXGetDesktopAttributesReply rep;
-    int                           n;
-    DMXDesktopAttributesRec       attr;
-
-    REQUEST_SIZE_MATCH(xDMXGetDesktopAttributesReq);
-
-    dmxGetDesktopAttributes(&attr);
-
-    rep.width               = attr.width;
-    rep.height              = attr.height;
-    rep.shiftX              = attr.shiftX;
-    rep.shiftY              = attr.shiftY;
-
-    rep.type                = X_Reply;
-    rep.sequenceNumber      = client->sequence;
-    rep.length              = 0;
-
-    if (client->swapped) {
-    	swaps(&rep.sequenceNumber, n);
-        swapl(&rep.length, n);
-        swapl(&rep.width, n);
-        swapl(&rep.height, n);
-        swapl(&rep.shiftX, n);
-        swapl(&rep.shiftY, n);
-    }
-    WriteToClient(client, sizeof(xDMXGetDesktopAttributesReply), (char *)&rep);
-    return client->noClientException;
-}
-
-static int ProcDMXChangeDesktopAttributes(ClientPtr client)
-{
-    REQUEST(xDMXChangeDesktopAttributesReq);
-    xDMXChangeDesktopAttributesReply rep;
-    int                              n;
-    int                              status = DMX_BAD_XINERAMA;
-    CARD32                           *value_list;
-    DMXDesktopAttributesRec          attr;
-    int                              len;
-
-    REQUEST_AT_LEAST_SIZE(xDMXChangeDesktopAttributesReq);
-    len = client->req_len - (sizeof(xDMXChangeDesktopAttributesReq) >> 2);
-    if (len != Ones(stuff->valueMask))
-        return BadLength;
-
-    if (!_DMXXineramaActive()) goto noxinerama;
-
-    value_list = (CARD32 *)(stuff + 1);
-    
-    dmxGetDesktopAttributes(&attr);
-    dmxFetchDesktopAttributes(stuff->valueMask, &attr, value_list);
-
-#if PANORAMIX
-    status = dmxConfigureDesktop(&attr);
-#endif
-    if (status == BadValue) return status;
-
-  noxinerama:
-    rep.type           = X_Reply;
-    rep.sequenceNumber = client->sequence;
-    rep.length         = 0;
-    rep.status         = status;
-    if (client->swapped) {
-        swaps(&rep.sequenceNumber, n);
-        swapl(&rep.length, n);
-        swapl(&rep.status, n);
-    }
-    WriteToClient(client,
-                  sizeof(xDMXChangeDesktopAttributesReply),
-                  (char *)&rep);
-    return client->noClientException;
-}
-
-static int ProcDMXGetInputCount(ClientPtr client)
-{
-    xDMXGetInputCountReply rep;
-    int                     n;
-
-    REQUEST_SIZE_MATCH(xDMXGetInputCountReq);
-
-    rep.type           = X_Reply;
-    rep.sequenceNumber = client->sequence;
-    rep.length         = 0;
-    rep.inputCount     = dmxGetInputCount();
-    if (client->swapped) {
-    	swaps(&rep.sequenceNumber, n);
-        swapl(&rep.length, n);
-        swapl(&rep.inputCount, n);
-    }
-    WriteToClient(client, sizeof(xDMXGetInputCountReply), (char *)&rep);
-    return client->noClientException;
-}
-
-static int ProcDMXGetInputAttributes(ClientPtr client)
-{
-    REQUEST(xDMXGetInputAttributesReq);
-    xDMXGetInputAttributesReply rep;
-    int                          n;
-    int                          length;
-    int                          paddedLength;
-    DMXInputAttributesRec        attr;
-
-    REQUEST_SIZE_MATCH(xDMXGetInputAttributesReq);
-
-    if (dmxGetInputAttributes(stuff->deviceId, &attr)) return BadValue;
-    rep.inputType      = attr.inputType;
-    rep.physicalScreen = attr.physicalScreen;
-    rep.physicalId     = attr.physicalId;
-    rep.isCore         = attr.isCore;
-    rep.sendsCore      = attr.sendsCore;
-    rep.detached       = attr.detached;
-    
-    length             = attr.name ? strlen(attr.name) : 0;
-    paddedLength       = (length + 3) & ~3;
-    rep.type           = X_Reply;
-    rep.sequenceNumber = client->sequence;
-    rep.length         = paddedLength >> 2;
-    rep.nameLength     = length;
-    if (client->swapped) {
-    	swaps(&rep.sequenceNumber, n);
-        swapl(&rep.length, n);
-        swapl(&rep.inputType, n);
-        swapl(&rep.physicalScreen, n);
-        swapl(&rep.physicalId, n);
-        swapl(&rep.nameLength, n);
-    }
-    WriteToClient(client, sizeof(xDMXGetInputAttributesReply), (char *)&rep);
-    if (length) WriteToClient(client, length, (char *)attr.name);
-    return client->noClientException;
-}
-
-static int ProcDMXAddInput(ClientPtr client)
-{
-    REQUEST(xDMXAddInputReq);
-    xDMXAddInputReply      rep;
-    int                    n;
-    int                    status = 0;
-    CARD32                 *value_list;
-    DMXInputAttributesRec  attr;
-    int                    count;
-    char                   *name;
-    int                    len;
-    int                    paddedLength;
-    int                    id     = -1;
-
-    REQUEST_AT_LEAST_SIZE(xDMXAddInputReq);
-    paddedLength = (stuff->displayNameLength + 3) & ~3;
-    len          = client->req_len - (sizeof(xDMXAddInputReq) >> 2);
-    if (len != Ones(stuff->valueMask) + paddedLength/4)
-        return BadLength;
-
-    memset(&attr, 0, sizeof(attr));
-    value_list = (CARD32 *)(stuff + 1);
-    count      = dmxFetchInputAttributes(stuff->valueMask, &attr, value_list);
-    
-    if (!(name = ALLOCATE_LOCAL(stuff->displayNameLength + 1 + 4)))
-        return BadAlloc;
-    memcpy(name, &value_list[count], stuff->displayNameLength);
-    name[stuff->displayNameLength] = '\0';
-    attr.name = name;
-
-    status = dmxAddInput(&attr, &id);
-
-    DEALLOCATE_LOCAL(name);
-
-    if (status) return status;
-
-    rep.type           = X_Reply;
-    rep.sequenceNumber = client->sequence;
-    rep.length         = 0;
-    rep.status         = status;
-    rep.physicalId     = id;
-    if (client->swapped) {
-        swaps(&rep.sequenceNumber, n);
-        swapl(&rep.length, n);
-        swapl(&rep.status, n);
-        swapl(&rep.physicalId, n);
-    }
-    WriteToClient(client, sizeof(xDMXAddInputReply), (char *)&rep);
-    return client->noClientException;
-}
-
-static int ProcDMXRemoveInput(ClientPtr client)
-{
-    REQUEST(xDMXRemoveInputReq);
-    xDMXRemoveInputReply     rep;
-    int                      n;
-    int                      status = 0;
-
-    REQUEST_SIZE_MATCH(xDMXRemoveInputReq);
-
-    status = dmxRemoveInput(stuff->physicalId);
-
-    if (status) return status;
-
-    rep.type           = X_Reply;
-    rep.sequenceNumber = client->sequence;
-    rep.length         = 0;
-    rep.status         = status;
-    if (client->swapped) {
-        swaps(&rep.sequenceNumber, n);
-        swapl(&rep.length, n);
-        swapl(&rep.status, n);
-    }
-    WriteToClient(client, sizeof(xDMXRemoveInputReply), (char *)&rep);
-    return client->noClientException;
-}
-
-static int ProcDMXDispatch(ClientPtr client)
-{
-    REQUEST(xReq);
-
-    switch (stuff->data) {
-    case X_DMXQueryVersion:         return ProcDMXQueryVersion(client);
-    case X_DMXSync:                 return ProcDMXSync(client);
-    case X_DMXForceWindowCreation:  return ProcDMXForceWindowCreation(client);
-    case X_DMXGetScreenCount:       return ProcDMXGetScreenCount(client);
-    case X_DMXGetScreenAttributes:  return ProcDMXGetScreenAttributes(client);
-    case X_DMXChangeScreensAttributes:
-        return ProcDMXChangeScreensAttributes(client);
-    case X_DMXAddScreen:            return ProcDMXAddScreen(client);
-    case X_DMXRemoveScreen:         return ProcDMXRemoveScreen(client);
-    case X_DMXGetWindowAttributes:  return ProcDMXGetWindowAttributes(client);
-    case X_DMXGetDesktopAttributes: return ProcDMXGetDesktopAttributes(client);
-    case X_DMXChangeDesktopAttributes:
-        return ProcDMXChangeDesktopAttributes(client);
-    case X_DMXGetInputCount:        return ProcDMXGetInputCount(client);
-    case X_DMXGetInputAttributes:   return ProcDMXGetInputAttributes(client);
-    case X_DMXAddInput:             return ProcDMXAddInput(client);
-    case X_DMXRemoveInput:          return ProcDMXRemoveInput(client);
-        
-    case X_DMXGetScreenInformationDEPRECATED:
-    case X_DMXForceWindowCreationDEPRECATED:
-    case X_DMXReconfigureScreenDEPRECATED:
-        return BadImplementation;
-
-    default:                        return BadRequest;
-    }
-}
-
-static int SProcDMXQueryVersion(ClientPtr client)
-{
-    int n;
-    REQUEST(xDMXQueryVersionReq);
-
-    swaps(&stuff->length, n);
-    REQUEST_SIZE_MATCH(xDMXQueryVersionReq);
-    return ProcDMXQueryVersion(client);
-}
-
-static int SProcDMXSync(ClientPtr client)
-{
-    int n;
-    REQUEST(xDMXSyncReq);
-
-    swaps(&stuff->length, n);
-    REQUEST_SIZE_MATCH(xDMXSyncReq);
-    return ProcDMXSync(client);
-}
-
-static int SProcDMXForceWindowCreation(ClientPtr client)
-{
-    int n;
-    REQUEST(xDMXForceWindowCreationReq);
-
-    swaps(&stuff->length, n);
-    REQUEST_SIZE_MATCH(xDMXForceWindowCreationReq);
-    swaps(&stuff->window, n);
-    return ProcDMXForceWindowCreation(client);
-}
-
-static int SProcDMXGetScreenCount(ClientPtr client)
-{
-    int n;
-    REQUEST(xDMXGetScreenCountReq);
-
-    swaps(&stuff->length, n);
-    REQUEST_SIZE_MATCH(xDMXGetScreenCountReq);
-    return ProcDMXGetScreenCount(client);
-}
-
-static int SProcDMXGetScreenAttributes(ClientPtr client)
-{
-    int n;
-    REQUEST(xDMXGetScreenAttributesReq);
-
-    swaps(&stuff->length, n);
-    REQUEST_SIZE_MATCH(xDMXGetScreenAttributesReq);
-    swapl(&stuff->physicalScreen, n);
-    return ProcDMXGetScreenAttributes(client);
-}
-
-static int SProcDMXChangeScreensAttributes(ClientPtr client)
-{
-    int n;
-    REQUEST(xDMXChangeScreensAttributesReq);
-
-    swaps(&stuff->length, n);
-    REQUEST_AT_LEAST_SIZE(xDMXGetScreenAttributesReq);
-    swapl(&stuff->screenCount, n);
-    swapl(&stuff->maskCount, n);
-    SwapRestL(stuff);
-    return ProcDMXGetScreenAttributes(client);
-}
-
-static int SProcDMXAddScreen(ClientPtr client)
-{
-    int n;
-    int paddedLength;
-    REQUEST(xDMXAddScreenReq);
-
-    swaps(&stuff->length, n);
-    REQUEST_AT_LEAST_SIZE(xDMXAddScreenReq);
-    swapl(&stuff->displayNameLength, n);
-    swapl(&stuff->valueMask, n);
-    paddedLength = (stuff->displayNameLength + 3) & ~3;
-    SwapLongs((CARD32 *)(stuff+1), LengthRestL(stuff) - paddedLength/4);
-    return ProcDMXAddScreen(client);
-}
-
-static int SProcDMXRemoveScreen(ClientPtr client)
-{
-    int n;
-    REQUEST(xDMXRemoveScreenReq);
-
-    swaps(&stuff->length, n);
-    REQUEST_SIZE_MATCH(xDMXRemoveScreenReq);
-    swapl(&stuff->physicalScreen, n);
-    return ProcDMXRemoveScreen(client);
-}
-
-static int SProcDMXGetWindowAttributes(ClientPtr client)
-{
-    int n;
-    REQUEST(xDMXGetWindowAttributesReq);
-
-    swaps(&stuff->length, n);
-    REQUEST_SIZE_MATCH(xDMXGetWindowAttributesReq);
-    swapl(&stuff->window, n);
-    return ProcDMXGetWindowAttributes(client);
-}
-
-static int SProcDMXGetDesktopAttributes(ClientPtr client)
-{
-    int n;
-    REQUEST(xDMXGetDesktopAttributesReq);
-
-    swaps(&stuff->length, n);
-    REQUEST_SIZE_MATCH(xDMXGetDesktopAttributesReq);
-    return ProcDMXGetDesktopAttributes(client);
-}
-
-static int SProcDMXChangeDesktopAttributes(ClientPtr client)
-{
-    int n;
-    REQUEST(xDMXChangeDesktopAttributesReq);
-
-    swaps(&stuff->length, n);
-    REQUEST_AT_LEAST_SIZE(xDMXChangeDesktopAttributesReq);
-    swapl(&stuff->valueMask, n);
-    SwapRestL(stuff);
-    return ProcDMXChangeDesktopAttributes(client);
-}
-
-static int SProcDMXGetInputCount(ClientPtr client)
-{
-    int n;
-    REQUEST(xDMXGetInputCountReq);
-
-    swaps(&stuff->length, n);
-    REQUEST_SIZE_MATCH(xDMXGetInputCountReq);
-    return ProcDMXGetInputCount(client);
-}
-
-static int SProcDMXGetInputAttributes(ClientPtr client)
-{
-    int n;
-    REQUEST(xDMXGetInputAttributesReq);
-
-    swaps(&stuff->length, n);
-    REQUEST_SIZE_MATCH(xDMXGetInputAttributesReq);
-    swapl(&stuff->deviceId, n);
-    return ProcDMXGetInputAttributes(client);
-}
-
-static int SProcDMXAddInput(ClientPtr client)
-{
-    int n;
-    int paddedLength;
-    REQUEST(xDMXAddInputReq);
-
-    swaps(&stuff->length, n);
-    REQUEST_AT_LEAST_SIZE(xDMXAddInputReq);
-    swapl(&stuff->displayNameLength, n);
-    swapl(&stuff->valueMask, n);
-    paddedLength = (stuff->displayNameLength + 3) & ~3;
-    SwapLongs((CARD32 *)(stuff+1), LengthRestL(stuff) - paddedLength/4);
-    return ProcDMXAddInput(client);
-}
-
-static int SProcDMXRemoveInput(ClientPtr client)
-{
-    int n;
-    REQUEST(xDMXRemoveInputReq);
-
-    swaps(&stuff->length, n);
-    REQUEST_SIZE_MATCH(xDMXRemoveInputReq);
-    swapl(&stuff->physicalId, n);
-    return ProcDMXRemoveInput(client);
-}
-
-static int SProcDMXDispatch (ClientPtr client)
-{
-    REQUEST(xReq);
-
-    switch (stuff->data) {
-    case X_DMXQueryVersion:         return SProcDMXQueryVersion(client);
-    case X_DMXSync:                 return SProcDMXSync(client);
-    case X_DMXForceWindowCreation:  return SProcDMXForceWindowCreation(client);
-    case X_DMXGetScreenCount:       return SProcDMXGetScreenCount(client);
-    case X_DMXGetScreenAttributes:  return SProcDMXGetScreenAttributes(client);
-    case X_DMXChangeScreensAttributes:
-        return SProcDMXChangeScreensAttributes(client);
-    case X_DMXAddScreen:            return SProcDMXAddScreen(client);
-    case X_DMXRemoveScreen:         return SProcDMXRemoveScreen(client);
-    case X_DMXGetWindowAttributes:  return SProcDMXGetWindowAttributes(client);
-    case X_DMXGetDesktopAttributes:
-        return SProcDMXGetDesktopAttributes(client);
-    case X_DMXChangeDesktopAttributes:
-        return SProcDMXChangeDesktopAttributes(client);
-    case X_DMXGetInputCount:        return SProcDMXGetInputCount(client);
-    case X_DMXGetInputAttributes:   return SProcDMXGetInputAttributes(client);
-    case X_DMXAddInput:             return SProcDMXAddInput(client);
-    case X_DMXRemoveInput:          return SProcDMXRemoveInput(client);
-        
-    case X_DMXGetScreenInformationDEPRECATED:
-    case X_DMXForceWindowCreationDEPRECATED:
-    case X_DMXReconfigureScreenDEPRECATED:
-        return BadImplementation;
-
-    default:                        return BadRequest;
-    }
-}
diff --git a/nx-X11/programs/Xserver/hw/Imakefile b/nx-X11/programs/Xserver/hw/Imakefile
deleted file mode 100644
index e01dca4..0000000
--- a/nx-X11/programs/Xserver/hw/Imakefile
+++ /dev/null
@@ -1,18 +0,0 @@
-XCOMM $Xorg: Imakefile,v 1.3 2000/08/17 19:48:20 cpqbld Exp $
-XCOMM This is only used on NT where we do not know how to jump over this dir
-
-#ifdef Win32Architecture
-
-#define IHaveSubdirs
-#define PassCDebugFlags CDEBUGFLAGS="$(CDEBUGFLAGS)"
-
-#if XdmxServer
-XDMXDIR = dmx
-#endif
-
-SUBDIRS= $(XDMXDIR)
-
-MakeSubdirs($(SUBDIRS))
-DependSubdirs($(SUBDIRS))
-
-#endif
diff --git a/nx-libs.spec b/nx-libs.spec
index 7c594cc..ad9a09b 100644
--- a/nx-libs.spec
+++ b/nx-libs.spec
@@ -952,7 +952,6 @@ ln -s -f ../../../../%{_lib}/libXext.so.6 %{buildroot}%{_libdir}/nx/X11/Xinerama
 %{_includedir}/nx/X11/extensions/Xevie.h
 %{_includedir}/nx/X11/extensions/Xinerama.h
 %{_includedir}/nx/X11/extensions/Xrandr.h
-%{_includedir}/nx/X11/extensions/dmxext.h
 %{_includedir}/nx/X11/extensions/lbxbuf.h
 %{_includedir}/nx/X11/extensions/lbxbufstr.h
 %{_includedir}/nx/X11/extensions/lbxdeltastr.h
@@ -1017,7 +1016,6 @@ ln -s -f ../../../../%{_lib}/libXext.so.6 %{buildroot}%{_libdir}/nx/X11/Xinerama
 %{_includedir}/nx/X11/extensions/compositeproto.h
 %{_includedir}/nx/X11/extensions/damageproto.h
 %{_includedir}/nx/X11/extensions/damagewire.h
-%{_includedir}/nx/X11/extensions/dmxproto.h
 %{_includedir}/nx/X11/extensions/panoramiXproto.h
 %{_includedir}/nx/X11/extensions/randr.h
 %{_includedir}/nx/X11/extensions/randrproto.h

--
Alioth's /srv/git/code.x2go.org/nx-libs.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/nx-libs.git


More information about the x2go-commits mailing list