xref: /OK3568_Linux_fs/external/xserver/include/dixaccess.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun /***********************************************************
2*4882a593Smuzhiyun 
3*4882a593Smuzhiyun THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
4*4882a593Smuzhiyun IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
5*4882a593Smuzhiyun FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
6*4882a593Smuzhiyun OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
7*4882a593Smuzhiyun AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
8*4882a593Smuzhiyun CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
9*4882a593Smuzhiyun 
10*4882a593Smuzhiyun ******************************************************************/
11*4882a593Smuzhiyun 
12*4882a593Smuzhiyun #ifndef DIX_ACCESS_H
13*4882a593Smuzhiyun #define DIX_ACCESS_H
14*4882a593Smuzhiyun 
15*4882a593Smuzhiyun /* These are the access modes that can be passed in the last parameter
16*4882a593Smuzhiyun  * to several of the dix lookup functions.  They were originally part
17*4882a593Smuzhiyun  * of the Security extension, now used by XACE.
18*4882a593Smuzhiyun  *
19*4882a593Smuzhiyun  * You can or these values together to indicate multiple modes
20*4882a593Smuzhiyun  * simultaneously.
21*4882a593Smuzhiyun  */
22*4882a593Smuzhiyun 
23*4882a593Smuzhiyun #define DixUnknownAccess	0       /* don't know intentions */
24*4882a593Smuzhiyun #define DixReadAccess		(1<<0)  /* inspecting the object */
25*4882a593Smuzhiyun #define DixWriteAccess		(1<<1)  /* changing the object */
26*4882a593Smuzhiyun #define DixDestroyAccess	(1<<2)  /* destroying the object */
27*4882a593Smuzhiyun #define DixCreateAccess		(1<<3)  /* creating the object */
28*4882a593Smuzhiyun #define DixGetAttrAccess	(1<<4)  /* get object attributes */
29*4882a593Smuzhiyun #define DixSetAttrAccess	(1<<5)  /* set object attributes */
30*4882a593Smuzhiyun #define DixListPropAccess	(1<<6)  /* list properties of object */
31*4882a593Smuzhiyun #define DixGetPropAccess	(1<<7)  /* get properties of object */
32*4882a593Smuzhiyun #define DixSetPropAccess	(1<<8)  /* set properties of object */
33*4882a593Smuzhiyun #define DixGetFocusAccess	(1<<9)  /* get focus of object */
34*4882a593Smuzhiyun #define DixSetFocusAccess	(1<<10) /* set focus of object */
35*4882a593Smuzhiyun #define DixListAccess		(1<<11) /* list objects */
36*4882a593Smuzhiyun #define DixAddAccess		(1<<12) /* add object */
37*4882a593Smuzhiyun #define DixRemoveAccess		(1<<13) /* remove object */
38*4882a593Smuzhiyun #define DixHideAccess		(1<<14) /* hide object */
39*4882a593Smuzhiyun #define DixShowAccess		(1<<15) /* show object */
40*4882a593Smuzhiyun #define DixBlendAccess		(1<<16) /* mix contents of objects */
41*4882a593Smuzhiyun #define DixGrabAccess		(1<<17) /* exclusive access to object */
42*4882a593Smuzhiyun #define DixFreezeAccess		(1<<18) /* freeze status of object */
43*4882a593Smuzhiyun #define DixForceAccess		(1<<19) /* force status of object */
44*4882a593Smuzhiyun #define DixInstallAccess	(1<<20) /* install object */
45*4882a593Smuzhiyun #define DixUninstallAccess	(1<<21) /* uninstall object */
46*4882a593Smuzhiyun #define DixSendAccess		(1<<22) /* send to object */
47*4882a593Smuzhiyun #define DixReceiveAccess	(1<<23) /* receive from object */
48*4882a593Smuzhiyun #define DixUseAccess		(1<<24) /* use object */
49*4882a593Smuzhiyun #define DixManageAccess		(1<<25) /* manage object */
50*4882a593Smuzhiyun #define DixDebugAccess		(1<<26) /* debug object */
51*4882a593Smuzhiyun #define DixBellAccess		(1<<27) /* audible sound */
52*4882a593Smuzhiyun #define DixPostAccess		(1<<28) /* post or follow-up call */
53*4882a593Smuzhiyun 
54*4882a593Smuzhiyun #endif                          /* DIX_ACCESS_H */
55