diff options
Diffstat (limited to 'nx-X11')
-rw-r--r-- | nx-X11/config/cf/README | 1 | ||||
-rw-r--r-- | nx-X11/config/cf/X11.tmpl | 65 | ||||
-rw-r--r-- | nx-X11/config/cf/host.def | 7 | ||||
-rw-r--r-- | nx-X11/config/cf/xf86site.def | 6 | ||||
-rw-r--r-- | nx-X11/config/cf/xorgsite.def | 6 | ||||
-rw-r--r-- | nx-X11/include/extensions/Imakefile | 5 | ||||
-rw-r--r-- | nx-X11/include/extensions/dmxext.h | 190 | ||||
-rw-r--r-- | nx-X11/include/extensions/dmxproto.h | 446 | ||||
-rw-r--r-- | nx-X11/lib/X11/Imakefile | 2 | ||||
-rw-r--r-- | nx-X11/programs/Xserver/Imakefile | 54 | ||||
-rw-r--r-- | nx-X11/programs/Xserver/Xext/Imakefile | 5 | ||||
-rw-r--r-- | nx-X11/programs/Xserver/Xext/dmx.c | 1133 | ||||
-rw-r--r-- | nx-X11/programs/Xserver/hw/Imakefile | 18 |
13 files changed, 8 insertions, 1930 deletions
diff --git a/nx-X11/config/cf/README b/nx-X11/config/cf/README index 8317ef4f0..051d58748 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 38e627181..09dbc8f70 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 28f0e3ada..4a5f4b21a 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 4cdf0d893..ca429c9b9 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 ad9bfd8c9..ee0c5db98 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 65c78adcf..269b8bbf7 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 c554232e4..000000000 --- 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@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 b6b11f4d2..000000000 --- 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@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 ca6ce96e7..4e781f59c 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 b39b0b985..979a9468c 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 b75f8913b..6846c2892 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 75623e696..000000000 --- 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@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 e01dca4d9..000000000 --- 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 |