2 * Copyright (c) 1993, 1994, Oracle and/or its affiliates. All rights reserved.
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the "Software"),
6 * to deal in the Software without restriction, including without limitation
7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 * and/or sell copies of the Software, and to permit persons to whom the
9 * Software is furnished to do so, subject to the following conditions:
11 * The above copyright notice and this permission notice (including the next
12 * paragraph) shall be included in all copies or substantial portions of the
15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
18 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
21 * DEALINGS IN THE SOFTWARE.
24 /************************************************************
25 Protocol defs for XIA extension
26 ********************************************************/
28 /* THIS IS NOT AN X CONSORTIUM STANDARD */
30 #ifndef _INTERACTIVE_H
31 #define _INTERACTIVE_H
34 #include <X11/Xproto.h>
36 #include "interactiveCommon.h"
38 #define X_IAQueryVersion 0
39 #define X_IASetProcessInfo 1
40 #define X_IAGetProcessInfo 2
42 #define IANumberEvents 0
43 #define IANumberErrors 0
45 typedef int ConnectionPidRec
;
46 typedef int * ConnectionPidPtr
;
48 #define IANAME "SolarisIA"
50 #define IA_MAJOR_VERSION 1 /* current version numbers */
51 #define IA_MINOR_VERSION 1
53 typedef struct _IAQueryVersion
{
54 CARD8 reqType
; /* always IAReqCode */
55 CARD8 IAReqType
; /* always X_IAQueryVersion */
58 #define sz_xIAQueryVersionReq 4
61 BYTE type
; /* X_Reply */
62 CARD8 pad
; /* padding */
63 CARD16 sequenceNumber B16
;
65 CARD16 majorVersion B16
; /* major version of IA protocol */
66 CARD16 minorVersion B16
; /* minor version of IA protocol */
72 } xIAQueryVersionReply
;
73 #define sz_xIAQueryVersionReply 32
75 typedef struct _IASetProcessInfo
{
76 CARD8 reqType
; /* Always IAReqCode */
77 CARD8 connectionAttrType
; /* What attribute */
78 CARD16 length B16
; /* Request length */
79 CARD32 flags B32
; /* Request flags */
80 CARD32 uid B32
; /* requestor's uid */
81 } xIASetProcessInfoReq
;
82 #define sz_xIASetProcessInfoReq 12
84 typedef struct _IAGetProcessInfo
{
85 CARD8 reqType
; /* Always IAReqCode */
86 CARD8 connectionAttrType
; /* What attribute */
87 CARD16 length
; /* Request length */
88 CARD32 flags B32
; /* Request flags */
89 } xIAGetProcessInfoReq
;
90 #define sz_xIAGetProcessInfoReq 8
93 BYTE type
; /* X_Reply */
94 CARD8 pad
; /* padding */
95 CARD16 sequenceNumber B16
;
103 } xIAGetProcessInfoReply
;
105 #define sz_xIAGetProcessInfo 32