Data Definitions for libICE

This section contains standard data definitions that describe system data. These definitions are organized into groups that correspond to system headers. This convention is used as a convenience for the reader, and does not imply the existence of these headers, or their content.

ISO C serves as the LSB reference programming language, and data definitions are specified in ISO C format. The C language is used here as a convenient notation. Using a C language description of these data objects does not preclude their use by other programming languages.

X11/ICE/ICElib.h



typedef void *IcePointer;
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) (void);
typedef void (*IcePoProcessMsgProc) (void);
typedef void (*IcePaProcessMsgProc) (void);
typedef IcePoAuthStatus (*IcePoAuthProc) (void);
typedef IcePaAuthStatus (*IcePaAuthProc) (void);
typedef int (*IceHostBasedAuthProc) (void);
typedef int (*IceProtocolSetupProc) (void);
typedef void (*IceProtocolActivateProc) (void);
typedef void (*IceIOErrorProc) (void);
typedef void (*IcePingReplyProc) (void);
typedef void (*IceErrorHandler) (void);
typedef void (*IceIOErrorHandler) (void);


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;

X11/ICE/ICEutil.h



typedef struct
{
  char *protocol_name;
  unsigned short protocol_data_length;
  char *protocol_data;
  char *network_id;
  char *auth_name;
  unsigned short auth_data_length;
  char *auth_data;
}
IceAuthFileEntry;
typedef struct
{
  char *protocol_name;
  char *network_id;
  char *auth_name;
  unsigned short auth_data_length;
  char *auth_data;
}
IceAuthDataEntry;