diff options
author | Ulrich Drepper <drepper@redhat.com> | 2000-02-25 09:00:58 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2000-02-25 09:00:58 +0000 |
commit | bba09d234b3cfaa311809278c4252fc906f06de2 (patch) | |
tree | 2a372fc7594a100e4be8a6482112aeefd5fa5aca /sysdeps | |
parent | 8934380c5b577346635773210336414d80c5d4ba (diff) | |
download | glibc-bba09d234b3cfaa311809278c4252fc906f06de2.tar glibc-bba09d234b3cfaa311809278c4252fc906f06de2.tar.gz glibc-bba09d234b3cfaa311809278c4252fc906f06de2.tar.bz2 glibc-bba09d234b3cfaa311809278c4252fc906f06de2.zip |
Update.
2000-02-25 Ulrich Drepper <drepper@redhat.com>
* conform/conformtest.pl (@headers): Add "sys/msg.h", "sys/mman.h",
"sys/ipc.h", "syslog.h", and "stropts.h".
Handle / in header names correctly.
* conform/data/stropts.h-data: New file.
* conform/data/syslog.h-data: New file.
* conform/data/sys/ipc.h-data: New file.
* conform/data/sys/mman.h-data: New file.
* conform/data/sys/msg.h-data: New file.
* misc/sys/mman.h: Define off_t and mode_t if not already done.
* streams/stropts.h: Define gid_t and uid_t if not already done.
* sysdeps/gnu/bits/ipc.h (IPC_INFO): Only define if __USE_GNU.
* sysdeps/unix/sysv/linux/alpha/bits/ipc.h: Likewise.
* sysdeps/unix/sysv/linux/bits/ipc.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/ipc.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/ipc.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/ipc.h: Likewise.
* sysvipc/sys/msg.h: Don't include sys/types.h.
Define time_t, pid_t, and ssize_t if not already done.
(struct msgbuf): Define only if __USE_GNU.
* sysdeps/generic/bits/msq.h: Include bits/types.h, not sys/types.h.
(MSG_EXCEPT): Only define if __USE_GNU.
Define msgqnum_t and msglen_t and use them in struct msqid_ds
definition.
* sysdeps/gnu/bits/msq.h: Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/msq.h: Likewise.
* sysdeps/unix/sysv/linux/bits/msq.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/msq.h: Likewise.
* sysdeps/generic/bits/stropts.h (I_GWROPT): Renamed from I_GWRSET.
(FLUSHBAND): Only define is __USE_GNU.
(RPROTMASK): Likewise.
(SNDPIPE): Likewise.
(MUXID_ALL): Likewise.
(struct strrecvfd): Rename fill to __fill.
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/generic/bits/msq.h | 12 | ||||
-rw-r--r-- | sysdeps/generic/bits/stropts.h | 30 | ||||
-rw-r--r-- | sysdeps/gnu/bits/ipc.h | 6 | ||||
-rw-r--r-- | sysdeps/gnu/bits/msq.h | 16 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/alpha/bits/ipc.h | 4 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/alpha/bits/msq.h | 14 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/bits/ipc.h | 4 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/bits/msq.h | 14 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/mips/bits/ipc.h | 28 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/powerpc/bits/ipc.h | 30 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/sparc/bits/ipc.h | 6 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/sparc/bits/msq.h | 14 |
12 files changed, 115 insertions, 63 deletions
diff --git a/sysdeps/generic/bits/msq.h b/sysdeps/generic/bits/msq.h index a263869a0e..131fc48521 100644 --- a/sysdeps/generic/bits/msq.h +++ b/sysdeps/generic/bits/msq.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995, 1997 Free Software Foundation, Inc. +/* Copyright (C) 1995, 1997, 2000 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -20,11 +20,15 @@ #error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." #endif -#include <sys/types.h> +#include <bits/types.h> /* Define options for message queue functions. */ #define MSG_NOERROR 010000 /* no error if message is too big */ +/* Types used in the structure definition. */ +typedef unsigned short int msgqnum_t; +typedef unsigned short int msglen_t; + /* Structure of record for one message inside the kernel. The type `struct __msg' is opaque. */ @@ -34,8 +38,8 @@ struct msqid_ds __time_t msg_stime; /* time of last msgsnd command */ __time_t msg_rtime; /* time of last msgrcv command */ __time_t msg_ctime; /* time of last change */ - unsigned short int msg_qnum; /* number of messages currently on queue */ - unsigned short int msg_qbytes;/* max number of bytes allowed on queue */ + msgqnum_t msg_qnum; /* number of messages currently on queue */ + msglen_t msg_qbytes; /* max number of bytes allowed on queue */ __pid_t msg_lspid; /* pid of last msgsnd() */ __pid_t msg_lrpid; /* pid of last msgrcv() */ }; diff --git a/sysdeps/generic/bits/stropts.h b/sysdeps/generic/bits/stropts.h index ed807473c2..62acfac34e 100644 --- a/sysdeps/generic/bits/stropts.h +++ b/sysdeps/generic/bits/stropts.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1998, 1999 Free Software Foundation, Inc. +/* Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -61,7 +61,7 @@ of a STREAMS pipe. */ #define I_RECVFD (__SID |14) /* Non-EFT definition. */ #define I_SWROPT (__SID |19) /* Set the write mode. */ -#define I_GWRSET (__SID |20) /* Return the current write mode setting. */ +#define I_GWROPT (__SID |20) /* Return the current write mode setting. */ #define I_LIST (__SID |21) /* List all the module names on the STREAM, up to and including the topmost driver name. */ #define I_PLINK (__SID |22) /* Connect two STREAMs with a persistent @@ -91,7 +91,9 @@ #define FLUSHR 0x01 /* Flush read queues. */ #define FLUSHW 0x02 /* Flush write queues. */ #define FLUSHRW 0x03 /* Flush read and write queues. */ -#define FLUSHBAND 0x04 /* Flush only specified band. */ +#ifdef __USE_GNU +# define FLUSHBAND 0x04 /* Flush only specified band. */ +#endif /* Possible arguments for `I_SETSIG'. */ #define S_INPUT 0x0001 /* A message, other than a high-priority @@ -129,13 +131,17 @@ #define RPROTNORM 0x0010 /* Fail `read' with EBADMSG if a message containing a control part is at the front of the STREAM head read queue. */ -#define RPROTMASK 0x001C /* The RPROT bits */ +#ifdef __USE_GNU +# define RPROTMASK 0x001C /* The RPROT bits */ +#endif /* Possible mode for `I_SWROPT'. */ #define SNDZERO 0x001 /* Send a zero-length message downstream when a `write' of 0 bytes occurs. */ -#define SNDPIPE 0x002 /* Send SIGPIPE on write and putmsg if +#ifdef __USE_GNU +# define SNDPIPE 0x002 /* Send SIGPIPE on write and putmsg if sd_werror is set. */ +#endif /* Arguments for `I_ATMARK'. */ #define ANYMARK 0x01 /* Check if the message is marked. */ @@ -143,8 +149,10 @@ on the queue. */ /* Argument for `I_UNLINK'. */ -#define MUXID_ALL (-1) /* Unlink all STREAMs linked to the STREAM +#ifdef __USE_GNU +# define MUXID_ALL (-1) /* Unlink all STREAMs linked to the STREAM associated with `fildes'. */ +#endif /* Macros for `getmsg', `getpmsg', `putmsg' and `putpmsg'. */ @@ -176,14 +184,14 @@ struct strpeek { struct strbuf ctlbuf; struct strbuf databuf; - __t_uscalar_t flags; /* UnixWare/Solaris compatibility. */ + t_uscalar_t flags; /* UnixWare/Solaris compatibility. */ }; struct strfdinsert { struct strbuf ctlbuf; struct strbuf databuf; - __t_uscalar_t flags; /* UnixWare/Solaris compatibility. */ + t_uscalar_t flags; /* UnixWare/Solaris compatibility. */ int fildes; int offset; }; @@ -199,9 +207,9 @@ struct strioctl struct strrecvfd { int fd; - __uid_t uid; - __gid_t gid; - char fill[8]; /* UnixWare/Solaris compatibility */ + uid_t uid; + gid_t gid; + char __fill[8]; /* UnixWare/Solaris compatibility */ }; diff --git a/sysdeps/gnu/bits/ipc.h b/sysdeps/gnu/bits/ipc.h index eb9bcff6a4..ec0dbd86c4 100644 --- a/sysdeps/gnu/bits/ipc.h +++ b/sysdeps/gnu/bits/ipc.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995, 1996, 1997, 1998, 1999 Free Software Foundation, Inc. +/* Copyright (C) 1995-1999, 2000 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -31,7 +31,9 @@ #define IPC_RMID 0 /* Remove identifier. */ #define IPC_SET 1 /* Set `ipc_perm' options. */ #define IPC_STAT 2 /* Get `ipc_perm' options. */ -#define IPC_INFO 3 /* See ipcs. */ +#ifdef __USE_GNU +# define IPC_INFO 3 /* See ipcs. */ +#endif /* Special key values. */ #define IPC_PRIVATE ((__key_t) 0) /* Private key. */ diff --git a/sysdeps/gnu/bits/msq.h b/sysdeps/gnu/bits/msq.h index d7a8e5ee0f..874c369d65 100644 --- a/sysdeps/gnu/bits/msq.h +++ b/sysdeps/gnu/bits/msq.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. +/* Copyright (C) 1995, 1996, 1997, 2000 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -20,11 +20,17 @@ # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." #endif -#include <sys/types.h> +#include <bits/types.h> /* Define options for message queue functions. */ #define MSG_NOERROR 010000 /* no error if message is too big */ -#define MSG_EXCEPT 020000 /* recv any msg except of specified type */ +#ifdef __USE_GNU +# define MSG_EXCEPT 020000 /* recv any msg except of specified type */ +#endif + +/* Types used in the structure definition. */ +typedef unsigned short int msgqnum_t; +typedef unsigned short int msglen_t; /* Structure of record for one message inside the kernel. @@ -40,8 +46,8 @@ struct msqid_ds struct wait_queue *__wwait; /* ??? */ struct wait_queue *__rwait; /* ??? */ unsigned short int __msg_cbytes;/* current number of bytes on queue */ - unsigned short int msg_qnum; /* number of messages currently on queue */ - unsigned short int msg_qbytes;/* max number of bytes allowed on queue */ + msgqnum_t msg_qnum; /* number of messages currently on queue */ + msglen_t msg_qbytes; /* max number of bytes allowed on queue */ __ipc_pid_t msg_lspid; /* pid of last msgsnd() */ __ipc_pid_t msg_lrpid; /* pid of last msgrcv() */ }; diff --git a/sysdeps/unix/sysv/linux/alpha/bits/ipc.h b/sysdeps/unix/sysv/linux/alpha/bits/ipc.h index 7ad2c7c8e0..004a683112 100644 --- a/sysdeps/unix/sysv/linux/alpha/bits/ipc.h +++ b/sysdeps/unix/sysv/linux/alpha/bits/ipc.h @@ -31,7 +31,9 @@ #define IPC_RMID 0 /* Remove identifier. */ #define IPC_SET 1 /* Set `ipc_perm' options. */ #define IPC_STAT 2 /* Get `ipc_perm' options. */ -#define IPC_INFO 3 /* See ipcs. */ +#ifdef __USE_GNU +# define IPC_INFO 3 /* See ipcs. */ +#endif /* Special key values. */ #define IPC_PRIVATE ((__key_t) 0) /* Private key. */ diff --git a/sysdeps/unix/sysv/linux/alpha/bits/msq.h b/sysdeps/unix/sysv/linux/alpha/bits/msq.h index 3e784d9544..3ca076e9f9 100644 --- a/sysdeps/unix/sysv/linux/alpha/bits/msq.h +++ b/sysdeps/unix/sysv/linux/alpha/bits/msq.h @@ -20,11 +20,17 @@ # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." #endif -#include <sys/types.h> +#include <bits/types.h> /* Define options for message queue functions. */ #define MSG_NOERROR 010000 /* no error if message is too big */ -#define MSG_EXCEPT 020000 /* recv any msg except of specified type */ +#ifdef __USE_GNU +# define MSG_EXCEPT 020000 /* recv any msg except of specified type */ +#endif + +/* Types used in the structure definition. */ +typedef unsigned long int msgqnum_t; +typedef unsigned long int msglen_t; /* Structure of record for one message inside the kernel. @@ -36,8 +42,8 @@ struct msqid_ds __time_t msg_rtime; /* time of last msgrcv command */ __time_t msg_ctime; /* time of last change */ unsigned long int __msg_cbytes; /* current number of bytes on queue */ - unsigned long int msg_qnum; /* number of messages currently on queue */ - unsigned long int msg_qbytes; /* max number of bytes allowed on queue */ + msgqnum_t msg_qnum; /* number of messages currently on queue */ + msglen_t msg_qbytes; /* max number of bytes allowed on queue */ pid_t msg_lspid; /* pid of last msgsnd() */ pid_t msg_lrpid; /* pid of last msgrcv() */ unsigned long int __unused1; diff --git a/sysdeps/unix/sysv/linux/bits/ipc.h b/sysdeps/unix/sysv/linux/bits/ipc.h index 2375e4b6d4..dab0792805 100644 --- a/sysdeps/unix/sysv/linux/bits/ipc.h +++ b/sysdeps/unix/sysv/linux/bits/ipc.h @@ -31,7 +31,9 @@ #define IPC_RMID 0 /* Remove identifier. */ #define IPC_SET 1 /* Set `ipc_perm' options. */ #define IPC_STAT 2 /* Get `ipc_perm' options. */ -#define IPC_INFO 3 /* See ipcs. */ +#ifdef __USE_GNU +# define IPC_INFO 3 /* See ipcs. */ +#endif /* Special key values. */ #define IPC_PRIVATE ((__key_t) 0) /* Private key. */ diff --git a/sysdeps/unix/sysv/linux/bits/msq.h b/sysdeps/unix/sysv/linux/bits/msq.h index c5c375a4ab..840ddd6a8f 100644 --- a/sysdeps/unix/sysv/linux/bits/msq.h +++ b/sysdeps/unix/sysv/linux/bits/msq.h @@ -20,11 +20,17 @@ # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." #endif -#include <sys/types.h> +#include <bits/types.h> /* Define options for message queue functions. */ #define MSG_NOERROR 010000 /* no error if message is too big */ -#define MSG_EXCEPT 020000 /* recv any msg except of specified type */ +#ifdef __USE_GNU +# define MSG_EXCEPT 020000 /* recv any msg except of specified type */ +#endif + +/* Types used in the structure definition. */ +typedef unsigned long int msgqnum_t; +typedef unsigned long int msglen_t; /* Structure of record for one message inside the kernel. @@ -39,8 +45,8 @@ struct msqid_ds __time_t msg_ctime; /* time of last change */ unsigned long int __unused3; unsigned long int __msg_cbytes; /* current number of bytes on queue */ - unsigned long int msg_qnum; /* number of messages currently on queue */ - unsigned long int msg_qbytes; /* max number of bytes allowed on queue */ + msgqnum_t msg_qnum; /* number of messages currently on queue */ + msglen_t msg_qbytes; /* max number of bytes allowed on queue */ pid_t msg_lspid; /* pid of last msgsnd() */ pid_t msg_lrpid; /* pid of last msgrcv() */ unsigned long int __unused4; diff --git a/sysdeps/unix/sysv/linux/mips/bits/ipc.h b/sysdeps/unix/sysv/linux/mips/bits/ipc.h index 3c2e5276b8..8364dca56e 100644 --- a/sysdeps/unix/sysv/linux/mips/bits/ipc.h +++ b/sysdeps/unix/sysv/linux/mips/bits/ipc.h @@ -31,7 +31,9 @@ #define IPC_RMID 0 /* Remove identifier. */ #define IPC_SET 1 /* Set `ipc_perm' options. */ #define IPC_STAT 2 /* Get `ipc_perm' options. */ -#define IPC_INFO 3 /* See ipcs. */ +#ifdef __USE_GNU +# define IPC_INFO 3 /* See ipcs. */ +#endif /* Special key values. */ #define IPC_PRIVATE ((__key_t) 0) /* Private key. */ @@ -58,15 +60,17 @@ extern int __ipc (int __call, int __first, int __second, int __third, __END_DECLS +#ifdef __USE_GNU /* The codes for the functions to use the multiplexer `__ipc'. */ -#define IPCOP_semop 1 -#define IPCOP_semget 2 -#define IPCOP_semctl 3 -#define IPCOP_msgsnd 11 -#define IPCOP_msgrcv 12 -#define IPCOP_msgget 13 -#define IPCOP_msgctl 14 -#define IPCOP_shmat 21 -#define IPCOP_shmdt 22 -#define IPCOP_shmget 23 -#define IPCOP_shmctl 24 +# define IPCOP_semop 1 +# define IPCOP_semget 2 +# define IPCOP_semctl 3 +# define IPCOP_msgsnd 11 +# define IPCOP_msgrcv 12 +# define IPCOP_msgget 13 +# define IPCOP_msgctl 14 +# define IPCOP_shmat 21 +# define IPCOP_shmdt 22 +# define IPCOP_shmget 23 +# define IPCOP_shmctl 24 +#endif diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/ipc.h b/sysdeps/unix/sysv/linux/powerpc/bits/ipc.h index 58f6d99488..fa96134553 100644 --- a/sysdeps/unix/sysv/linux/powerpc/bits/ipc.h +++ b/sysdeps/unix/sysv/linux/powerpc/bits/ipc.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1995, 1996, 1997, 1998, 1999 Free Software Foundation, Inc. +/* Copyright (C) 1995-1999, 2000 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -31,7 +31,9 @@ #define IPC_RMID 0 /* Remove identifier. */ #define IPC_SET 1 /* Set `ipc_perm' options. */ #define IPC_STAT 2 /* Get `ipc_perm' options. */ -#define IPC_INFO 3 /* See ipcs. */ +#ifdef __USE_GNU +# define IPC_INFO 3 /* See ipcs. */ +#endif /* Special key values. */ #define IPC_PRIVATE ((__key_t) 0) /* Private key. */ @@ -58,15 +60,17 @@ extern int __ipc __P ((int __call, int __first, int __second, int __third, __END_DECLS +#ifdef __USE_GNU /* The codes for the functions to use the multiplexer `__ipc'. */ -#define IPCOP_semop 1 -#define IPCOP_semget 2 -#define IPCOP_semctl 3 -#define IPCOP_msgsnd 11 -#define IPCOP_msgrcv 12 -#define IPCOP_msgget 13 -#define IPCOP_msgctl 14 -#define IPCOP_shmat 21 -#define IPCOP_shmdt 22 -#define IPCOP_shmget 23 -#define IPCOP_shmctl 24 +# define IPCOP_semop 1 +# define IPCOP_semget 2 +# define IPCOP_semctl 3 +# define IPCOP_msgsnd 11 +# define IPCOP_msgrcv 12 +# define IPCOP_msgget 13 +# define IPCOP_msgctl 14 +# define IPCOP_shmat 21 +# define IPCOP_shmdt 22 +# define IPCOP_shmget 23 +# define IPCOP_shmctl 24 +#endif diff --git a/sysdeps/unix/sysv/linux/sparc/bits/ipc.h b/sysdeps/unix/sysv/linux/sparc/bits/ipc.h index 7ba6d6753f..e5dcd3dda1 100644 --- a/sysdeps/unix/sysv/linux/sparc/bits/ipc.h +++ b/sysdeps/unix/sysv/linux/sparc/bits/ipc.h @@ -32,7 +32,9 @@ #define IPC_RMID 0 /* Remove identifier. */ #define IPC_SET 1 /* Set `ipc_perm' options. */ #define IPC_STAT 2 /* Get `ipc_perm' options. */ -#define IPC_INFO 3 /* See ipcs. */ +#ifdef __USE_GNU +# define IPC_INFO 3 /* See ipcs. */ +#endif /* Special key values. */ #define IPC_PRIVATE ((__key_t) 0) /* Private key. */ @@ -51,7 +53,7 @@ struct ipc_perm unsigned short int mode; /* Read/write permission. */ unsigned short int __pad2; #else - unsigned int mode; /* Read/write permission. */ + __mode_t mode; /* Read/write permission. */ unsigned short int __pad1; #endif unsigned short int __seq; /* Sequence number. */ diff --git a/sysdeps/unix/sysv/linux/sparc/bits/msq.h b/sysdeps/unix/sysv/linux/sparc/bits/msq.h index 6bc88ae25f..6b32ef94c4 100644 --- a/sysdeps/unix/sysv/linux/sparc/bits/msq.h +++ b/sysdeps/unix/sysv/linux/sparc/bits/msq.h @@ -20,12 +20,18 @@ # error "Never use <bits/msq.h> directly; include <sys/msg.h> instead." #endif -#include <sys/types.h> +#include <bits/types.h> #include <bits/wordsize.h> /* Define options for message queue functions. */ #define MSG_NOERROR 010000 /* no error if message is too big */ -#define MSG_EXCEPT 020000 /* recv any msg except of specified type */ +#ifdef __USE_GNU +# define MSG_EXCEPT 020000 /* recv any msg except of specified type */ +#endif + +/* Types used in the structure definition. */ +typedef unsigned long int msgqnum_t; +typedef unsigned long int msglen_t; /* Structure of record for one message inside the kernel. @@ -46,8 +52,8 @@ struct msqid_ds #endif __time_t msg_ctime; /* time of last change */ unsigned long int __msg_cbytes; /* current number of bytes on queue */ - unsigned long int msg_qnum; /* number of messages currently on queue */ - unsigned long int msg_qbytes; /* max number of bytes allowed on queue */ + msgqnum_t msg_qnum; /* number of messages currently on queue */ + msglen_t msg_qbytes; /* max number of bytes allowed on queue */ pid_t msg_lspid; /* pid of last msgsnd() */ pid_t msg_lrpid; /* pid of last msgrcv() */ unsigned long int __unused1; |