b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* $Xorg: lbxserve.h,v 1.4 2001/02/09 02:05:17 xorgcvs Exp $ */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/*
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncCopyright 1996, 1998 The Open Group
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncPermission to use, copy, modify, distribute, and sell this software and its
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncdocumentation for any purpose is hereby granted without fee, provided that
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncthe above copyright notice appear in all copies and that both that
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynccopyright notice and this permission notice appear in supporting
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncdocumentation.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncThe above copyright notice and this permission notice shall be included in
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncall copies or substantial portions of the Software.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncOPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncExcept as contained in this notice, the name of The Open Group shall not be
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncused in advertising or otherwise to promote the sale, use or other dealings
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncin this Software without prior written authorization from The Open Group.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync*/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/*
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Copyright 1992 Network Computing Devices
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync *
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Permission to use, copy, modify, distribute, and sell this software and its
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * documentation for any purpose is hereby granted without fee, provided that
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * the above copyright notice appear in all copies and that both that
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * copyright notice and this permission notice appear in supporting
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * documentation, and that the name of NCD. not be used in advertising or
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * publicity pertaining to distribution of the software without specific,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * written prior permission. NCD. makes no representations about the
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * suitability of this software for any purpose. It is provided "as is"
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * without express or implied warranty.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync *
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * NCD. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL NCD.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync *
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* $XFree86: xc/programs/Xserver/lbx/lbxserve.h,v 1.4 2001/08/01 00:44:58 tsi Exp $ */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#ifdef HAVE_DIX_CONFIG_H
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include <dix-config.h>
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#endif
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#ifndef _LBXSERVE_H_
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include "colormap.h"
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include "property.h"
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define _LBXSERVE_H_
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define _XLBX_SERVER_
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include <X11/extensions/lbxstr.h>
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include <X11/extensions/lbxdeltastr.h>
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include <X11/extensions/lbxopts.h>
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define MAX_LBX_CLIENTS MAXCLIENTS
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define MAX_NUM_PROXIES (MAXCLIENTS >> 1)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynctypedef struct _LbxClient *LbxClientPtr;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynctypedef struct _LbxProxy *LbxProxyPtr;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynctypedef struct _LbxClient {
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync CARD32 id;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ClientPtr client;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync LbxProxyPtr proxy;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync Bool ignored;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync Bool input_blocked;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int reqs_pending;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync long bytes_in_reply;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync long bytes_remaining;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync Drawable drawableCache[GFX_CACHE_SIZE];
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GContext gcontextCache[GFX_CACHE_SIZE];
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync pointer gfx_buffer; /* tmp buffer for unpacking gfx requests */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned long gb_size;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync} LbxClientRec;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynctypedef struct _connectionOutput *OSBufPtr;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynctypedef struct _LbxProxy {
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync LbxProxyPtr next;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync /* this array is indexed by lbx proxy index */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync LbxClientPtr lbxClients[MAX_LBX_CLIENTS];
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync LbxClientPtr curRecv,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync curDix;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int fd;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int pid; /* proxy ID */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int uid;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int numClients;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int maxIndex;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync Bool aborted;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int grabClient;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync pointer compHandle;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync Bool dosquishing;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync Bool useTags;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync LBXDeltasRec indeltas;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync LBXDeltasRec outdeltas;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *iDeltaBuf;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *replyBuf;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *oDeltaBuf;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync OSBufPtr ofirst;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync OSBufPtr olast;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync CARD32 cur_send_id;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync LbxStreamOpts streamOpts;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int numBitmapCompMethods;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned char *bitmapCompMethods; /* array of indices */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int numPixmapCompMethods;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned char *pixmapCompMethods; /* array of indices */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int **pixmapCompDepths; /* depths supported from each method */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync struct _ColormapRec *grabbedCmaps; /* chained via lbx private */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int motion_allowed_events;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync lbxMotionCache motionCache;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync} LbxProxyRec;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* This array is indexed by server client index, not lbx proxy index */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern LbxClientPtr lbxClients[MAXCLIENTS];
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define LbxClient(client) (lbxClients[(client)->index])
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define LbxProxy(client) (LbxClient(client)->proxy)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define LbxMaybeProxy(client) (LbxClient(client) ? LbxProxy(client) : 0)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define LbxProxyID(client) (LbxProxy(client)->pid)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define LbxProxyClient(proxy) ((proxy)->lbxClients[0]->client)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxEventCode;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* os/connection.c */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern ClientPtr AllocLbxClientConnection ( ClientPtr client,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync LbxProxyPtr proxy );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxProxyConnection ( ClientPtr client, LbxProxyPtr proxy );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* os/libxio.c */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int UncompressedWriteToClient ( ClientPtr who, int count, char *buf );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxForceOutput ( LbxProxyPtr proxy );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void SwitchClientInput ( ClientPtr client, Bool pending );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PrepareLargeReqBuffer ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool AppendFakeRequest ( ClientPtr client, char *data, int count );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxFreeOsBuffers ( LbxProxyPtr proxy );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool AllocateLargeReqBuffer ( ClientPtr client, int size );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool AddToLargeReqBuffer ( ClientPtr client, char *data, int size );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxPrimeInput ( ClientPtr client, LbxProxyPtr proxy );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* lbxcmap.c */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxCmapInit ( void );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool LbxCheckColorRequest ( ClientPtr client, ColormapPtr pmap,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync xReq *req );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxCheckCmapGrabbed ( ColormapPtr pmap );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxDisableSmartGrab ( ColormapPtr pmap );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxBeginFreeCellsEvent ( ColormapPtr pmap );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxAddFreeCellToEvent ( ColormapPtr pmap, Pixel pixel );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxEndFreeCellsEvent ( ColormapPtr pmap );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxSortPixelList ( Pixel *pixels, int count );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxGrabCmap ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxReleaseCmap ( ColormapPtr pmap, Bool smart );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxReleaseCmap ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxAllocColor ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxIncrementPixel ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* lbxdix.h */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxDixInit ( void );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxResetTags ( void );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxSendConnSetup ( ClientPtr client, char *reason );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxGetModifierMapping ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxGetKeyboardMapping ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxQueryFont ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxTagData ( ClientPtr client, XID tag, unsigned long len,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync pointer data );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxInvalidateTag ( ClientPtr client, XID tag );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxAllowMotion ( ClientPtr client, int num );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxFlushModifierMapTag ( void );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxFlushKeyboardMapTag ( void );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxFreeFontTag ( FontPtr pfont );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxSendInvalidateTag ( ClientPtr client, XID tag, int tagtype );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool LbxFlushQTag ( XID tag );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void ProcessQTagZombies ( void );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxQueryTagData ( ClientPtr client, int owner_pid, XID tag,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int tagtype );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* lbxexts.c */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool LbxAddExtension ( char *name, int opcode, int ev_base,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int err_base );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool LbxAddExtensionAlias ( int idx, char *alias );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxDeclareExtensionSecurity ( char *extname, Bool secure );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool LbxRegisterExtensionGenerationMasks ( int idx, int num_reqs,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *rep_mask,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *ev_mask );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxQueryExtension ( ClientPtr client, char *ename, int nlen );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxCloseDownExtensions ( void );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxSetReqMask ( CARD8 *mask, int req, Bool on );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* lbxgfx.c */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxDecodePoly( ClientPtr client, CARD8 xreqtype,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int (*decode_rtn)(char *, char *, short *) );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxDecodeFillPoly ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxDecodeCopyArea ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxDecodeCopyPlane ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxDecodePolyText ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxDecodeImageText ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxDecodePutImage ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxDecodeGetImage ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxDecodePoints ( char *in, char *inend, short *out );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxDecodeSegment ( char *in, char *inend, short *out );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxDecodeRectangle ( char *in, char *inend, short *out );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxDecodeArc ( char *in, char *inend, short *out );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* lbxmain.c */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern LbxProxyPtr LbxPidToProxy ( int pid );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxReencodeOutput ( ClientPtr client, char *pbuf, int *pcount,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *cbuf, int *ccount );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxExtensionInit ( void );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxCloseClient ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxSetForBlock ( LbxClientPtr lbxClient );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxDispatch ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxSwitch ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxQueryVersion ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxStartProxy ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxStopProxy ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxBeginLargeRequest ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxLargeRequestData ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxEndLargeRequest ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxInternAtoms ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxGetWinAttrAndGeom ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxNewClient ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxEstablishConnection ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxCloseClient ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxModifySequence ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxAllowMotion ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxGetModifierMapping ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxGetKeyboardMapping ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxQueryFont ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxChangeProperty ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxGetProperty ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxTagData ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxInvalidateTag ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxPolyPoint ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxPolyLine ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxPolySegment ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxPolyRectangle ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxPolyArc ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxFillPoly ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxPolyFillRectangle ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxPolyFillArc ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxCopyArea ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxCopyPlane ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxPolyText ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxImageText ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxQueryExtension ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxPutImage ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxGetImage ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int ProcLbxSync ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* lbxprop.c */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxChangeProperty ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxGetProperty ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxStallPropRequest ( ClientPtr client, PropertyPtr pProp );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxChangeWindowProperty ( ClientPtr client, WindowPtr pWin,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync Atom property, Atom type, int format,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int mode, unsigned long len,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync Bool have_data, pointer value,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync Bool sendevent, XID *tag );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* lbxsquish.c */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int LbxSquishEvent ( char *buf );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* lbwswap.c */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int SProcLbxDispatch( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int SProcLbxSwitch ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int SProcLbxBeginLargeRequest ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int SProcLbxLargeRequestData ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int SProcLbxEndLargeRequest ( ClientPtr client );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxWriteSConnSetupPrefix ( ClientPtr pClient,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync xLbxConnSetupPrefix *pcsp );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void LbxSwapFontInfo ( xLbxFontInfo *pr, Bool compressed );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* lbxzerorep.c */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void ZeroReplyPadBytes ( char *buf, int reqType );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#endif /* _LBXSERVE_H_ */