~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/include/uapi/linux/ipc.h

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /include/uapi/linux/ipc.h (Version linux-6.12-rc7) and /include/uapi/linux/ipc.h (Version linux-6.7.12)


  1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux      1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
  2 #ifndef _UAPI_LINUX_IPC_H                           2 #ifndef _UAPI_LINUX_IPC_H
  3 #define _UAPI_LINUX_IPC_H                           3 #define _UAPI_LINUX_IPC_H
  4                                                     4 
  5 #include <linux/types.h>                            5 #include <linux/types.h>
  6                                                     6 
  7 #define IPC_PRIVATE ((__kernel_key_t) 0)            7 #define IPC_PRIVATE ((__kernel_key_t) 0)  
  8                                                     8 
  9 /* Obsolete, used only for backwards compatibi      9 /* Obsolete, used only for backwards compatibility and libc5 compiles */
 10 struct ipc_perm                                    10 struct ipc_perm
 11 {                                                  11 {
 12         __kernel_key_t  key;                       12         __kernel_key_t  key;
 13         __kernel_uid_t  uid;                       13         __kernel_uid_t  uid;
 14         __kernel_gid_t  gid;                       14         __kernel_gid_t  gid;
 15         __kernel_uid_t  cuid;                      15         __kernel_uid_t  cuid;
 16         __kernel_gid_t  cgid;                      16         __kernel_gid_t  cgid;
 17         __kernel_mode_t mode;                      17         __kernel_mode_t mode; 
 18         unsigned short  seq;                       18         unsigned short  seq;
 19 };                                                 19 };
 20                                                    20 
 21 /* Include the definition of ipc64_perm */         21 /* Include the definition of ipc64_perm */
 22 #include <asm/ipcbuf.h>                            22 #include <asm/ipcbuf.h>
 23                                                    23 
 24 /* resource get request flags */                   24 /* resource get request flags */
 25 #define IPC_CREAT  00001000   /* create if key     25 #define IPC_CREAT  00001000   /* create if key is nonexistent */
 26 #define IPC_EXCL   00002000   /* fail if key e     26 #define IPC_EXCL   00002000   /* fail if key exists */
 27 #define IPC_NOWAIT 00004000   /* return error      27 #define IPC_NOWAIT 00004000   /* return error on wait */
 28                                                    28 
 29 /* these fields are used by the DIPC package s     29 /* these fields are used by the DIPC package so the kernel as standard
 30    should avoid using them if possible */          30    should avoid using them if possible */
 31                                                    31    
 32 #define IPC_DIPC 00010000  /* make it distribu     32 #define IPC_DIPC 00010000  /* make it distributed */
 33 #define IPC_OWN  00020000  /* this machine is      33 #define IPC_OWN  00020000  /* this machine is the DIPC owner */
 34                                                    34 
 35 /*                                                 35 /* 
 36  * Control commands used with semctl, msgctl a     36  * Control commands used with semctl, msgctl and shmctl 
 37  * see also specific commands in sem.h, msg.h      37  * see also specific commands in sem.h, msg.h and shm.h
 38  */                                                38  */
 39 #define IPC_RMID 0     /* remove resource */       39 #define IPC_RMID 0     /* remove resource */
 40 #define IPC_SET  1     /* set ipc_perm options     40 #define IPC_SET  1     /* set ipc_perm options */
 41 #define IPC_STAT 2     /* get ipc_perm options     41 #define IPC_STAT 2     /* get ipc_perm options */
 42 #define IPC_INFO 3     /* see ipcs */              42 #define IPC_INFO 3     /* see ipcs */
 43                                                    43 
 44 /*                                                 44 /*
 45  * Version flags for semctl, msgctl, and shmct     45  * Version flags for semctl, msgctl, and shmctl commands
 46  * These are passed as bitflags or-ed with the     46  * These are passed as bitflags or-ed with the actual command
 47  */                                                47  */
 48 #define IPC_OLD 0       /* Old version (no 32-     48 #define IPC_OLD 0       /* Old version (no 32-bit UID support on many
 49                            architectures) */       49                            architectures) */
 50 #define IPC_64  0x0100  /* New version (suppor     50 #define IPC_64  0x0100  /* New version (support 32-bit UIDs, bigger
 51                            message sizes, etc.     51                            message sizes, etc. */
 52                                                    52 
 53 /*                                                 53 /*
 54  * These are used to wrap system calls.            54  * These are used to wrap system calls.
 55  *                                                 55  *
 56  * See architecture code for ugly details..        56  * See architecture code for ugly details..
 57  */                                                57  */
 58 struct ipc_kludge {                                58 struct ipc_kludge {
 59         struct msgbuf __user *msgp;                59         struct msgbuf __user *msgp;
 60         long msgtyp;                               60         long msgtyp;
 61 };                                                 61 };
 62                                                    62 
 63 #define SEMOP            1                         63 #define SEMOP            1
 64 #define SEMGET           2                         64 #define SEMGET           2
 65 #define SEMCTL           3                         65 #define SEMCTL           3
 66 #define SEMTIMEDOP       4                         66 #define SEMTIMEDOP       4
 67 #define MSGSND          11                         67 #define MSGSND          11
 68 #define MSGRCV          12                         68 #define MSGRCV          12
 69 #define MSGGET          13                         69 #define MSGGET          13
 70 #define MSGCTL          14                         70 #define MSGCTL          14
 71 #define SHMAT           21                         71 #define SHMAT           21
 72 #define SHMDT           22                         72 #define SHMDT           22
 73 #define SHMGET          23                         73 #define SHMGET          23
 74 #define SHMCTL          24                         74 #define SHMCTL          24
 75                                                    75 
 76 /* Used by the DIPC package, try and avoid reu     76 /* Used by the DIPC package, try and avoid reusing it */
 77 #define DIPC            25                         77 #define DIPC            25
 78                                                    78 
 79 #define IPCCALL(version,op)     ((version)<<16     79 #define IPCCALL(version,op)     ((version)<<16 | (op))
 80                                                    80 
 81                                                    81 
 82 #endif /* _UAPI_LINUX_IPC_H */                     82 #endif /* _UAPI_LINUX_IPC_H */
 83                                                    83 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php