xselinux: Implement polyinstantiation support and related protocol.
(cherry picked from commit d4101140f4
)
This commit is contained in:
parent
e4d92a13e8
commit
9de621afee
1060
Xext/xselinux.c
1060
Xext/xselinux.c
File diff suppressed because it is too large
Load Diff
102
Xext/xselinux.h
102
Xext/xselinux.h
@ -31,21 +31,27 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||||||
|
|
||||||
/* Extension protocol */
|
/* Extension protocol */
|
||||||
#define X_SELinuxQueryVersion 0
|
#define X_SELinuxQueryVersion 0
|
||||||
#define X_SELinuxSetSecurityManager 1
|
#define X_SELinuxSetDeviceCreateContext 1
|
||||||
#define X_SELinuxGetSecurityManager 2
|
#define X_SELinuxGetDeviceCreateContext 2
|
||||||
#define X_SELinuxSetDeviceCreateContext 3
|
#define X_SELinuxSetDeviceContext 3
|
||||||
#define X_SELinuxGetDeviceCreateContext 4
|
#define X_SELinuxGetDeviceContext 4
|
||||||
#define X_SELinuxSetDeviceContext 5
|
#define X_SELinuxSetWindowCreateContext 5
|
||||||
#define X_SELinuxGetDeviceContext 6
|
#define X_SELinuxGetWindowCreateContext 6
|
||||||
#define X_SELinuxSetPropertyCreateContext 7
|
#define X_SELinuxGetWindowContext 7
|
||||||
#define X_SELinuxGetPropertyCreateContext 8
|
#define X_SELinuxSetPropertyCreateContext 8
|
||||||
#define X_SELinuxGetPropertyContext 9
|
#define X_SELinuxGetPropertyCreateContext 9
|
||||||
#define X_SELinuxSetWindowCreateContext 10
|
#define X_SELinuxSetPropertyUseContext 10
|
||||||
#define X_SELinuxGetWindowCreateContext 11
|
#define X_SELinuxGetPropertyUseContext 11
|
||||||
#define X_SELinuxGetWindowContext 12
|
#define X_SELinuxGetPropertyContext 12
|
||||||
#define X_SELinuxSetSelectionCreateContext 13
|
#define X_SELinuxGetPropertyDataContext 13
|
||||||
#define X_SELinuxGetSelectionCreateContext 14
|
#define X_SELinuxListProperties 14
|
||||||
#define X_SELinuxGetSelectionContext 15
|
#define X_SELinuxSetSelectionCreateContext 15
|
||||||
|
#define X_SELinuxGetSelectionCreateContext 16
|
||||||
|
#define X_SELinuxSetSelectionUseContext 17
|
||||||
|
#define X_SELinuxGetSelectionUseContext 18
|
||||||
|
#define X_SELinuxGetSelectionContext 19
|
||||||
|
#define X_SELinuxGetSelectionDataContext 20
|
||||||
|
#define X_SELinuxListSelections 21
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
CARD8 reqType;
|
CARD8 reqType;
|
||||||
@ -53,7 +59,6 @@ typedef struct {
|
|||||||
CARD16 length;
|
CARD16 length;
|
||||||
CARD8 client_major;
|
CARD8 client_major;
|
||||||
CARD8 client_minor;
|
CARD8 client_minor;
|
||||||
CARD16 unused;
|
|
||||||
} SELinuxQueryVersionReq;
|
} SELinuxQueryVersionReq;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
@ -74,35 +79,7 @@ typedef struct {
|
|||||||
CARD8 reqType;
|
CARD8 reqType;
|
||||||
CARD8 SELinuxReqType;
|
CARD8 SELinuxReqType;
|
||||||
CARD16 length;
|
CARD16 length;
|
||||||
CARD32 window;
|
CARD32 context_len;
|
||||||
} SELinuxSetSecurityManagerReq;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
CARD8 reqType;
|
|
||||||
CARD8 SELinuxReqType;
|
|
||||||
CARD16 length;
|
|
||||||
} SELinuxGetSecurityManagerReq;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
CARD8 type;
|
|
||||||
CARD8 pad1;
|
|
||||||
CARD16 sequenceNumber;
|
|
||||||
CARD32 length;
|
|
||||||
CARD32 window;
|
|
||||||
CARD32 pad2;
|
|
||||||
CARD32 pad3;
|
|
||||||
CARD32 pad4;
|
|
||||||
CARD32 pad5;
|
|
||||||
CARD32 pad6;
|
|
||||||
} SELinuxGetSecurityManagerReply;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
CARD8 reqType;
|
|
||||||
CARD8 SELinuxReqType;
|
|
||||||
CARD16 length;
|
|
||||||
CARD8 permanent;
|
|
||||||
CARD8 unused;
|
|
||||||
CARD16 context_len;
|
|
||||||
} SELinuxSetCreateContextReq;
|
} SELinuxSetCreateContextReq;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
@ -111,27 +88,12 @@ typedef struct {
|
|||||||
CARD16 length;
|
CARD16 length;
|
||||||
} SELinuxGetCreateContextReq;
|
} SELinuxGetCreateContextReq;
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
CARD8 type;
|
|
||||||
CARD8 permanent;
|
|
||||||
CARD16 sequenceNumber;
|
|
||||||
CARD32 length;
|
|
||||||
CARD16 context_len;
|
|
||||||
CARD16 pad1;
|
|
||||||
CARD32 pad2;
|
|
||||||
CARD32 pad3;
|
|
||||||
CARD32 pad4;
|
|
||||||
CARD32 pad5;
|
|
||||||
CARD32 pad6;
|
|
||||||
} SELinuxGetCreateContextReply;
|
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
CARD8 reqType;
|
CARD8 reqType;
|
||||||
CARD8 SELinuxReqType;
|
CARD8 SELinuxReqType;
|
||||||
CARD16 length;
|
CARD16 length;
|
||||||
CARD32 id;
|
CARD32 id;
|
||||||
CARD16 unused;
|
CARD32 context_len;
|
||||||
CARD16 context_len;
|
|
||||||
} SELinuxSetContextReq;
|
} SELinuxSetContextReq;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
@ -154,15 +116,27 @@ typedef struct {
|
|||||||
CARD8 pad1;
|
CARD8 pad1;
|
||||||
CARD16 sequenceNumber;
|
CARD16 sequenceNumber;
|
||||||
CARD32 length;
|
CARD32 length;
|
||||||
CARD16 context_len;
|
CARD32 context_len;
|
||||||
CARD16 pad2;
|
CARD32 pad2;
|
||||||
CARD32 pad3;
|
CARD32 pad3;
|
||||||
CARD32 pad4;
|
CARD32 pad4;
|
||||||
CARD32 pad5;
|
CARD32 pad5;
|
||||||
CARD32 pad6;
|
CARD32 pad6;
|
||||||
CARD32 pad7;
|
|
||||||
} SELinuxGetContextReply;
|
} SELinuxGetContextReply;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
CARD8 type;
|
||||||
|
CARD8 pad1;
|
||||||
|
CARD16 sequenceNumber;
|
||||||
|
CARD32 length;
|
||||||
|
CARD32 count;
|
||||||
|
CARD32 pad2;
|
||||||
|
CARD32 pad3;
|
||||||
|
CARD32 pad4;
|
||||||
|
CARD32 pad5;
|
||||||
|
CARD32 pad6;
|
||||||
|
} SELinuxListItemsReply;
|
||||||
|
|
||||||
|
|
||||||
/* Private Flask definitions */
|
/* Private Flask definitions */
|
||||||
#define SECCLASS_X_DRAWABLE 1
|
#define SECCLASS_X_DRAWABLE 1
|
||||||
|
Loading…
Reference in New Issue
Block a user