65fea56f17cd614bc8908264df980a62e1931468vboxsync/************************************************************
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncAuthor: Eamon Walsh <ewalsh@tycho.nsa.gov>
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncPermission to use, copy, modify, distribute, and sell this software and its
65fea56f17cd614bc8908264df980a62e1931468vboxsyncdocumentation for any purpose is hereby granted without fee, provided that
65fea56f17cd614bc8908264df980a62e1931468vboxsyncthis permission notice appear in supporting documentation. This permission
65fea56f17cd614bc8908264df980a62e1931468vboxsyncnotice shall be included in all copies or substantial portions of the
65fea56f17cd614bc8908264df980a62e1931468vboxsyncSoftware.
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
65fea56f17cd614bc8908264df980a62e1931468vboxsyncIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
65fea56f17cd614bc8908264df980a62e1931468vboxsyncFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
65fea56f17cd614bc8908264df980a62e1931468vboxsyncAUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
65fea56f17cd614bc8908264df980a62e1931468vboxsyncAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
65fea56f17cd614bc8908264df980a62e1931468vboxsyncCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync********************************************************/
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync#ifndef _XSELINUX_H
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define _XSELINUX_H
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync/* Extension info */
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define SELINUX_EXTENSION_NAME "SELinux"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define SELINUX_MAJOR_VERSION 1
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define SELINUX_MINOR_VERSION 1
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define SELinuxNumberEvents 0
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define SELinuxNumberErrors 0
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync/* Extension protocol */
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxQueryVersion 0
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxSetDeviceCreateContext 1
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxGetDeviceCreateContext 2
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxSetDeviceContext 3
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxGetDeviceContext 4
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxSetDrawableCreateContext 5
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxGetDrawableCreateContext 6
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxGetDrawableContext 7
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxSetPropertyCreateContext 8
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxGetPropertyCreateContext 9
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxSetPropertyUseContext 10
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxGetPropertyUseContext 11
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxGetPropertyContext 12
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxGetPropertyDataContext 13
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxListProperties 14
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxSetSelectionCreateContext 15
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxGetSelectionCreateContext 16
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxSetSelectionUseContext 17
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxGetSelectionUseContext 18
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxGetSelectionContext 19
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxGetSelectionDataContext 20
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxListSelections 21
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define X_SELinuxGetClientContext 22
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynctypedef struct {
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 reqType;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 SELinuxReqType;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD16 length;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 client_major;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 client_minor;
65fea56f17cd614bc8908264df980a62e1931468vboxsync} SELinuxQueryVersionReq;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynctypedef struct {
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 type;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 pad1;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD16 sequenceNumber;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 length;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD16 server_major;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD16 server_minor;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 pad2;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 pad3;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 pad4;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 pad5;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 pad6;
65fea56f17cd614bc8908264df980a62e1931468vboxsync} SELinuxQueryVersionReply;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynctypedef struct {
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 reqType;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 SELinuxReqType;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD16 length;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 context_len;
65fea56f17cd614bc8908264df980a62e1931468vboxsync} SELinuxSetCreateContextReq;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynctypedef struct {
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 reqType;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 SELinuxReqType;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD16 length;
65fea56f17cd614bc8908264df980a62e1931468vboxsync} SELinuxGetCreateContextReq;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynctypedef struct {
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 reqType;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 SELinuxReqType;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD16 length;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 id;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 context_len;
65fea56f17cd614bc8908264df980a62e1931468vboxsync} SELinuxSetContextReq;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynctypedef struct {
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 reqType;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 SELinuxReqType;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD16 length;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 id;
65fea56f17cd614bc8908264df980a62e1931468vboxsync} SELinuxGetContextReq;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynctypedef struct {
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 reqType;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 SELinuxReqType;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD16 length;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 window;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 property;
65fea56f17cd614bc8908264df980a62e1931468vboxsync} SELinuxGetPropertyContextReq;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynctypedef struct {
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 type;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 pad1;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD16 sequenceNumber;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 length;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 context_len;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 pad2;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 pad3;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 pad4;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 pad5;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 pad6;
65fea56f17cd614bc8908264df980a62e1931468vboxsync} SELinuxGetContextReply;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynctypedef struct {
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 type;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD8 pad1;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD16 sequenceNumber;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 length;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 count;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 pad2;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 pad3;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 pad4;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 pad5;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CARD32 pad6;
65fea56f17cd614bc8908264df980a62e1931468vboxsync} SELinuxListItemsReply;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync#endif /* _XSELINUX_H */