/* * Copyright (c) 1993, 1994, Oracle and/or its affiliates. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice (including the next * paragraph) 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 AUTHORS OR COPYRIGHT HOLDERS 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. */ /************************************************************ Protocol defs for XIA extension ********************************************************/ /* THIS IS NOT AN X CONSORTIUM STANDARD */ #ifndef _INTERACTIVE_H #define _INTERACTIVE_H #include #include "interactiveCommon.h" #define X_IAQueryVersion 0 #define X_IASetProcessInfo 1 #define X_IAGetProcessInfo 2 #define IANumberEvents 0 #define IANumberErrors 0 typedef int ConnectionPidRec; typedef int * ConnectionPidPtr; #define IANAME "SolarisIA" #define IA_MAJOR_VERSION 1 /* current version numbers */ #define IA_MINOR_VERSION 1 typedef struct _IAQueryVersion { CARD8 reqType; /* always IAReqCode */ CARD8 IAReqType; /* always X_IAQueryVersion */ CARD16 length B16; } xIAQueryVersionReq; #define sz_xIAQueryVersionReq 4 typedef struct { BYTE type; /* X_Reply */ CARD8 pad; /* padding */ CARD16 sequenceNumber B16; CARD32 length B32; CARD16 majorVersion B16; /* major version of IA protocol */ CARD16 minorVersion B16; /* minor version of IA protocol */ CARD32 pad1 B32; CARD32 pad2 B32; CARD32 pad3 B32; CARD32 pad4 B32; CARD32 pad5 B32; } xIAQueryVersionReply; #define sz_xIAQueryVersionReply 32 typedef struct _IASetProcessInfo { CARD8 reqType; /* Always IAReqCode */ CARD8 connectionAttrType; /* What attribute */ CARD16 length B16; /* Request length */ CARD32 flags B32; /* Request flags */ CARD32 uid B32; /* requestor's uid */ } xIASetProcessInfoReq; #define sz_xIASetProcessInfoReq 12 typedef struct _IAGetProcessInfo { CARD8 reqType; /* Always IAReqCode */ CARD8 connectionAttrType; /* What attribute */ CARD16 length; /* Request length */ CARD32 flags B32; /* Request flags */ } xIAGetProcessInfoReq; #define sz_xIAGetProcessInfoReq 8 typedef struct { BYTE type; /* X_Reply */ CARD8 pad; /* padding */ CARD16 sequenceNumber B16; CARD32 length B32; CARD32 count B32; CARD32 pad1 B32; CARD32 pad2 B32; CARD32 pad3 B32; CARD32 pad4 B32; CARD32 pad5 B32; } xIAGetProcessInfoReply; #define sz_xIAGetProcessInfo 32 #endif