summaryrefslogtreecommitdiff
path: root/include/X11/ICE/ICElib.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/X11/ICE/ICElib.h')
-rw-r--r--include/X11/ICE/ICElib.h537
1 files changed, 537 insertions, 0 deletions
diff --git a/include/X11/ICE/ICElib.h b/include/X11/ICE/ICElib.h
new file mode 100644
index 0000000..5385bf0
--- /dev/null
+++ b/include/X11/ICE/ICElib.h
@@ -0,0 +1,537 @@
+/* $Xorg: ICElib.h,v 1.5 2001/02/09 02:03:26 xorgcvs Exp $ */
+/******************************************************************************
+
+
+Copyright 1993, 1998 The Open Group
+
+Permission to use, copy, modify, distribute, and sell this software and its
+documentation for any purpose is hereby granted without fee, provided that
+the above copyright notice appear in all copies and that both that
+copyright notice and this permission notice appear in supporting
+documentation.
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+OPEN GROUP 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.
+
+Except as contained in this notice, the name of The Open Group shall not be
+used in advertising or otherwise to promote the sale, use or other dealings
+in this Software without prior written authorization from The Open Group.
+
+Author: Ralph Mor, X Consortium
+******************************************************************************/
+
+#ifndef _ICELIB_H_
+#define _ICELIB_H_
+
+#include <X11/ICE/ICE.h>
+#include <X11/Xfuncproto.h>
+
+#define Bool int
+#define Status int
+#define True 1
+#define False 0
+
+#if NeedFunctionPrototypes
+typedef void *IcePointer;
+#else
+typedef char *IcePointer;
+#endif
+
+typedef enum {
+ IcePoAuthHaveReply,
+ IcePoAuthRejected,
+ IcePoAuthFailed,
+ IcePoAuthDoneCleanup
+} IcePoAuthStatus;
+
+typedef enum {
+ IcePaAuthContinue,
+ IcePaAuthAccepted,
+ IcePaAuthRejected,
+ IcePaAuthFailed
+} IcePaAuthStatus;
+
+typedef enum {
+ IceConnectPending,
+ IceConnectAccepted,
+ IceConnectRejected,
+ IceConnectIOError
+} IceConnectStatus;
+
+typedef enum {
+ IceProtocolSetupSuccess,
+ IceProtocolSetupFailure,
+ IceProtocolSetupIOError,
+ IceProtocolAlreadyActive
+} IceProtocolSetupStatus;
+
+typedef enum {
+ IceAcceptSuccess,
+ IceAcceptFailure,
+ IceAcceptBadMalloc
+} IceAcceptStatus;
+
+typedef enum {
+ IceClosedNow,
+ IceClosedASAP,
+ IceConnectionInUse,
+ IceStartedShutdownNegotiation
+} IceCloseStatus;
+
+typedef enum {
+ IceProcessMessagesSuccess,
+ IceProcessMessagesIOError,
+ IceProcessMessagesConnectionClosed
+} IceProcessMessagesStatus;
+
+typedef struct {
+ unsigned long sequence_of_request;
+ int major_opcode_of_request;
+ int minor_opcode_of_request;
+ IcePointer reply;
+} IceReplyWaitInfo;
+
+typedef struct _IceConn *IceConn;
+typedef struct _IceListenObj *IceListenObj;
+
+typedef void (*IceWatchProc) (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */,
+ IcePointer /* clientData */,
+ Bool /* opening */,
+ IcePointer * /* watchData */
+#endif
+);
+
+typedef void (*IcePoProcessMsgProc) (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */,
+ IcePointer /* clientData */,
+ int /* opcode */,
+ unsigned long /* length */,
+ Bool /* swap */,
+ IceReplyWaitInfo * /* replyWait */,
+ Bool * /* replyReadyRet */
+#endif
+);
+
+typedef void (*IcePaProcessMsgProc) (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */,
+ IcePointer /* clientData */,
+ int /* opcode */,
+ unsigned long /* length */,
+ Bool /* swap */
+#endif
+);
+
+typedef struct {
+ int major_version;
+ int minor_version;
+ IcePoProcessMsgProc process_msg_proc;
+} IcePoVersionRec;
+
+typedef struct {
+ int major_version;
+ int minor_version;
+ IcePaProcessMsgProc process_msg_proc;
+} IcePaVersionRec;
+
+typedef IcePoAuthStatus (*IcePoAuthProc) (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */,
+ IcePointer * /* authStatePtr */,
+ Bool /* cleanUp */,
+ Bool /* swap */,
+ int /* authDataLen */,
+ IcePointer /* authData */,
+ int * /* replyDataLenRet */,
+ IcePointer * /* replyDataRet */,
+ char ** /* errorStringRet */
+#endif
+);
+
+typedef IcePaAuthStatus (*IcePaAuthProc) (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */,
+ IcePointer * /* authStatePtr */,
+ Bool /* swap */,
+ int /* authDataLen */,
+ IcePointer /* authData */,
+ int * /* replyDataLenRet */,
+ IcePointer * /* replyDataRet */,
+ char ** /* errorStringRet */
+#endif
+);
+
+typedef Bool (*IceHostBasedAuthProc) (
+#if NeedFunctionPrototypes
+ char * /* hostName */
+#endif
+);
+
+typedef Status (*IceProtocolSetupProc) (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */,
+ int /* majorVersion */,
+ int /* minorVersion */,
+ char * /* vendor */,
+ char * /* release */,
+ IcePointer * /* clientDataRet */,
+ char ** /* failureReasonRet */
+#endif
+);
+
+typedef void (*IceProtocolActivateProc) (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */,
+ IcePointer /* clientData */
+#endif
+);
+
+typedef void (*IceIOErrorProc) (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+typedef void (*IcePingReplyProc) (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */,
+ IcePointer /* clientData */
+#endif
+);
+
+typedef void (*IceErrorHandler) (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */,
+ Bool /* swap */,
+ int /* offendingMinorOpcode */,
+ unsigned long /* offendingSequence */,
+ int /* errorClass */,
+ int /* severity */,
+ IcePointer /* values */
+#endif
+);
+
+typedef void (*IceIOErrorHandler) (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+
+/*
+ * Function prototypes
+ */
+
+_XFUNCPROTOBEGIN
+
+extern int IceRegisterForProtocolSetup (
+#if NeedFunctionPrototypes
+ char * /* protocolName */,
+ char * /* vendor */,
+ char * /* release */,
+ int /* versionCount */,
+ IcePoVersionRec * /* versionRecs */,
+ int /* authCount */,
+ char ** /* authNames */,
+ IcePoAuthProc * /* authProcs */,
+ IceIOErrorProc /* IOErrorProc */
+#endif
+);
+
+extern int IceRegisterForProtocolReply (
+#if NeedFunctionPrototypes
+ char * /* protocolName */,
+ char * /* vendor */,
+ char * /* release */,
+ int /* versionCount */,
+ IcePaVersionRec * /* versionRecs */,
+ int /* authCount */,
+ char ** /* authNames */,
+ IcePaAuthProc * /* authProcs */,
+ IceHostBasedAuthProc /* hostBasedAuthProc */,
+ IceProtocolSetupProc /* protocolSetupProc */,
+ IceProtocolActivateProc /* protocolActivateProc */,
+ IceIOErrorProc /* IOErrorProc */
+#endif
+);
+
+extern IceConn IceOpenConnection (
+#if NeedFunctionPrototypes
+ char * /* networkIdsList */,
+ IcePointer /* context */,
+ Bool /* mustAuthenticate */,
+ int /* majorOpcodeCheck */,
+ int /* errorLength */,
+ char * /* errorStringRet */
+#endif
+);
+
+extern IcePointer IceGetConnectionContext (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern Status IceListenForConnections (
+#if NeedFunctionPrototypes
+ int * /* countRet */,
+ IceListenObj ** /* listenObjsRet */,
+ int /* errorLength */,
+ char * /* errorStringRet */
+#endif
+);
+
+extern Status IceListenForWellKnownConnections (
+#if NeedFunctionPrototypes
+ char * /* port */,
+ int * /* countRet */,
+ IceListenObj ** /* listenObjsRet */,
+ int /* errorLength */,
+ char * /* errorStringRet */
+#endif
+);
+
+extern int IceGetListenConnectionNumber (
+#if NeedFunctionPrototypes
+ IceListenObj /* listenObj */
+#endif
+);
+
+extern char *IceGetListenConnectionString (
+#if NeedFunctionPrototypes
+ IceListenObj /* listenObj */
+#endif
+);
+
+extern char *IceComposeNetworkIdList (
+#if NeedFunctionPrototypes
+ int /* count */,
+ IceListenObj * /* listenObjs */
+#endif
+);
+
+extern void IceFreeListenObjs (
+#if NeedFunctionPrototypes
+ int /* count */,
+ IceListenObj * /* listenObjs */
+#endif
+);
+
+extern void IceSetHostBasedAuthProc (
+#if NeedFunctionPrototypes
+ IceListenObj /* listenObj */,
+ IceHostBasedAuthProc /* hostBasedAuthProc */
+#endif
+);
+
+extern IceConn IceAcceptConnection (
+#if NeedFunctionPrototypes
+ IceListenObj /* listenObj */,
+ IceAcceptStatus * /* statusRet */
+#endif
+);
+
+extern void IceSetShutdownNegotiation (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */,
+ Bool /* negotiate */
+#endif
+);
+
+extern Bool IceCheckShutdownNegotiation (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern IceCloseStatus IceCloseConnection (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern Status IceAddConnectionWatch (
+#if NeedFunctionPrototypes
+ IceWatchProc /* watchProc */,
+ IcePointer /* clientData */
+#endif
+);
+
+extern void IceRemoveConnectionWatch (
+#if NeedFunctionPrototypes
+ IceWatchProc /* watchProc */,
+ IcePointer /* clientData */
+#endif
+);
+
+extern IceProtocolSetupStatus IceProtocolSetup (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */,
+ int /* myOpcode */,
+ IcePointer /* clientData */,
+ Bool /* mustAuthenticate */,
+ int * /* majorVersionRet */,
+ int * /* minorVersionRet */,
+ char ** /* vendorRet */,
+ char ** /* releaseRet */,
+ int /* errorLength */,
+ char * /* errorStringRet */
+#endif
+);
+
+extern Status IceProtocolShutdown (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */,
+ int /* majorOpcode */
+#endif
+);
+
+extern IceProcessMessagesStatus IceProcessMessages (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */,
+ IceReplyWaitInfo * /* replyWait */,
+ Bool * /* replyReadyRet */
+#endif
+);
+
+extern Status IcePing (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */,
+ IcePingReplyProc /* pingReplyProc */,
+ IcePointer /* clientData */
+#endif
+);
+
+extern char *IceAllocScratch (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */,
+ unsigned long /* size */
+#endif
+);
+
+extern int IceFlush (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern int IceGetOutBufSize (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern int IceGetInBufSize (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern IceConnectStatus IceConnectionStatus (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern char *IceVendor (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern char *IceRelease (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern int IceProtocolVersion (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern int IceProtocolRevision (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern int IceConnectionNumber (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern char *IceConnectionString (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern unsigned long IceLastSentSequenceNumber (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern unsigned long IceLastReceivedSequenceNumber (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern Bool IceSwapping (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern IceErrorHandler IceSetErrorHandler (
+#if NeedFunctionPrototypes
+ IceErrorHandler /* handler */
+#endif
+);
+
+extern IceIOErrorHandler IceSetIOErrorHandler (
+#if NeedFunctionPrototypes
+ IceIOErrorHandler /* handler */
+#endif
+);
+
+
+/*
+ * Multithread Routines
+ */
+
+extern Status IceInitThreads (
+#if NeedFunctionPrototypes
+ void
+#endif
+);
+
+extern void IceAppLockConn (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+extern void IceAppUnlockConn (
+#if NeedFunctionPrototypes
+ IceConn /* iceConn */
+#endif
+);
+
+_XFUNCPROTOEND
+
+#endif /* _ICELIB_H_ */