about summary refs log tree commit diff
path: root/sysdeps/gnu/bits/ipc.h
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2023-05-01 14:40:12 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2023-05-01 15:05:09 +0200
commite3a3616dbf620fa9f260a4c1a779efbb15b4a506 (patch)
treec9c1ac3316eedbf765df9414b4e1398f3fbe600c /sysdeps/gnu/bits/ipc.h
parentd5e2f9eaf7384ebf8f09831eb9fa15dad2ecf2c3 (diff)
downloadglibc-e3a3616dbf620fa9f260a4c1a779efbb15b4a506.tar.gz
glibc-e3a3616dbf620fa9f260a4c1a779efbb15b4a506.tar.xz
glibc-e3a3616dbf620fa9f260a4c1a779efbb15b4a506.zip
hurd 64bit: Fix ipc_perm fields types
The standards want uid/cuid to be uid_t, gid/cgid to be gid_t and mode to be
mode_t, see BZ 23082.

We can leave them short ints on i386 for ABI compatibility, but avoid
hitting the issue on 64bit.

bits/ipc.h ends up being exactly the same in sysdeps/gnu/ and
sysdeps/unix/sysv/linux/, so remove the latter.
Diffstat (limited to 'sysdeps/gnu/bits/ipc.h')
-rw-r--r--sysdeps/gnu/bits/ipc.h13
1 files changed, 1 insertions, 12 deletions
diff --git a/sysdeps/gnu/bits/ipc.h b/sysdeps/gnu/bits/ipc.h
index e41c11c3de..b62beb1323 100644
--- a/sysdeps/gnu/bits/ipc.h
+++ b/sysdeps/gnu/bits/ipc.h
@@ -37,15 +37,4 @@
 /* Special key values.  */
 #define IPC_PRIVATE	((__key_t) 0)	/* Private key.  */
 
-
-/* Data structure used to pass permission information to IPC operations.  */
-struct ipc_perm
-  {
-    __key_t __key;			/* Key.  */
-    unsigned short int uid;		/* Owner's user ID.  */
-    unsigned short int gid;		/* Owner's group ID.  */
-    unsigned short int cuid;		/* Creator's user ID.  */
-    unsigned short int cgid;		/* Creator's group ID.  */
-    unsigned short int mode;		/* Read/write permission.  */
-    unsigned short int __seq;		/* Sequence number.  */
-  };
+#include <bits/ipc-perm.h>