45e9809aff7304721fddb95654901b32195c9c7avboxsync/************************************************************
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncAuthor: Eamon Walsh <ewalsh@epoch.ncsc.mil>
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncPermission to use, copy, modify, distribute, and sell this software and its
45e9809aff7304721fddb95654901b32195c9c7avboxsyncdocumentation for any purpose is hereby granted without fee, provided that
45e9809aff7304721fddb95654901b32195c9c7avboxsyncthis permission notice appear in supporting documentation. This permission
45e9809aff7304721fddb95654901b32195c9c7avboxsyncnotice shall be included in all copies or substantial portions of the
45e9809aff7304721fddb95654901b32195c9c7avboxsyncSoftware.
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
45e9809aff7304721fddb95654901b32195c9c7avboxsyncIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
45e9809aff7304721fddb95654901b32195c9c7avboxsyncFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
45e9809aff7304721fddb95654901b32195c9c7avboxsyncAUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
45e9809aff7304721fddb95654901b32195c9c7avboxsyncAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
45e9809aff7304721fddb95654901b32195c9c7avboxsyncCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync********************************************************/
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync#ifndef _XACESTR_H
45e9809aff7304721fddb95654901b32195c9c7avboxsync#define _XACESTR_H
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync#include <X11/Xdefs.h>
45e9809aff7304721fddb95654901b32195c9c7avboxsync#include "dixstruct.h"
45e9809aff7304721fddb95654901b32195c9c7avboxsync#include "resource.h"
45e9809aff7304721fddb95654901b32195c9c7avboxsync#include "extnsionst.h"
45e9809aff7304721fddb95654901b32195c9c7avboxsync#include "gcstruct.h"
45e9809aff7304721fddb95654901b32195c9c7avboxsync#include "windowstr.h"
45e9809aff7304721fddb95654901b32195c9c7avboxsync#include "inputstr.h"
45e9809aff7304721fddb95654901b32195c9c7avboxsync#include "xace.h"
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_CORE_DISPATCH */
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync ClientPtr client;
45e9809aff7304721fddb95654901b32195c9c7avboxsync int rval;
45e9809aff7304721fddb95654901b32195c9c7avboxsync} XaceCoreDispatchRec;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_RESOURCE_ACCESS */
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_RESOURCE_CREATE */
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync ClientPtr client;
45e9809aff7304721fddb95654901b32195c9c7avboxsync XID id;
45e9809aff7304721fddb95654901b32195c9c7avboxsync RESTYPE rtype;
45e9809aff7304721fddb95654901b32195c9c7avboxsync Mask access_mode;
45e9809aff7304721fddb95654901b32195c9c7avboxsync pointer res;
45e9809aff7304721fddb95654901b32195c9c7avboxsync int rval;
45e9809aff7304721fddb95654901b32195c9c7avboxsync} XaceResourceAccessRec;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_DEVICE_ACCESS */
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync ClientPtr client;
45e9809aff7304721fddb95654901b32195c9c7avboxsync DeviceIntPtr dev;
45e9809aff7304721fddb95654901b32195c9c7avboxsync Bool fromRequest;
45e9809aff7304721fddb95654901b32195c9c7avboxsync int rval;
45e9809aff7304721fddb95654901b32195c9c7avboxsync} XaceDeviceAccessRec;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_PROPERTY_ACCESS */
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync ClientPtr client;
45e9809aff7304721fddb95654901b32195c9c7avboxsync WindowPtr pWin;
45e9809aff7304721fddb95654901b32195c9c7avboxsync Atom propertyName;
45e9809aff7304721fddb95654901b32195c9c7avboxsync Mask access_mode;
45e9809aff7304721fddb95654901b32195c9c7avboxsync int rval;
45e9809aff7304721fddb95654901b32195c9c7avboxsync} XacePropertyAccessRec;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_DRAWABLE_ACCESS */
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync ClientPtr client;
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pDraw;
45e9809aff7304721fddb95654901b32195c9c7avboxsync int rval;
45e9809aff7304721fddb95654901b32195c9c7avboxsync} XaceDrawableAccessRec;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_MAP_ACCESS */
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_BACKGRND_ACCESS */
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync ClientPtr client;
45e9809aff7304721fddb95654901b32195c9c7avboxsync WindowPtr pWin;
45e9809aff7304721fddb95654901b32195c9c7avboxsync int rval;
45e9809aff7304721fddb95654901b32195c9c7avboxsync} XaceMapAccessRec;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_EXT_DISPATCH_ACCESS */
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_EXT_ACCESS */
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync ClientPtr client;
45e9809aff7304721fddb95654901b32195c9c7avboxsync ExtensionEntry *ext;
45e9809aff7304721fddb95654901b32195c9c7avboxsync int rval;
45e9809aff7304721fddb95654901b32195c9c7avboxsync} XaceExtAccessRec;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_HOSTLIST_ACCESS */
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync ClientPtr client;
45e9809aff7304721fddb95654901b32195c9c7avboxsync Mask access_mode;
45e9809aff7304721fddb95654901b32195c9c7avboxsync int rval;
45e9809aff7304721fddb95654901b32195c9c7avboxsync} XaceHostlistAccessRec;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_SITE_POLICY */
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync char *policyString;
45e9809aff7304721fddb95654901b32195c9c7avboxsync int len;
45e9809aff7304721fddb95654901b32195c9c7avboxsync int rval;
45e9809aff7304721fddb95654901b32195c9c7avboxsync} XaceSitePolicyRec;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_DECLARE_EXT_SECURE */
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync ExtensionEntry *ext;
45e9809aff7304721fddb95654901b32195c9c7avboxsync Bool secure;
45e9809aff7304721fddb95654901b32195c9c7avboxsync} XaceDeclareExtSecureRec;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_AUTH_AVAIL */
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync ClientPtr client;
45e9809aff7304721fddb95654901b32195c9c7avboxsync XID authId;
45e9809aff7304721fddb95654901b32195c9c7avboxsync} XaceAuthAvailRec;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_KEY_AVAIL */
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync xEventPtr event;
45e9809aff7304721fddb95654901b32195c9c7avboxsync DeviceIntPtr keybd;
45e9809aff7304721fddb95654901b32195c9c7avboxsync int count;
45e9809aff7304721fddb95654901b32195c9c7avboxsync} XaceKeyAvailRec;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_WINDOW_INIT */
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync ClientPtr client;
45e9809aff7304721fddb95654901b32195c9c7avboxsync WindowPtr pWin;
45e9809aff7304721fddb95654901b32195c9c7avboxsync} XaceWindowRec;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_AUDIT_BEGIN */
45e9809aff7304721fddb95654901b32195c9c7avboxsync/* XACE_AUDIT_END */
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync ClientPtr client;
45e9809aff7304721fddb95654901b32195c9c7avboxsync int requestResult;
45e9809aff7304721fddb95654901b32195c9c7avboxsync} XaceAuditRec;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync#endif /* _XACESTR_H */