XTrap delenda est.
This commit is contained in:
parent
a81b5ce452
commit
cbc20d92de
|
@ -5,10 +5,6 @@ if COMPOSITE
|
||||||
COMPOSITE_DIR=composite
|
COMPOSITE_DIR=composite
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if XTRAP
|
|
||||||
XTRAP_DIR=XTrap
|
|
||||||
endif
|
|
||||||
|
|
||||||
if GLX
|
if GLX
|
||||||
GLX_DIR=glx
|
GLX_DIR=glx
|
||||||
endif
|
endif
|
||||||
|
@ -38,7 +34,6 @@ SUBDIRS = \
|
||||||
$(RECORD_DIR) \
|
$(RECORD_DIR) \
|
||||||
xfixes \
|
xfixes \
|
||||||
damageext \
|
damageext \
|
||||||
$(XTRAP_DIR) \
|
|
||||||
$(COMPOSITE_DIR) \
|
$(COMPOSITE_DIR) \
|
||||||
$(GLX_DIR) \
|
$(GLX_DIR) \
|
||||||
exa \
|
exa \
|
||||||
|
@ -80,7 +75,6 @@ DIST_SUBDIRS = \
|
||||||
record \
|
record \
|
||||||
xfixes \
|
xfixes \
|
||||||
damageext \
|
damageext \
|
||||||
XTrap \
|
|
||||||
composite \
|
composite \
|
||||||
glx \
|
glx \
|
||||||
exa \
|
exa \
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
noinst_LTLIBRARIES = libxtrap.la
|
|
||||||
|
|
||||||
AM_CFLAGS = $(DIX_CFLAGS)
|
|
||||||
|
|
||||||
libxtrap_la_SOURCES = xtrapddmi.c xtrapdi.c xtrapdiswp.c xtrapditbl.c
|
|
|
@ -1,161 +0,0 @@
|
||||||
/*****************************************************************************
|
|
||||||
Copyright 1987, 1988, 1989, 1990, 1991 by Digital Equipment Corp., Maynard, MA
|
|
||||||
|
|
||||||
Permission to use, copy, modify, and distribute this software and its
|
|
||||||
documentation for any purpose and without fee is hereby granted,
|
|
||||||
provided that the above copyright notice appear in all copies and that
|
|
||||||
both that copyright notice and this permission notice appear in
|
|
||||||
supporting documentation, and that the name of Digital not be
|
|
||||||
used in advertising or publicity pertaining to distribution of the
|
|
||||||
software without specific, written prior permission.
|
|
||||||
|
|
||||||
DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
|
|
||||||
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
|
|
||||||
DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
|
|
||||||
ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
|
|
||||||
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
|
|
||||||
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
|
|
||||||
SOFTWARE.
|
|
||||||
|
|
||||||
*****************************************************************************/
|
|
||||||
/*
|
|
||||||
* ABSTRACT:
|
|
||||||
*
|
|
||||||
* This module is the platform-specific but conditionally independent
|
|
||||||
* code for the XTrap extension (usually I/O or platform setup).
|
|
||||||
* This is shared code and is subject to change only by team approval.
|
|
||||||
*
|
|
||||||
* CONTRIBUTORS:
|
|
||||||
*
|
|
||||||
* Dick Annicchiarico
|
|
||||||
* Robert Chesler
|
|
||||||
* Gene Durso
|
|
||||||
* Marc Evans
|
|
||||||
* Alan Jamison
|
|
||||||
* Mark Henry
|
|
||||||
* Ken Miller
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifdef HAVE_DIX_CONFIG_H
|
|
||||||
#include <dix-config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <errno.h>
|
|
||||||
#include <X11/Xos.h>
|
|
||||||
#ifdef PC
|
|
||||||
# include "fcntl.h"
|
|
||||||
# include "io.h"
|
|
||||||
# define O_NDELAY 0L
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define NEED_REPLIES
|
|
||||||
#define NEED_EVENTS
|
|
||||||
#include <X11/X.h> /* From library include environment */
|
|
||||||
#include "inputstr.h" /* From server include env. (must be before Xlib.h!) */
|
|
||||||
#ifdef PC
|
|
||||||
# include "scrintst.h" /* Screen struct */
|
|
||||||
# include "extnsist.h"
|
|
||||||
#else
|
|
||||||
# include "extnsionst.h" /* Server ExtensionEntry definitions */
|
|
||||||
# include "scrnintstr.h" /* Screen struct */
|
|
||||||
#endif
|
|
||||||
#include "inputstr.h"
|
|
||||||
|
|
||||||
#include <X11/extensions/xtrapdi.h>
|
|
||||||
#include <X11/extensions/xtrapddmi.h>
|
|
||||||
#include <X11/extensions/xtrapproto.h>
|
|
||||||
|
|
||||||
extern int XETrapErrorBase;
|
|
||||||
extern xXTrapGetAvailReply XETrap_avail;
|
|
||||||
extern DevicePtr XETrapKbdDev;
|
|
||||||
extern DevicePtr XETrapPtrDev;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* DESCRIPTION:
|
|
||||||
*
|
|
||||||
* This function performs the platform specific setup for server
|
|
||||||
* extension implementations.
|
|
||||||
*/
|
|
||||||
void XETrapPlatformSetup()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#if !defined _XINPUT
|
|
||||||
/*
|
|
||||||
* DESCRIPTION:
|
|
||||||
*
|
|
||||||
* This routine processes the simulation of some input event.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
int XETrapSimulateXEvent(register xXTrapInputReq *request,
|
|
||||||
register ClientPtr client)
|
|
||||||
{
|
|
||||||
ScreenPtr pScr = NULL;
|
|
||||||
int status = Success;
|
|
||||||
xEvent xev;
|
|
||||||
register int x = request->input.x;
|
|
||||||
register int y = request->input.y;
|
|
||||||
DevicePtr keydev = (DevicePtr)PickKeyboard(client);
|
|
||||||
DevicePtr ptrdev = (DevicePtr)PickPointer(client);
|
|
||||||
|
|
||||||
if (request->input.screen < screenInfo.numScreens)
|
|
||||||
{
|
|
||||||
pScr = screenInfo.screens[request->input.screen];
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{ /* Trying to play bogus events to this WS! */
|
|
||||||
#ifdef VERBOSE
|
|
||||||
ErrorF("%s: Trying to send events to screen %d!\n", XTrapExtName,
|
|
||||||
request->input.screen);
|
|
||||||
#endif
|
|
||||||
status = XETrapErrorBase + BadScreen;
|
|
||||||
}
|
|
||||||
/* Fill in the event structure with the information
|
|
||||||
* Note: root, event, child, eventX, eventY, state, and sameScreen
|
|
||||||
* are all updated by FixUpEventFromWindow() when the events
|
|
||||||
* are delivered via DeliverDeviceEvents() or whatever. XTrap
|
|
||||||
* needs to only concern itself with type, detail, time, rootX,
|
|
||||||
* and rootY.
|
|
||||||
*/
|
|
||||||
if (status == Success)
|
|
||||||
{
|
|
||||||
xev.u.u.type = request->input.type;
|
|
||||||
xev.u.u.detail = request->input.detail;
|
|
||||||
xev.u.keyButtonPointer.time = GetTimeInMillis();
|
|
||||||
xev.u.keyButtonPointer.rootX = x;
|
|
||||||
xev.u.keyButtonPointer.rootY = y;
|
|
||||||
|
|
||||||
if (request->input.type == MotionNotify)
|
|
||||||
{ /* Set new cursor position on screen */
|
|
||||||
XETrap_avail.data.cur_x = x;
|
|
||||||
XETrap_avail.data.cur_y = y;
|
|
||||||
NewCurrentScreen (inputInfo.pointer, pScr, x, y); /* fix from amnonc@mercury.co.il */
|
|
||||||
if (!(*pScr->SetCursorPosition)(inputInfo.pointer, pScr, x, y, xFalse))
|
|
||||||
{
|
|
||||||
status = BadImplementation;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (status == Success)
|
|
||||||
{
|
|
||||||
switch(request->input.type)
|
|
||||||
{ /* Now process the event appropriately */
|
|
||||||
case KeyPress:
|
|
||||||
case KeyRelease:
|
|
||||||
(*XETrapKbdDev->realInputProc)(&xev,(DeviceIntPtr)keydev, 1L);
|
|
||||||
break;
|
|
||||||
case MotionNotify:
|
|
||||||
case ButtonPress:
|
|
||||||
case ButtonRelease:
|
|
||||||
(*XETrapPtrDev->realInputProc)(&xev,(DeviceIntPtr)ptrdev, 1L);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
status = BadValue;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return(status);
|
|
||||||
}
|
|
||||||
#endif /* _XINPUT */
|
|
2154
XTrap/xtrapdi.c
2154
XTrap/xtrapdi.c
File diff suppressed because it is too large
Load Diff
|
@ -1,937 +0,0 @@
|
||||||
/****************************************************************************
|
|
||||||
Copyright 1987, 1988, 1989, 1990, 1991, 1992 by
|
|
||||||
|
|
||||||
Digital Equipment Corp., Maynard, MA
|
|
||||||
|
|
||||||
X11R6 Changes Copyright (c) 1994 by Robert Chesler of Absol-Puter, Hudson, NH.
|
|
||||||
|
|
||||||
Permission to use, copy, modify, and distribute this software and its
|
|
||||||
documentation for any purpose and without fee is hereby granted,
|
|
||||||
provided that the above copyright notice appear in all copies and that
|
|
||||||
both that copyright notice and this permission notice appear in
|
|
||||||
supporting documentation, and that the name of Digital not be
|
|
||||||
used in advertising or publicity pertaining to distribution of the
|
|
||||||
software without specific, written prior permission.
|
|
||||||
|
|
||||||
DIGITAL AND ABSOL-PUTER DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
|
|
||||||
SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
|
||||||
FITNESS, IN NO EVENT SHALL DIGITAL OR ABSOL-PUTER BE LIABLE FOR ANY
|
|
||||||
SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
|
|
||||||
RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
|
|
||||||
CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
|
|
||||||
CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
||||||
|
|
||||||
*****************************************************************************/
|
|
||||||
/*
|
|
||||||
* ABSTRACT:
|
|
||||||
*
|
|
||||||
* This module is the device independent module responsible for all
|
|
||||||
* routines required for proper communication in a heterogeneous
|
|
||||||
* networking environment (i.e. client & server on different endian
|
|
||||||
* machines). The bulk of this module is patterned after X11/R4's
|
|
||||||
* server/dix/swapreq.c ; however, they infact swap fields
|
|
||||||
* in the exact opposite order since XTrap requires "unswapped" data
|
|
||||||
* to become "swapped" before sending it to a "swapped" client.
|
|
||||||
*
|
|
||||||
* CONTRIBUTORS:
|
|
||||||
*
|
|
||||||
* Ken Miller
|
|
||||||
* Marc Evans
|
|
||||||
*
|
|
||||||
* CHANGES:
|
|
||||||
*
|
|
||||||
* Robert Chesler - added client arg for X11R6 port in many spots
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifdef HAVE_DIX_CONFIG_H
|
|
||||||
#include <dix-config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <X11/X.h>
|
|
||||||
#define NEED_REPLIES
|
|
||||||
#define NEED_EVENTS
|
|
||||||
#include <X11/Xproto.h>
|
|
||||||
#include <X11/Xprotostr.h>
|
|
||||||
#include <X11/extensions/xtrapdi.h>
|
|
||||||
#include "input.h" /* Server DevicePtr definitions */
|
|
||||||
#include "misc.h"
|
|
||||||
#include "dixstruct.h"
|
|
||||||
#ifdef PC
|
|
||||||
# include "extnsist.h"
|
|
||||||
#else
|
|
||||||
# include "extnsionst.h" /* Server ExtensionEntry definitions */
|
|
||||||
#endif
|
|
||||||
# include "swapreq.h" /* Server SwapColorItem definition */
|
|
||||||
#include <X11/extensions/xtrapddmi.h>
|
|
||||||
#include <X11/extensions/xtrapproto.h>
|
|
||||||
|
|
||||||
/* In-coming XTrap requests needing to be swapped to native format */
|
|
||||||
|
|
||||||
int sXETrapReset(xXTrapReq *request, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(request->length),n);
|
|
||||||
return(XETrapReset(request,client));
|
|
||||||
}
|
|
||||||
|
|
||||||
int sXETrapGetAvailable(xXTrapGetReq *request, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(request->length),n);
|
|
||||||
swaps(&(request->protocol),n);
|
|
||||||
return(XETrapGetAvailable(request,client));
|
|
||||||
}
|
|
||||||
|
|
||||||
int sXETrapConfig(xXTrapConfigReq *request, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(request->length),n);
|
|
||||||
swaps(&(request->config_max_pkt_size),n);
|
|
||||||
return(XETrapConfig(request,client));
|
|
||||||
}
|
|
||||||
|
|
||||||
int sXETrapStartTrap(xXTrapReq *request, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(request->length),n);
|
|
||||||
return(XETrapStartTrap(request,client));
|
|
||||||
}
|
|
||||||
|
|
||||||
int sXETrapStopTrap(xXTrapReq *request, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(request->length),n);
|
|
||||||
return(XETrapStopTrap(request,client));
|
|
||||||
}
|
|
||||||
|
|
||||||
int sXETrapGetCurrent(xXTrapReq *request, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(request->length),n);
|
|
||||||
return(XETrapGetCurrent(request,client));
|
|
||||||
}
|
|
||||||
|
|
||||||
int sXETrapGetStatistics(xXTrapReq *request, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(request->length),n);
|
|
||||||
return(XETrapGetStatistics(request,client));
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifndef _XINPUT
|
|
||||||
int sXETrapSimulateXEvent(xXTrapInputReq *request, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(request->input.x),n);
|
|
||||||
swaps(&(request->input.y),n);
|
|
||||||
return(XETrapSimulateXEvent(request,client));
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
int sXETrapGetVersion(xXTrapGetReq *request, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(request->length),n);
|
|
||||||
swaps(&(request->protocol),n);
|
|
||||||
return(XETrapGetVersion(request,client));
|
|
||||||
}
|
|
||||||
|
|
||||||
int sXETrapGetLastInpTime(xXTrapReq *request, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(request->length),n);
|
|
||||||
return(XETrapGetLastInpTime(request,client));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* Out-going XTrap replies needing to be swapped *from* native format */
|
|
||||||
|
|
||||||
void sReplyXETrapGetAvail(ClientPtr client, int size, char *reply)
|
|
||||||
{
|
|
||||||
xXTrapGetAvailReply *rep = (xXTrapGetAvailReply *)reply;
|
|
||||||
register char n;
|
|
||||||
swaps(&(rep->hdr.sequenceNumber),n);
|
|
||||||
swapl(&(rep->hdr.length),n);
|
|
||||||
swapl(&(rep->data.pf_ident),n);
|
|
||||||
swaps(&(rep->data.xtrap_release),n);
|
|
||||||
swaps(&(rep->data.xtrap_version),n);
|
|
||||||
swaps(&(rep->data.xtrap_revision),n);
|
|
||||||
swaps(&(rep->data.max_pkt_size),n);
|
|
||||||
swapl(&(rep->data.major_opcode),n);
|
|
||||||
swapl(&(rep->data.event_base),n);
|
|
||||||
swaps(&(rep->data.cur_x),n);
|
|
||||||
swaps(&(rep->data.cur_y),n);
|
|
||||||
(void)WriteToClient(client,size,reply);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
void sReplyXETrapGetVers(ClientPtr client, int size, char *reply)
|
|
||||||
{
|
|
||||||
xXTrapGetVersReply *rep = (xXTrapGetVersReply *)reply;
|
|
||||||
register char n;
|
|
||||||
swaps(&(rep->hdr.sequenceNumber),n);
|
|
||||||
swapl(&(rep->hdr.length),n);
|
|
||||||
swaps(&(rep->data.xtrap_release),n);
|
|
||||||
swaps(&(rep->data.xtrap_version),n);
|
|
||||||
swaps(&(rep->data.xtrap_revision),n);
|
|
||||||
(void)WriteToClient(client,size,reply);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
void sReplyXETrapGetLITim(ClientPtr client, int size, char *reply)
|
|
||||||
{
|
|
||||||
xXTrapGetLITimReply *rep = (xXTrapGetLITimReply *)reply;
|
|
||||||
register char n;
|
|
||||||
swaps(&(rep->hdr.sequenceNumber),n);
|
|
||||||
swapl(&(rep->hdr.length),n);
|
|
||||||
swapl(&(rep->data_last_time),n);
|
|
||||||
(void)WriteToClient(client,size,reply);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
void sReplyXETrapGetCur(ClientPtr client, int size, char *reply)
|
|
||||||
{
|
|
||||||
xXTrapGetCurReply *rep = (xXTrapGetCurReply *)reply;
|
|
||||||
register char n;
|
|
||||||
swaps(&(rep->hdr.sequenceNumber),n);
|
|
||||||
swapl(&(rep->hdr.length),n);
|
|
||||||
swaps(&(rep->data_config_max_pkt_size),n);
|
|
||||||
(void)WriteToClient(client,size,reply);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
void sReplyXETrapGetStats(ClientPtr client, int size, char *reply)
|
|
||||||
{
|
|
||||||
xXTrapGetStatsReply *rep = (xXTrapGetStatsReply *)reply;
|
|
||||||
register char n;
|
|
||||||
register int i;
|
|
||||||
long *p;
|
|
||||||
|
|
||||||
swaps(&(rep->sequenceNumber),n);
|
|
||||||
swapl(&(rep->length),n);
|
|
||||||
for (i=0L, p = (long *)rep->data.requests; i<256L; i++, p++)
|
|
||||||
{
|
|
||||||
swapl(p,n);
|
|
||||||
}
|
|
||||||
for (i=0L, p = (long *)rep->data.events; i<XETrapCoreEvents; i++, p++)
|
|
||||||
{
|
|
||||||
swapl(p,n);
|
|
||||||
}
|
|
||||||
(void)WriteToClient(client,size,reply);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Out-going XTrap I/O header needing to be swapped *from* native format */
|
|
||||||
|
|
||||||
void sXETrapHeader(XETrapHeader *hdr)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
|
|
||||||
swapl(&(hdr->count), n);
|
|
||||||
swapl(&(hdr->timestamp), n);
|
|
||||||
swaps(&(hdr->win_x), n);
|
|
||||||
swaps(&(hdr->win_y), n);
|
|
||||||
swaps(&(hdr->client), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Out-going requests needing to be swapped *from* native format
|
|
||||||
* aka swapreq.c "equivalents"
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* The following is used for all requests that have
|
|
||||||
no fields to be swapped (except "length") */
|
|
||||||
void XETSwSimpleReq(register xReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* The following is used for all requests that have
|
|
||||||
only a single 32-bit field to be swapped, coming
|
|
||||||
right after the "length" field */
|
|
||||||
|
|
||||||
void XETSwResourceReq(register xResourceReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->id), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwCreateWindow(register xCreateWindowReq *data,ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
|
|
||||||
swapl(&(data->wid), n);
|
|
||||||
swapl(&(data->parent), n);
|
|
||||||
swaps(&(data->x), n);
|
|
||||||
swaps(&(data->y), n);
|
|
||||||
swaps(&(data->width), n);
|
|
||||||
swaps(&(data->height), n);
|
|
||||||
swaps(&(data->borderWidth), n);
|
|
||||||
swaps(&(data->class), n);
|
|
||||||
swapl(&(data->visual), n);
|
|
||||||
swapl(&(data->mask), n);
|
|
||||||
SwapRestL(data);
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwChangeWindowAttributes(register xChangeWindowAttributesReq *data,
|
|
||||||
ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
|
|
||||||
swapl(&(data->window), n);
|
|
||||||
swapl(&(data->valueMask), n);
|
|
||||||
SwapRestL(data);
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwReparentWindow(register xReparentWindowReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->window), n);
|
|
||||||
swapl(&(data->parent), n);
|
|
||||||
swaps(&(data->x), n);
|
|
||||||
swaps(&(data->y), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwConfigureWindow(xConfigureWindowReq *data, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swapl(&(data->window), n);
|
|
||||||
swaps(&(data->mask), n);
|
|
||||||
SwapRestL(data);
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void XETSwInternAtom(register xInternAtomReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swaps(&(data->nbytes), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwChangeProperty(register xChangePropertyReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->window), n);
|
|
||||||
swapl(&(data->property), n);
|
|
||||||
swapl(&(data->type), n);
|
|
||||||
switch ( data->format ) {
|
|
||||||
case 8L : break;
|
|
||||||
case 16L:
|
|
||||||
SwapShorts((short *)(data + 1), data->nUnits);
|
|
||||||
break;
|
|
||||||
case 32L:
|
|
||||||
SwapLongs((CARD32 *)(data + 1), data->nUnits);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
swapl(&(data->nUnits), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwDeleteProperty(register xDeletePropertyReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->window), n);
|
|
||||||
swapl(&(data->property), n);
|
|
||||||
|
|
||||||
}
|
|
||||||
void XETSwGetProperty(register xGetPropertyReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->window), n);
|
|
||||||
swapl(&(data->property), n);
|
|
||||||
swapl(&(data->type), n);
|
|
||||||
swapl(&(data->longOffset), n);
|
|
||||||
swapl(&(data->longLength), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwSetSelectionOwner(register xSetSelectionOwnerReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->window), n);
|
|
||||||
swapl(&(data->selection), n);
|
|
||||||
swapl(&(data->time), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwConvertSelection(register xConvertSelectionReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->requestor), n);
|
|
||||||
swapl(&(data->selection), n);
|
|
||||||
swapl(&(data->target), n);
|
|
||||||
swapl(&(data->property), n);
|
|
||||||
swapl(&(data->time), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwSendEvent(register xSendEventReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
xEvent eventT;
|
|
||||||
EventSwapPtr proc;
|
|
||||||
swapl(&(data->destination), n);
|
|
||||||
swapl(&(data->eventMask), n);
|
|
||||||
|
|
||||||
/* Swap event */
|
|
||||||
proc = EventSwapVector[data->event.u.u.type & 0177];
|
|
||||||
if (!proc || proc == NotImplemented)
|
|
||||||
(*proc)(&(data->event), &eventT);
|
|
||||||
data->event = eventT;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwGrabPointer(register xGrabPointerReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->grabWindow), n);
|
|
||||||
swaps(&(data->eventMask), n);
|
|
||||||
swapl(&(data->confineTo), n);
|
|
||||||
swapl(&(data->cursor), n);
|
|
||||||
swapl(&(data->time), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwGrabButton(register xGrabButtonReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->grabWindow), n);
|
|
||||||
swaps(&(data->eventMask), n);
|
|
||||||
swapl(&(data->confineTo), n);
|
|
||||||
swapl(&(data->cursor), n);
|
|
||||||
swaps(&(data->modifiers), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwUngrabButton(register xUngrabButtonReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->grabWindow), n);
|
|
||||||
swaps(&(data->modifiers), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwChangeActivePointerGrab(register xChangeActivePointerGrabReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->cursor), n);
|
|
||||||
swapl(&(data->time), n);
|
|
||||||
swaps(&(data->eventMask), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwGrabKeyboard(register xGrabKeyboardReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->grabWindow), n);
|
|
||||||
swapl(&(data->time), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwGrabKey(register xGrabKeyReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->grabWindow), n);
|
|
||||||
swaps(&(data->modifiers), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwUngrabKey(register xUngrabKeyReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->grabWindow), n);
|
|
||||||
swaps(&(data->modifiers), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwGetMotionEvents(register xGetMotionEventsReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->window), n);
|
|
||||||
swapl(&(data->start), n);
|
|
||||||
swapl(&(data->stop), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwTranslateCoords(register xTranslateCoordsReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->srcWid), n);
|
|
||||||
swapl(&(data->dstWid), n);
|
|
||||||
swaps(&(data->srcX), n);
|
|
||||||
swaps(&(data->srcY), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwWarpPointer(register xWarpPointerReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->srcWid), n);
|
|
||||||
swapl(&(data->dstWid), n);
|
|
||||||
swaps(&(data->srcX), n);
|
|
||||||
swaps(&(data->srcY), n);
|
|
||||||
swaps(&(data->srcWidth), n);
|
|
||||||
swaps(&(data->srcHeight), n);
|
|
||||||
swaps(&(data->dstX), n);
|
|
||||||
swaps(&(data->dstY), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwSetInputFocus(register xSetInputFocusReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->focus), n);
|
|
||||||
swapl(&(data->time), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwOpenFont(register xOpenFontReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->fid), n);
|
|
||||||
swaps(&(data->nbytes), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwListFonts(register xListFontsReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swaps(&(data->maxNames), n);
|
|
||||||
swaps(&(data->nbytes), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwListFontsWithInfo(register xListFontsWithInfoReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swaps(&(data->maxNames), n);
|
|
||||||
swaps(&(data->nbytes), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwSetFontPath(register xSetFontPathReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swaps(&(data->nFonts), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwCreatePixmap(register xCreatePixmapReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->pid), n);
|
|
||||||
swapl(&(data->drawable), n);
|
|
||||||
swaps(&(data->width), n);
|
|
||||||
swaps(&(data->height), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwCreateGC(register xCreateGCReq *data, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swapl(&(data->gc), n);
|
|
||||||
swapl(&(data->drawable), n);
|
|
||||||
swapl(&(data->mask), n);
|
|
||||||
SwapRestL(data);
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwChangeGC(register xChangeGCReq *data, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swapl(&(data->gc), n);
|
|
||||||
swapl(&(data->mask), n);
|
|
||||||
SwapRestL(data);
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwCopyGC(register xCopyGCReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->srcGC), n);
|
|
||||||
swapl(&(data->dstGC), n);
|
|
||||||
swapl(&(data->mask), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwSetDashes(register xSetDashesReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->gc), n);
|
|
||||||
swaps(&(data->dashOffset), n);
|
|
||||||
swaps(&(data->nDashes), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwSetClipRectangles(register xSetClipRectanglesReq *data, ClientPtr
|
|
||||||
client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swapl(&(data->gc), n);
|
|
||||||
swaps(&(data->xOrigin), n);
|
|
||||||
swaps(&(data->yOrigin), n);
|
|
||||||
SwapRestS(data);
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwClearToBackground(register xClearAreaReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->window), n);
|
|
||||||
swaps(&(data->x), n);
|
|
||||||
swaps(&(data->y), n);
|
|
||||||
swaps(&(data->width), n);
|
|
||||||
swaps(&(data->height), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwCopyArea(register xCopyAreaReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->srcDrawable), n);
|
|
||||||
swapl(&(data->dstDrawable), n);
|
|
||||||
swapl(&(data->gc), n);
|
|
||||||
swaps(&(data->srcX), n);
|
|
||||||
swaps(&(data->srcY), n);
|
|
||||||
swaps(&(data->dstX), n);
|
|
||||||
swaps(&(data->dstY), n);
|
|
||||||
swaps(&(data->width), n);
|
|
||||||
swaps(&(data->height), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwCopyPlane(register xCopyPlaneReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->srcDrawable), n);
|
|
||||||
swapl(&(data->dstDrawable), n);
|
|
||||||
swapl(&(data->gc), n);
|
|
||||||
swaps(&(data->srcX), n);
|
|
||||||
swaps(&(data->srcY), n);
|
|
||||||
swaps(&(data->dstX), n);
|
|
||||||
swaps(&(data->dstY), n);
|
|
||||||
swaps(&(data->width), n);
|
|
||||||
swaps(&(data->height), n);
|
|
||||||
swapl(&(data->bitPlane), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* The following routine is used for all Poly drawing requests
|
|
||||||
(except FillPoly, which uses a different request format) */
|
|
||||||
void XETSwPoly(register xPolyPointReq *data, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
|
|
||||||
swapl(&(data->drawable), n);
|
|
||||||
swapl(&(data->gc), n);
|
|
||||||
SwapRestS(data);
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
}
|
|
||||||
/* cannot use XETSwPoly for this one, because xFillPolyReq
|
|
||||||
* is longer than xPolyPointReq, and we don't want to swap
|
|
||||||
* the difference as shorts!
|
|
||||||
*/
|
|
||||||
void XETSwFillPoly(register xFillPolyReq *data, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
|
|
||||||
swapl(&(data->drawable), n);
|
|
||||||
swapl(&(data->gc), n);
|
|
||||||
SwapRestS(data);
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwPutImage(register xPutImageReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->drawable), n);
|
|
||||||
swapl(&(data->gc), n);
|
|
||||||
swaps(&(data->width), n);
|
|
||||||
swaps(&(data->height), n);
|
|
||||||
swaps(&(data->dstX), n);
|
|
||||||
swaps(&(data->dstY), n);
|
|
||||||
/* Image should already be swapped */
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwGetImage(register xGetImageReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->drawable), n);
|
|
||||||
swaps(&(data->x), n);
|
|
||||||
swaps(&(data->y), n);
|
|
||||||
swaps(&(data->width), n);
|
|
||||||
swaps(&(data->height), n);
|
|
||||||
swapl(&(data->planeMask), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ProcPolyText used for both PolyText8 and PolyText16 */
|
|
||||||
|
|
||||||
void XETSwPolyText(register xPolyTextReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->drawable), n);
|
|
||||||
swapl(&(data->gc), n);
|
|
||||||
swaps(&(data->x), n);
|
|
||||||
swaps(&(data->y), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ProcImageText used for both ImageText8 and ImageText16 */
|
|
||||||
|
|
||||||
void XETSwImageText(register xImageTextReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->drawable), n);
|
|
||||||
swapl(&(data->gc), n);
|
|
||||||
swaps(&(data->x), n);
|
|
||||||
swaps(&(data->y), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwCreateColormap(register xCreateColormapReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->mid), n);
|
|
||||||
swapl(&(data->window), n);
|
|
||||||
swapl(&(data->visual), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void XETSwCopyColormapAndFree(register xCopyColormapAndFreeReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->mid), n);
|
|
||||||
swapl(&(data->srcCmap), n);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwAllocColor (register xAllocColorReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->cmap), n);
|
|
||||||
swaps(&(data->red), n);
|
|
||||||
swaps(&(data->green), n);
|
|
||||||
swaps(&(data->blue), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwAllocNamedColor (register xAllocNamedColorReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->cmap), n);
|
|
||||||
swaps(&(data->nbytes), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwAllocColorCells (register xAllocColorCellsReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->cmap), n);
|
|
||||||
swaps(&(data->colors), n);
|
|
||||||
swaps(&(data->planes), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwAllocColorPlanes(register xAllocColorPlanesReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->cmap), n);
|
|
||||||
swaps(&(data->colors), n);
|
|
||||||
swaps(&(data->red), n);
|
|
||||||
swaps(&(data->green), n);
|
|
||||||
swaps(&(data->blue), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwFreeColors (register xFreeColorsReq *data, ClientPtr
|
|
||||||
client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swapl(&(data->cmap), n);
|
|
||||||
swapl(&(data->planeMask), n);
|
|
||||||
SwapRestL(data);
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwStoreColors (register xStoreColorsReq *data,ClientPtr
|
|
||||||
client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
unsigned long count;
|
|
||||||
xColorItem *pItem;
|
|
||||||
|
|
||||||
swapl(&(data->cmap), n);
|
|
||||||
pItem = (xColorItem *) &(data[1]);
|
|
||||||
for(count = LengthRestB(data)/sizeof(xColorItem); count != 0; count--)
|
|
||||||
SwapColorItem(pItem++);
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwStoreNamedColor (register xStoreNamedColorReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->cmap), n);
|
|
||||||
swapl(&(data->pixel), n);
|
|
||||||
swaps(&(data->nbytes), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwQueryColors(register xQueryColorsReq *data, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swapl(&(data->cmap), n);
|
|
||||||
SwapRestL(data);
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwLookupColor(register xLookupColorReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->cmap), n);
|
|
||||||
swaps(&(data->nbytes), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwCreateCursor(register xCreateCursorReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->cid), n);
|
|
||||||
swapl(&(data->source), n);
|
|
||||||
swapl(&(data->mask), n);
|
|
||||||
swaps(&(data->foreRed), n);
|
|
||||||
swaps(&(data->foreGreen), n);
|
|
||||||
swaps(&(data->foreBlue), n);
|
|
||||||
swaps(&(data->backRed), n);
|
|
||||||
swaps(&(data->backGreen), n);
|
|
||||||
swaps(&(data->backBlue), n);
|
|
||||||
swaps(&(data->x), n);
|
|
||||||
swaps(&(data->y), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwCreateGlyphCursor(register xCreateGlyphCursorReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->cid), n);
|
|
||||||
swapl(&(data->source), n);
|
|
||||||
swapl(&(data->mask), n);
|
|
||||||
swaps(&(data->sourceChar), n);
|
|
||||||
swaps(&(data->maskChar), n);
|
|
||||||
swaps(&(data->foreRed), n);
|
|
||||||
swaps(&(data->foreGreen), n);
|
|
||||||
swaps(&(data->foreBlue), n);
|
|
||||||
swaps(&(data->backRed), n);
|
|
||||||
swaps(&(data->backGreen), n);
|
|
||||||
swaps(&(data->backBlue), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void XETSwRecolorCursor(register xRecolorCursorReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->cursor), n);
|
|
||||||
swaps(&(data->foreRed), n);
|
|
||||||
swaps(&(data->foreGreen), n);
|
|
||||||
swaps(&(data->foreBlue), n);
|
|
||||||
swaps(&(data->backRed), n);
|
|
||||||
swaps(&(data->backGreen), n);
|
|
||||||
swaps(&(data->backBlue), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwQueryBestSize (register xQueryBestSizeReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swapl(&(data->drawable), n);
|
|
||||||
swaps(&(data->width), n);
|
|
||||||
swaps(&(data->height), n);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwQueryExtension (register xQueryExtensionReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swaps(&(data->nbytes), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwChangeKeyboardMapping (register xChangeKeyboardMappingReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
register long *p;
|
|
||||||
register int i, count;
|
|
||||||
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
p = (long *)&(data[1]);
|
|
||||||
count = data->keyCodes * data->keySymsPerKeyCode;
|
|
||||||
for(i = 0; i < count; i++)
|
|
||||||
{
|
|
||||||
swapl(p, n);
|
|
||||||
p++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void XETSwChangeKeyboardControl (register xChangeKeyboardControlReq *data,
|
|
||||||
ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swapl(&(data->mask), n);
|
|
||||||
SwapRestL(data);
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwChangePointerControl (register xChangePointerControlReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swaps(&(data->accelNum), n);
|
|
||||||
swaps(&(data->accelDenum), n);
|
|
||||||
swaps(&(data->threshold), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void XETSwSetScreenSaver (register xSetScreenSaverReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swaps(&(data->timeout), n);
|
|
||||||
swaps(&(data->interval), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
void XETSwChangeHosts(register xChangeHostsReq *data)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
swaps(&(data->hostLength), n);
|
|
||||||
|
|
||||||
}
|
|
||||||
void XETSwRotateProperties(register xRotatePropertiesReq *data, ClientPtr client)
|
|
||||||
{
|
|
||||||
register char n;
|
|
||||||
swapl(&(data->window), n);
|
|
||||||
swaps(&(data->nAtoms), n);
|
|
||||||
swaps(&(data->nPositions), n);
|
|
||||||
SwapRestL(data);
|
|
||||||
swaps(&(data->length), n);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*ARGSUSED*/
|
|
||||||
void XETSwNoOperation(xReq *data)
|
|
||||||
{
|
|
||||||
/* noop -- don't do anything */
|
|
||||||
}
|
|
|
@ -1,243 +0,0 @@
|
||||||
/****************************************************************************
|
|
||||||
Copyright 1987, 1988, 1989, 1990, 1991 by Digital Equipment Corp., Maynard, MA
|
|
||||||
|
|
||||||
Permission to use, copy, modify, and distribute this software and its
|
|
||||||
documentation for any purpose and without fee is hereby granted,
|
|
||||||
provided that the above copyright notice appear in all copies and that
|
|
||||||
both that copyright notice and this permission notice appear in
|
|
||||||
supporting documentation, and that the name of Digital not be
|
|
||||||
used in advertising or publicity pertaining to distribution of the
|
|
||||||
software without specific, written prior permission.
|
|
||||||
|
|
||||||
DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
|
|
||||||
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
|
|
||||||
DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
|
|
||||||
ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
|
|
||||||
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
|
|
||||||
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
|
|
||||||
SOFTWARE.
|
|
||||||
|
|
||||||
*****************************************************************************/
|
|
||||||
/*
|
|
||||||
* ABSTRACT:
|
|
||||||
*
|
|
||||||
* This module is contains Vector tables used for swapping and general
|
|
||||||
* dispatch by the XTrap server extension.
|
|
||||||
*
|
|
||||||
* CONTRIBUTORS:
|
|
||||||
*
|
|
||||||
* Ken Miller
|
|
||||||
* Marc Evans
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*-----------------*
|
|
||||||
* Include Files *
|
|
||||||
*-----------------*/
|
|
||||||
#ifdef HAVE_DIX_CONFIG_H
|
|
||||||
#include <dix-config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <stdlib.h>
|
|
||||||
|
|
||||||
#include <X11/X.h>
|
|
||||||
#define NEED_REPLIES
|
|
||||||
#define NEED_EVENTS
|
|
||||||
#include <X11/Xproto.h>
|
|
||||||
#include <X11/Xprotostr.h>
|
|
||||||
#include <X11/extensions/xtrapdi.h>
|
|
||||||
#include "input.h" /* Server DevicePtr definitions */
|
|
||||||
#include "misc.h"
|
|
||||||
#include "dixstruct.h"
|
|
||||||
#ifdef PC
|
|
||||||
# include "extnsist.h"
|
|
||||||
#else
|
|
||||||
# include "extnsionst.h" /* Server ExtensionEntry definitions */
|
|
||||||
#endif
|
|
||||||
#include <X11/extensions/xtrapddmi.h>
|
|
||||||
#include <X11/extensions/xtrapproto.h>
|
|
||||||
|
|
||||||
globaldef void_function XETSwProcVector[256L] =
|
|
||||||
{
|
|
||||||
(void_function)ProcBadRequest,
|
|
||||||
XETSwCreateWindow,
|
|
||||||
XETSwChangeWindowAttributes,
|
|
||||||
XETSwResourceReq, /* GetWindowAttributes */
|
|
||||||
XETSwResourceReq, /* DestroyWindow */
|
|
||||||
XETSwResourceReq, /* 5 DestroySubwindows */
|
|
||||||
XETSwResourceReq, /* XETSwChangeSaveSet, */
|
|
||||||
XETSwReparentWindow,
|
|
||||||
XETSwResourceReq, /* MapWindow */
|
|
||||||
XETSwResourceReq, /* MapSubwindows */
|
|
||||||
XETSwResourceReq, /* 10 UnmapWindow */
|
|
||||||
XETSwResourceReq, /* UnmapSubwindows */
|
|
||||||
XETSwConfigureWindow,
|
|
||||||
XETSwResourceReq, /* XETSwCirculateWindow, */
|
|
||||||
XETSwResourceReq, /* GetGeometry */
|
|
||||||
XETSwResourceReq, /* 15 QueryTree */
|
|
||||||
XETSwInternAtom,
|
|
||||||
XETSwResourceReq, /* XETSwGetAtomName, */
|
|
||||||
XETSwChangeProperty,
|
|
||||||
XETSwDeleteProperty,
|
|
||||||
XETSwGetProperty, /* 20 */
|
|
||||||
XETSwResourceReq, /* XETSwListProperties, */
|
|
||||||
XETSwSetSelectionOwner,
|
|
||||||
XETSwResourceReq, /* XETSwGetSelectionOwner, */
|
|
||||||
XETSwConvertSelection,
|
|
||||||
XETSwSendEvent, /* 25 */
|
|
||||||
XETSwGrabPointer,
|
|
||||||
XETSwResourceReq, /* XETSwUngrabPointer, */
|
|
||||||
XETSwGrabButton,
|
|
||||||
XETSwUngrabButton,
|
|
||||||
XETSwChangeActivePointerGrab, /* 30 */
|
|
||||||
XETSwGrabKeyboard,
|
|
||||||
XETSwResourceReq, /* XETSwUngrabKeyboard, */
|
|
||||||
XETSwGrabKey,
|
|
||||||
XETSwUngrabKey,
|
|
||||||
XETSwResourceReq, /* 35 XETSwAllowEvents, */
|
|
||||||
XETSwSimpleReq, /* XETSwGrabServer, */
|
|
||||||
XETSwSimpleReq, /* XETSwUngrabServer, */
|
|
||||||
XETSwResourceReq, /* XETSwQueryPointer, */
|
|
||||||
XETSwGetMotionEvents,
|
|
||||||
XETSwTranslateCoords, /*40 */
|
|
||||||
XETSwWarpPointer,
|
|
||||||
XETSwSetInputFocus,
|
|
||||||
XETSwSimpleReq, /* XETSwGetInputFocus, */
|
|
||||||
XETSwSimpleReq, /* QueryKeymap, */
|
|
||||||
XETSwOpenFont, /* 45 */
|
|
||||||
XETSwResourceReq, /* XETSwCloseFont, */
|
|
||||||
XETSwResourceReq, /* XETSwQueryFont, */
|
|
||||||
XETSwResourceReq, /* XETSwQueryTextExtents, */
|
|
||||||
XETSwListFonts,
|
|
||||||
XETSwListFontsWithInfo, /* 50 */
|
|
||||||
XETSwSetFontPath,
|
|
||||||
XETSwSimpleReq, /* GetFontPath, */
|
|
||||||
XETSwCreatePixmap,
|
|
||||||
XETSwResourceReq, /* XETSwFreePixmap, */
|
|
||||||
XETSwCreateGC, /* 55 */
|
|
||||||
XETSwChangeGC,
|
|
||||||
XETSwCopyGC,
|
|
||||||
XETSwSetDashes,
|
|
||||||
XETSwSetClipRectangles,
|
|
||||||
XETSwResourceReq, /* 60 XETSwFreeGC, */
|
|
||||||
XETSwClearToBackground,
|
|
||||||
XETSwCopyArea,
|
|
||||||
XETSwCopyPlane,
|
|
||||||
XETSwPoly, /* PolyPoint, */
|
|
||||||
XETSwPoly, /* 65 PolyLine */
|
|
||||||
XETSwPoly, /* PolySegment, */
|
|
||||||
XETSwPoly, /* PolyRectangle, */
|
|
||||||
XETSwPoly, /* PolyArc, */
|
|
||||||
XETSwFillPoly,
|
|
||||||
XETSwPoly, /* 70 PolyFillRectangle */
|
|
||||||
XETSwPoly, /* PolyFillArc, */
|
|
||||||
XETSwPutImage,
|
|
||||||
XETSwGetImage,
|
|
||||||
XETSwPolyText,
|
|
||||||
XETSwPolyText, /* 75 */
|
|
||||||
XETSwImageText,
|
|
||||||
XETSwImageText,
|
|
||||||
XETSwCreateColormap,
|
|
||||||
XETSwResourceReq, /* XETSwFreeColormap, */
|
|
||||||
XETSwCopyColormapAndFree, /* 80 */
|
|
||||||
XETSwResourceReq, /* XETSwInstallColormap, */
|
|
||||||
XETSwResourceReq, /* XETSwUninstallColormap, */
|
|
||||||
XETSwResourceReq, /* XETSwListInstalledColormaps, */
|
|
||||||
XETSwAllocColor,
|
|
||||||
XETSwAllocNamedColor, /* 85 */
|
|
||||||
XETSwAllocColorCells,
|
|
||||||
XETSwAllocColorPlanes,
|
|
||||||
XETSwFreeColors,
|
|
||||||
XETSwStoreColors,
|
|
||||||
XETSwStoreNamedColor, /* 90 */
|
|
||||||
XETSwQueryColors,
|
|
||||||
XETSwLookupColor,
|
|
||||||
XETSwCreateCursor,
|
|
||||||
XETSwCreateGlyphCursor,
|
|
||||||
XETSwResourceReq, /* 95 XETSwFreeCursor, */
|
|
||||||
XETSwRecolorCursor,
|
|
||||||
XETSwQueryBestSize,
|
|
||||||
XETSwQueryExtension,
|
|
||||||
XETSwSimpleReq, /* ListExtensions, */
|
|
||||||
XETSwChangeKeyboardMapping, /* 100 */
|
|
||||||
XETSwSimpleReq, /* GetKeyboardMapping, */
|
|
||||||
XETSwChangeKeyboardControl,
|
|
||||||
XETSwSimpleReq, /* GetKeyboardControl, */
|
|
||||||
XETSwSimpleReq, /* Bell, */
|
|
||||||
XETSwChangePointerControl, /* 105 */
|
|
||||||
XETSwSimpleReq, /* GetPointerControl, */
|
|
||||||
XETSwSetScreenSaver,
|
|
||||||
XETSwSimpleReq, /* GetScreenSaver, */
|
|
||||||
XETSwChangeHosts,
|
|
||||||
XETSwSimpleReq, /* 110 ListHosts, */
|
|
||||||
XETSwSimpleReq, /* XETSwChangeAccessControl, */
|
|
||||||
XETSwSimpleReq, /* XETSwChangeCloseDownMode, */
|
|
||||||
XETSwResourceReq, /* XETSwKillClient, */
|
|
||||||
XETSwRotateProperties,
|
|
||||||
XETSwSimpleReq, /* 115 ForceScreenSaver */
|
|
||||||
XETSwSimpleReq, /* SetPointerMapping, */
|
|
||||||
XETSwSimpleReq, /* GetPointerMapping, */
|
|
||||||
XETSwSimpleReq, /* SetModifierMapping, */
|
|
||||||
XETSwSimpleReq, /* GetModifierMapping, */
|
|
||||||
NotImplemented, /* 120 */
|
|
||||||
NotImplemented,
|
|
||||||
NotImplemented,
|
|
||||||
NotImplemented,
|
|
||||||
NotImplemented,
|
|
||||||
NotImplemented, /* 125 */
|
|
||||||
NotImplemented,
|
|
||||||
XETSwNoOperation
|
|
||||||
};
|
|
||||||
|
|
||||||
/* NOTE: This array must align with the values of the constants used
|
|
||||||
* as minor_opcode values in the request structure. Failure to do this
|
|
||||||
* could result in random code paths.
|
|
||||||
*/
|
|
||||||
globaldef int_function XETrapDispatchVector[10L] =
|
|
||||||
{
|
|
||||||
XETrapReset, /* 0 XETrap_Reset */
|
|
||||||
XETrapGetAvailable, /* 1 XETrap_GetAvailable */
|
|
||||||
XETrapConfig, /* 2 XETrap_Config */
|
|
||||||
XETrapStartTrap, /* 3 XETrap_StartTrap */
|
|
||||||
XETrapStopTrap, /* 4 XETrap_StopTrap */
|
|
||||||
XETrapGetCurrent, /* 5 XETrap_GetCurrent */
|
|
||||||
XETrapGetStatistics, /* 6 XETrap_GetStatistics */
|
|
||||||
#ifndef _XINPUT
|
|
||||||
XETrapSimulateXEvent, /* 7 XETrap_SimulateXEvent */
|
|
||||||
#endif
|
|
||||||
XETrapGetVersion, /* 8 XETrap_GetVersion */
|
|
||||||
XETrapGetLastInpTime, /* 9 XETrap_GetLastInpTime */
|
|
||||||
};
|
|
||||||
|
|
||||||
/* NOTE: This array must align with the values of the constants used
|
|
||||||
* as minor_opcode values in the request structure. Failure to do this
|
|
||||||
* could result in random code paths.
|
|
||||||
*/
|
|
||||||
globaldef int_function XETSwDispatchVector[10L] =
|
|
||||||
{
|
|
||||||
sXETrapReset, /* 0 XETrap_Reset */
|
|
||||||
sXETrapGetAvailable, /* 1 XETrap_GetAvailable */
|
|
||||||
sXETrapConfig, /* 2 XETrap_Config */
|
|
||||||
sXETrapStartTrap, /* 3 XETrap_StartTrap */
|
|
||||||
sXETrapStopTrap, /* 4 XETrap_StopTrap */
|
|
||||||
sXETrapGetCurrent, /* 5 XETrap_GetCurrent */
|
|
||||||
sXETrapGetStatistics, /* 6 XETrap_GetStatistics */
|
|
||||||
#ifndef _XINPUT
|
|
||||||
sXETrapSimulateXEvent, /* 7 XETrap_SimulateXEvent */
|
|
||||||
#endif
|
|
||||||
sXETrapGetVersion, /* 8 XETrap_GetVersion */
|
|
||||||
sXETrapGetLastInpTime, /* 9 XETrap_GetLastInpTime */
|
|
||||||
};
|
|
||||||
|
|
||||||
/* ProcVector shadow vector */
|
|
||||||
globaldef int_function XETrapProcVector[256L] = {XETrapRequestVector};
|
|
||||||
/*
|
|
||||||
* Events are faked as if they're vectored since that's
|
|
||||||
* the way it'll eventually be (X11 R5?).
|
|
||||||
*/
|
|
||||||
#ifndef VECTORED_EVENTS
|
|
||||||
globaldef int_function EventProcVector[XETrapCoreEvents] = {NULL};
|
|
||||||
#endif
|
|
||||||
globaldef int_function XETrapEventProcVector[XETrapCoreEvents] = {NULL};
|
|
||||||
|
|
||||||
|
|
21
configure.ac
21
configure.ac
|
@ -531,7 +531,6 @@ AC_ARG_ENABLE(registry, AS_HELP_STRING([--disable-registry], [Build string
|
||||||
AC_ARG_ENABLE(composite, AS_HELP_STRING([--disable-composite], [Build Composite extension (default: enabled)]), [COMPOSITE=$enableval], [COMPOSITE=yes])
|
AC_ARG_ENABLE(composite, AS_HELP_STRING([--disable-composite], [Build Composite extension (default: enabled)]), [COMPOSITE=$enableval], [COMPOSITE=yes])
|
||||||
AC_ARG_ENABLE(mitshm, AS_HELP_STRING([--disable-shm], [Build SHM extension (default: enabled)]), [MITSHM=$enableval], [MITSHM=yes])
|
AC_ARG_ENABLE(mitshm, AS_HELP_STRING([--disable-shm], [Build SHM extension (default: enabled)]), [MITSHM=$enableval], [MITSHM=yes])
|
||||||
AC_ARG_ENABLE(xres, AS_HELP_STRING([--disable-xres], [Build XRes extension (default: enabled)]), [RES=$enableval], [RES=yes])
|
AC_ARG_ENABLE(xres, AS_HELP_STRING([--disable-xres], [Build XRes extension (default: enabled)]), [RES=$enableval], [RES=yes])
|
||||||
AC_ARG_ENABLE(xtrap, AS_HELP_STRING([--disable-xtrap], [Build XTrap extension (default: enabled)]), [XTRAP=$enableval], [XTRAP=yes])
|
|
||||||
AC_ARG_ENABLE(record, AS_HELP_STRING([--enable-record], [Build Record extension (default: disabled)]), [RECORD=$enableval], [RECORD=no])
|
AC_ARG_ENABLE(record, AS_HELP_STRING([--enable-record], [Build Record extension (default: disabled)]), [RECORD=$enableval], [RECORD=no])
|
||||||
AC_ARG_ENABLE(xv, AS_HELP_STRING([--disable-xv], [Build Xv extension (default: enabled)]), [XV=$enableval], [XV=yes])
|
AC_ARG_ENABLE(xv, AS_HELP_STRING([--disable-xv], [Build Xv extension (default: enabled)]), [XV=$enableval], [XV=yes])
|
||||||
AC_ARG_ENABLE(xvmc, AS_HELP_STRING([--disable-xvmc], [Build XvMC extension (default: enabled)]), [XVMC=$enableval], [XVMC=yes])
|
AC_ARG_ENABLE(xvmc, AS_HELP_STRING([--disable-xvmc], [Build XvMC extension (default: enabled)]), [XVMC=$enableval], [XVMC=yes])
|
||||||
|
@ -819,13 +818,6 @@ if test "x$MITSHM" = xyes; then
|
||||||
AC_DEFINE(HAS_SHM, 1, [Support SHM])
|
AC_DEFINE(HAS_SHM, 1, [Support SHM])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
AM_CONDITIONAL(XTRAP, [test "x$XTRAP" = xyes])
|
|
||||||
if test "x$XTRAP" = xyes; then
|
|
||||||
AC_DEFINE(XTRAP, 1, [Support XTrap extension])
|
|
||||||
REQUIRED_MODULES="$REQUIRED_MODULES trapproto"
|
|
||||||
XTRAP_LIB='$(top_builddir)/XTrap/libxtrap.la'
|
|
||||||
fi
|
|
||||||
|
|
||||||
AM_CONDITIONAL(RECORD, [test "x$RECORD" = xyes])
|
AM_CONDITIONAL(RECORD, [test "x$RECORD" = xyes])
|
||||||
if test "x$RECORD" = xyes; then
|
if test "x$RECORD" = xyes; then
|
||||||
AC_DEFINE(XRECORD, 1, [Support Record extension])
|
AC_DEFINE(XRECORD, 1, [Support Record extension])
|
||||||
|
@ -1209,7 +1201,7 @@ AC_MSG_RESULT([$XVFB])
|
||||||
AM_CONDITIONAL(XVFB, [test "x$XVFB" = xyes])
|
AM_CONDITIONAL(XVFB, [test "x$XVFB" = xyes])
|
||||||
|
|
||||||
if test "x$XVFB" = xyes; then
|
if test "x$XVFB" = xyes; then
|
||||||
XVFB_LIBS="$FB_LIB $FIXES_LIB $XEXT_LIB $CONFIG_LIB $DBE_LIB $XTRAP_LIB $RECORD_LIB $GLX_LIBS $RENDER_LIB $RANDR_LIB $DAMAGE_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB"
|
XVFB_LIBS="$FB_LIB $FIXES_LIB $XEXT_LIB $CONFIG_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $RENDER_LIB $RANDR_LIB $DAMAGE_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB"
|
||||||
XVFB_SYS_LIBS="$XVFBMODULES_LIBS"
|
XVFB_SYS_LIBS="$XVFBMODULES_LIBS"
|
||||||
AC_SUBST([XVFB_LIBS])
|
AC_SUBST([XVFB_LIBS])
|
||||||
AC_SUBST([XVFB_SYS_LIBS])
|
AC_SUBST([XVFB_SYS_LIBS])
|
||||||
|
@ -1227,7 +1219,7 @@ AC_MSG_RESULT([$XNEST])
|
||||||
AM_CONDITIONAL(XNEST, [test "x$XNEST" = xyes])
|
AM_CONDITIONAL(XNEST, [test "x$XNEST" = xyes])
|
||||||
|
|
||||||
if test "x$XNEST" = xyes; then
|
if test "x$XNEST" = xyes; then
|
||||||
XNEST_LIBS="$FB_LIB $FIXES_LIB $MI_LIB $XEXT_LIB $DBE_LIB $XTRAP_LIB $RECORD_LIB $GLX_LIBS $RENDER_LIB $RANDR_LIB $DAMAGE_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $DIX_LIB $OS_LIB $CONFIG_LIB"
|
XNEST_LIBS="$FB_LIB $FIXES_LIB $MI_LIB $XEXT_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $RENDER_LIB $RANDR_LIB $DAMAGE_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $DIX_LIB $OS_LIB $CONFIG_LIB"
|
||||||
XNEST_SYS_LIBS="$XNESTMODULES_LIBS"
|
XNEST_SYS_LIBS="$XNESTMODULES_LIBS"
|
||||||
AC_SUBST([XNEST_LIBS])
|
AC_SUBST([XNEST_LIBS])
|
||||||
AC_SUBST([XNEST_SYS_LIBS])
|
AC_SUBST([XNEST_SYS_LIBS])
|
||||||
|
@ -1589,7 +1581,7 @@ if test "x$XQUARTZ" = xyes; then
|
||||||
AC_DEFINE(ROOTLESS,1,[Build Rootless code])
|
AC_DEFINE(ROOTLESS,1,[Build Rootless code])
|
||||||
|
|
||||||
DARWIN_GLX_LIBS='$(top_builddir)/hw/xquartz/GL/libCGLCore.la $(top_builddir)/glx/libglx.la'
|
DARWIN_GLX_LIBS='$(top_builddir)/hw/xquartz/GL/libCGLCore.la $(top_builddir)/glx/libglx.la'
|
||||||
DARWIN_LIBS="$MI_LIB $OS_LIB $DIX_LIB $FB_LIB $FIXES_LIB $XEXT_LIB $CONFIG_LIB $DBE_LIB $XTRAP_LIB $RECORD_LIB $RENDER_LIB $RANDR_LIB $DAMAGE_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $XPSTUBS_LIB $DARWIN_GLX_LIBS"
|
DARWIN_LIBS="$MI_LIB $OS_LIB $DIX_LIB $FB_LIB $FIXES_LIB $XEXT_LIB $CONFIG_LIB $DBE_LIB $RECORD_LIB $RENDER_LIB $RANDR_LIB $DAMAGE_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $XPSTUBS_LIB $DARWIN_GLX_LIBS"
|
||||||
AC_SUBST([DARWIN_LIBS])
|
AC_SUBST([DARWIN_LIBS])
|
||||||
|
|
||||||
AC_CHECK_LIB([Xplugin],[xp_init],[:])
|
AC_CHECK_LIB([Xplugin],[xp_init],[:])
|
||||||
|
@ -1631,9 +1623,9 @@ if test "x$DMX" = xyes; then
|
||||||
AC_MSG_ERROR([Xdmx build explicitly requested, but required
|
AC_MSG_ERROR([Xdmx build explicitly requested, but required
|
||||||
modules not found.])
|
modules not found.])
|
||||||
fi
|
fi
|
||||||
DMX_INCLUDES="$XEXT_INC $RENDER_INC $XTRAP_INC $RECORD_INC"
|
DMX_INCLUDES="$XEXT_INC $RENDER_INC $RECORD_INC"
|
||||||
XDMX_CFLAGS="$DMXMODULES_CFLAGS"
|
XDMX_CFLAGS="$DMXMODULES_CFLAGS"
|
||||||
XDMX_LIBS="$XEXT_LIB $FB_LIB $CONFIG_LIB $RENDER_LIB $XTRAP_LIB $RECORD_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $MIEXT_SHADOW_LIB $MIEXT_DAMAGE_LIB"
|
XDMX_LIBS="$XEXT_LIB $FB_LIB $CONFIG_LIB $RENDER_LIB $RECORD_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $MIEXT_SHADOW_LIB $MIEXT_DAMAGE_LIB"
|
||||||
XDMX_SYS_LIBS="$DMXMODULES_LIBS"
|
XDMX_SYS_LIBS="$DMXMODULES_LIBS"
|
||||||
AC_SUBST([XDMX_CFLAGS])
|
AC_SUBST([XDMX_CFLAGS])
|
||||||
AC_SUBST([XDMX_LIBS])
|
AC_SUBST([XDMX_LIBS])
|
||||||
|
@ -1759,7 +1751,7 @@ if test "$KDRIVE" = yes; then
|
||||||
|
|
||||||
KDRIVE_CFLAGS="$XSERVER_CFLAGS -DHAVE_KDRIVE_CONFIG_H $TSLIB_CFLAGS"
|
KDRIVE_CFLAGS="$XSERVER_CFLAGS -DHAVE_KDRIVE_CONFIG_H $TSLIB_CFLAGS"
|
||||||
|
|
||||||
KDRIVE_PURE_LIBS="$FB_LIB $MI_LIB $FIXES_LIB $XEXT_LIB $DBE_LIB $XTRAP_LIB $RECORD_LIB $GLX_LIBS $RENDER_LIB $RANDR_LIB $DAMAGE_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $OS_LIB"
|
KDRIVE_PURE_LIBS="$FB_LIB $MI_LIB $FIXES_LIB $XEXT_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $RENDER_LIB $RANDR_LIB $DAMAGE_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $OS_LIB"
|
||||||
KDRIVE_LIB='$(top_builddir)/hw/kdrive/src/libkdrive.a'
|
KDRIVE_LIB='$(top_builddir)/hw/kdrive/src/libkdrive.a'
|
||||||
case $host_os in
|
case $host_os in
|
||||||
*linux*)
|
*linux*)
|
||||||
|
@ -1901,7 +1893,6 @@ dix/Makefile
|
||||||
doc/Makefile
|
doc/Makefile
|
||||||
fb/Makefile
|
fb/Makefile
|
||||||
record/Makefile
|
record/Makefile
|
||||||
XTrap/Makefile
|
|
||||||
config/Makefile
|
config/Makefile
|
||||||
mi/Makefile
|
mi/Makefile
|
||||||
miext/Makefile
|
miext/Makefile
|
||||||
|
|
|
@ -6,10 +6,6 @@ if GLX
|
||||||
GLXMODS = libglx.la
|
GLXMODS = libglx.la
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if XTRAP
|
|
||||||
XTRAPMOD = libxtrap.la
|
|
||||||
endif
|
|
||||||
|
|
||||||
if DBE
|
if DBE
|
||||||
DBEMOD = libdbe.la
|
DBEMOD = libdbe.la
|
||||||
endif
|
endif
|
||||||
|
@ -25,8 +21,7 @@ module_LTLIBRARIES = libfb.la \
|
||||||
extsmoduledir = $(moduledir)/extensions
|
extsmoduledir = $(moduledir)/extensions
|
||||||
extsmodule_LTLIBRARIES = $(RECORDMOD) \
|
extsmodule_LTLIBRARIES = $(RECORDMOD) \
|
||||||
$(DBEMOD) \
|
$(DBEMOD) \
|
||||||
$(GLXMODS) \
|
$(GLXMODS)
|
||||||
$(XTRAPMOD)
|
|
||||||
|
|
||||||
fontsmoduledir = $(moduledir)/fonts
|
fontsmoduledir = $(moduledir)/fonts
|
||||||
fontsmodule_LTLIBRARIES = libfreetype.la
|
fontsmodule_LTLIBRARIES = libfreetype.la
|
||||||
|
@ -77,7 +72,3 @@ libdixmods_la_CFLAGS = -DXFree86LOADER $(AM_CFLAGS)
|
||||||
|
|
||||||
libxorgxkb_la_SOURCES = xkbVT.c xkbPrivate.c xkbKillSrv.c
|
libxorgxkb_la_SOURCES = xkbVT.c xkbPrivate.c xkbKillSrv.c
|
||||||
libxorgxkb_la_LIBADD = $(top_builddir)/dix/libdix.la
|
libxorgxkb_la_LIBADD = $(top_builddir)/dix/libdix.la
|
||||||
|
|
||||||
libxtrap_la_LDFLAGS = -avoid-version
|
|
||||||
libxtrap_la_LIBADD = $(top_builddir)/XTrap/libxtrap.la
|
|
||||||
libxtrap_la_SOURCES = xf86XTrapModule.c
|
|
||||||
|
|
|
@ -1,45 +0,0 @@
|
||||||
/* This is the xf86 module code for the DEC_XTRAP extension. */
|
|
||||||
|
|
||||||
#ifdef HAVE_DIX_CONFIG_H
|
|
||||||
#include <dix-config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "xf86Module.h"
|
|
||||||
|
|
||||||
#include <X11/extensions/xtrapdi.h>
|
|
||||||
|
|
||||||
extern void DEC_XTRAPInit(INITARGS);
|
|
||||||
|
|
||||||
static MODULESETUPPROTO(xtrapSetup);
|
|
||||||
|
|
||||||
static ExtensionModule xtrapExt =
|
|
||||||
{
|
|
||||||
DEC_XTRAPInit,
|
|
||||||
XTrapExtName,
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
NULL
|
|
||||||
};
|
|
||||||
|
|
||||||
static XF86ModuleVersionInfo xtrapVersRec =
|
|
||||||
{
|
|
||||||
"xtrap",
|
|
||||||
MODULEVENDORSTRING,
|
|
||||||
MODINFOSTRING1,
|
|
||||||
MODINFOSTRING2,
|
|
||||||
XORG_VERSION_CURRENT,
|
|
||||||
1, 0, 0,
|
|
||||||
ABI_CLASS_EXTENSION, /* needs the server extension ABI */
|
|
||||||
ABI_EXTENSION_VERSION,
|
|
||||||
MOD_CLASS_EXTENSION,
|
|
||||||
{0,0,0,0}
|
|
||||||
};
|
|
||||||
|
|
||||||
_X_EXPORT XF86ModuleData xtrapModuleData = { &xtrapVersRec, xtrapSetup, NULL };
|
|
||||||
|
|
||||||
static pointer
|
|
||||||
xtrapSetup(pointer module, pointer opts, int *errmaj, int *errmin) {
|
|
||||||
LoadExtension(&xtrapExt, FALSE);
|
|
||||||
/* Need a non-NULL return value to indicate success */
|
|
||||||
return (pointer)1;
|
|
||||||
}
|
|
|
@ -410,9 +410,6 @@
|
||||||
/* Support XTest extension */
|
/* Support XTest extension */
|
||||||
#undef XTEST
|
#undef XTEST
|
||||||
|
|
||||||
/* Support XTrap extension */
|
|
||||||
#undef XTRAP
|
|
||||||
|
|
||||||
/* Support Xv extension */
|
/* Support Xv extension */
|
||||||
#undef XV
|
#undef XV
|
||||||
|
|
||||||
|
|
|
@ -163,9 +163,6 @@
|
||||||
/* Support XTest extension */
|
/* Support XTest extension */
|
||||||
#undef XTEST
|
#undef XTEST
|
||||||
|
|
||||||
/* Support XTrap extension */
|
|
||||||
#undef XTRAP
|
|
||||||
|
|
||||||
/* Support Xv Extension */
|
/* Support Xv Extension */
|
||||||
#undef XV
|
#undef XV
|
||||||
|
|
||||||
|
|
|
@ -240,9 +240,6 @@ extern void BigReqExtensionInit(INITARGS);
|
||||||
#ifdef XIDLE
|
#ifdef XIDLE
|
||||||
extern void XIdleExtensionInit(INITARGS);
|
extern void XIdleExtensionInit(INITARGS);
|
||||||
#endif
|
#endif
|
||||||
#ifdef XTRAP
|
|
||||||
extern void DEC_XTRAPInit(INITARGS);
|
|
||||||
#endif
|
|
||||||
#ifdef SCREENSAVER
|
#ifdef SCREENSAVER
|
||||||
extern void ScreenSaverExtensionInit (INITARGS);
|
extern void ScreenSaverExtensionInit (INITARGS);
|
||||||
#endif
|
#endif
|
||||||
|
@ -485,9 +482,6 @@ InitExtensions(int argc, char *argv[])
|
||||||
#ifdef XIDLE
|
#ifdef XIDLE
|
||||||
if (!noXIdleExtension) XIdleExtensionInit();
|
if (!noXIdleExtension) XIdleExtensionInit();
|
||||||
#endif
|
#endif
|
||||||
#ifdef XTRAP
|
|
||||||
if (!noTestExtensions) DEC_XTRAPInit();
|
|
||||||
#endif
|
|
||||||
#if defined(SCREENSAVER)
|
#if defined(SCREENSAVER)
|
||||||
if (!noScreenSaverExtension) ScreenSaverExtensionInit ();
|
if (!noScreenSaverExtension) ScreenSaverExtensionInit ();
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue
Block a user