summaryrefslogtreecommitdiff
path: root/Xext/xselinux.h
diff options
context:
space:
mode:
authorEamon Walsh <ewalsh@tycho.nsa.gov>2007-10-23 20:58:48 -0400
committerEamon Walsh <ewalsh@moss-charon.epoch.ncsc.mil>2007-10-23 20:58:48 -0400
commit46521f529841e032e198e5df87974088548a68de (patch)
tree11ed5c24906ef6d890d4247b07c24fa265580302 /Xext/xselinux.h
parent825f09dffd94cfcd0562a01c5181998503851461 (diff)
xselinux: Add basic support for selection access control and redirection.
Probably not fully baked yet. It's difficult to test since so few apps actually follow the ICCCM with respect to cut & paste.
Diffstat (limited to 'Xext/xselinux.h')
-rw-r--r--Xext/xselinux.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/Xext/xselinux.h b/Xext/xselinux.h
index 407b81f93..691154d1d 100644
--- a/Xext/xselinux.h
+++ b/Xext/xselinux.h
@@ -29,6 +29,43 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#define XSELinuxNumberEvents 0
#define XSELinuxNumberErrors 0
+/* Extension protocol */
+#define X_SELinuxQueryVersion 0
+#define X_SELinuxSetSelectionManager 1
+
+typedef struct _SELinuxQueryVersion {
+ CARD8 reqType;
+ CARD8 SELinuxReqType;
+ CARD16 length;
+ CARD8 client_major;
+ CARD8 client_minor;
+ CARD16 unused;
+} SELinuxQueryVersionReq;
+#define sz_SELinuxQueryVersionReq 8
+
+typedef struct {
+ CARD8 type;
+ CARD8 pad1;
+ CARD16 sequenceNumber;
+ CARD32 length;
+ CARD16 server_major;
+ CARD16 server_minor;
+ CARD32 pad2;
+ CARD32 pad3;
+ CARD32 pad4;
+ CARD32 pad5;
+ CARD32 pad6;
+} SELinuxQueryVersionReply;
+#define sz_SELinuxQueryVersionReply 32
+
+typedef struct _SELinuxSetSelectionManager {
+ CARD8 reqType;
+ CARD8 SELinuxReqType;
+ CARD16 length;
+ CARD32 window;
+} SELinuxSetSelectionManagerReq;
+#define sz_SELinuxSetSelectionManagerReq 8
+
/* Private Flask definitions */
#define SECCLASS_X_DRAWABLE 1
#define SECCLASS_X_SCREEN 2