Home | History | Annotate | Download | only in asm-generic
      1 #ifndef __ASM_GENERIC_IPCBUF_H
      2 #define __ASM_GENERIC_IPCBUF_H
      3 
      4 /*
      5  * The generic ipc64_perm structure:
      6  * Note extra padding because this structure is passed back and forth
      7  * between kernel and user space.
      8  *
      9  * ipc64_perm was originally meant to be architecture specific, but
     10  * everyone just ended up making identical copies without specific
     11  * optimizations, so we may just as well all use the same one.
     12  *
     13  * Pad space is left for:
     14  * - 32-bit mode_t on architectures that only had 16 bit
     15  * - 32-bit seq
     16  * - 2 miscellaneous 32-bit values
     17  */
     18 
     19 struct ipc64_perm {
     20 	__kernel_key_t		key;
     21 	__kernel_uid32_t	uid;
     22 	__kernel_gid32_t	gid;
     23 	__kernel_uid32_t	cuid;
     24 	__kernel_gid32_t	cgid;
     25 	__kernel_mode_t		mode;
     26 				/* pad if mode_t is u16: */
     27 	unsigned char		__pad1[4 - sizeof(__kernel_mode_t)];
     28 	unsigned short		seq;
     29 	unsigned short		__pad2;
     30 	unsigned long		__unused1;
     31 	unsigned long		__unused2;
     32 };
     33 
     34 #endif /* __ASM_GENERIC_IPCBUF_H */
     35