linux-headers (unknown)

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