diff options
author | Florian Weimer <fweimer@redhat.com> | 2019-03-14 15:44:14 +0100 |
---|---|---|
committer | Florian Weimer <fweimer@redhat.com> | 2019-03-14 15:44:15 +0100 |
commit | a0a0dc83173ce11ff45105fd32e5d14356cdfb9c (patch) | |
tree | 8487bfd04a8a2975c062be571379e02b994f2aa2 /streams | |
parent | 081bdf942126b7d4a368d09438a06fd831c14dad (diff) | |
download | glibc-a0a0dc83173ce11ff45105fd32e5d14356cdfb9c.zip glibc-a0a0dc83173ce11ff45105fd32e5d14356cdfb9c.tar.gz glibc-a0a0dc83173ce11ff45105fd32e5d14356cdfb9c.tar.bz2 |
Remove obsolete, never-implemented XSI STREAMS declarations
The stub implementations are turned into compat symbols.
Linux actually has two reserved system call numbers (for getpmsg
and putpmsg), but these system calls have never been implemented,
and there are no plans to implement them, so this patch replaces
the wrappers with the generic stubs.
According to <https://bugzilla.redhat.com/show_bug.cgi?id=436349>,
the presence of the XSI STREAMS declarations is a minor portability
hazard because they are not actually implemented.
This commit does not change the TIRPC support code in
sunrpc/rpc_svcout.c. It uses additional XTI functionality and
therefore never worked with glibc.
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Diffstat (limited to 'streams')
-rw-r--r-- | streams/Makefile | 28 | ||||
-rw-r--r-- | streams/Versions | 15 | ||||
-rw-r--r-- | streams/fattach.c | 29 | ||||
-rw-r--r-- | streams/fdetach.c | 29 | ||||
-rw-r--r-- | streams/getmsg.c | 29 | ||||
-rw-r--r-- | streams/getpmsg.c | 30 | ||||
-rw-r--r-- | streams/isastream.c | 33 | ||||
-rw-r--r-- | streams/putmsg.c | 30 | ||||
-rw-r--r-- | streams/putpmsg.c | 30 | ||||
-rw-r--r-- | streams/stropts.h | 92 | ||||
-rw-r--r-- | streams/sys/stropts.h | 1 |
11 files changed, 0 insertions, 346 deletions
diff --git a/streams/Makefile b/streams/Makefile deleted file mode 100644 index 916147f..0000000 --- a/streams/Makefile +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright (C) 1998-2019 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 -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. - -# The GNU C Library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. - -# You should have received a copy of the GNU Lesser General Public -# License along with the GNU C Library; if not, see -# <http://www.gnu.org/licenses/>. - -# -# Makefile for streams. -# -subdir := streams - -include ../Makeconfig - -headers = stropts.h sys/stropts.h bits/stropts.h bits/xtitypes.h -routines = isastream getmsg getpmsg putmsg putpmsg fattach fdetach - -include ../Rules diff --git a/streams/Versions b/streams/Versions deleted file mode 100644 index 9a6f4d7..0000000 --- a/streams/Versions +++ /dev/null @@ -1,15 +0,0 @@ -libc { - GLIBC_2.1 { - # f* - fattach; fdetach; - - # g* - getmsg; getpmsg; - - # i* - isastream; - - # p* - putmsg; putpmsg; - } -} diff --git a/streams/fattach.c b/streams/fattach.c deleted file mode 100644 index 8ab9046..0000000 --- a/streams/fattach.c +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright (C) 1998-2019 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 - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <errno.h> -#include <stropts.h> - -int -fattach (int fildes, const char *path) -{ - __set_errno (ENOSYS); - return -1; -} - - -stub_warning (fattach) diff --git a/streams/fdetach.c b/streams/fdetach.c deleted file mode 100644 index 2016b66..0000000 --- a/streams/fdetach.c +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright (C) 1998-2019 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 - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <errno.h> -#include <stropts.h> - -int -fdetach (const char *path) -{ - __set_errno (ENOSYS); - return -1; -} - - -stub_warning (fdetach) diff --git a/streams/getmsg.c b/streams/getmsg.c deleted file mode 100644 index 93bc0dd..0000000 --- a/streams/getmsg.c +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright (C) 1998-2019 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 - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <errno.h> -#include <stropts.h> - -int -getmsg (int fildes, struct strbuf *ctlptr, struct strbuf *dataptr, int *flagsp) -{ - __set_errno (ENOSYS); - return -1; -} - - -stub_warning (getmsg) diff --git a/streams/getpmsg.c b/streams/getpmsg.c deleted file mode 100644 index b3912d3..0000000 --- a/streams/getpmsg.c +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright (C) 1998-2019 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 - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <errno.h> -#include <stropts.h> - -int -getpmsg (int fildes, struct strbuf *ctlptr, struct strbuf *dataptr, int *bandp, - int *flagsp) -{ - __set_errno (ENOSYS); - return -1; -} - - -stub_warning (getpmsg) diff --git a/streams/isastream.c b/streams/isastream.c deleted file mode 100644 index 328b355..0000000 --- a/streams/isastream.c +++ /dev/null @@ -1,33 +0,0 @@ -/* Copyright (C) 1998-2019 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 - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <errno.h> -#include <fcntl.h> -#include <stropts.h> - -int -isastream (int fildes) -{ - /* In general we do not have a STREAMS implementation and therefore - return 0. But for invalid file descriptors we have to return an - error. */ - if (__fcntl (fildes, F_GETFD) < 0) - return -1; - - /* No STREAM. */ - return 0; -} diff --git a/streams/putmsg.c b/streams/putmsg.c deleted file mode 100644 index f6383b1..0000000 --- a/streams/putmsg.c +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright (C) 1998-2019 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 - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <errno.h> -#include <stropts.h> - -int -putmsg (int fildes, const struct strbuf *ctlptr, const struct strbuf *dataptr, - int flags) -{ - __set_errno (ENOSYS); - return -1; -} - - -stub_warning (putmsg) diff --git a/streams/putpmsg.c b/streams/putpmsg.c deleted file mode 100644 index fac3d22..0000000 --- a/streams/putpmsg.c +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright (C) 1998-2019 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 - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <errno.h> -#include <stropts.h> - -int -putpmsg (int fildes, const struct strbuf *ctlptr, const struct strbuf *dataptr, - int band, int flags) -{ - __set_errno (ENOSYS); - return -1; -} - - -stub_warning (putpmsg) diff --git a/streams/stropts.h b/streams/stropts.h deleted file mode 100644 index 97b9428..0000000 --- a/streams/stropts.h +++ /dev/null @@ -1,92 +0,0 @@ -/* Copyright (C) 1998-2019 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 - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#ifndef _STROPTS_H -#define _STROPTS_H 1 - -#include <features.h> -#include <bits/types.h> -#include <bits/xtitypes.h> - -#ifndef __gid_t_defined -typedef __gid_t gid_t; -# define __gid_t_defined -#endif - -#ifndef __uid_t_defined -typedef __uid_t uid_t; -# define __uid_t_defined -#endif - -typedef __t_scalar_t t_scalar_t; -typedef __t_uscalar_t t_uscalar_t; - -/* Get system specific constants. */ -#include <bits/stropts.h> - - -__BEGIN_DECLS - -/* Test whether FILDES is associated with a STREAM-based file. */ -extern int isastream (int __fildes) __THROW; - -/* Receive next message from a STREAMS file. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int getmsg (int __fildes, struct strbuf *__restrict __ctlptr, - struct strbuf *__restrict __dataptr, - int *__restrict __flagsp); - -/* Receive next message from a STREAMS file, with *FLAGSP allowing to - control which message. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int getpmsg (int __fildes, struct strbuf *__restrict __ctlptr, - struct strbuf *__restrict __dataptr, - int *__restrict __bandp, int *__restrict __flagsp); - -/* Perform the I/O control operation specified by REQUEST on FD. - One argument may follow; its presence and type depend on REQUEST. - Return value depends on REQUEST. Usually -1 indicates error. */ -extern int ioctl (int __fd, unsigned long int __request, ...) __THROW; - -/* Send a message on a STREAM. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int putmsg (int __fildes, const struct strbuf *__ctlptr, - const struct strbuf *__dataptr, int __flags); - -/* Send a message on a STREAM to the BAND. - - This function is a cancellation point and therefore not marked with - __THROW. */ -extern int putpmsg (int __fildes, const struct strbuf *__ctlptr, - const struct strbuf *__dataptr, int __band, int __flags); - -/* Attach a STREAMS-based file descriptor FILDES to a file PATH in the - file system name space. */ -extern int fattach (int __fildes, const char *__path) __THROW; - -/* Detach a name PATH from a STREAMS-based file descriptor. */ -extern int fdetach (const char *__path) __THROW; - -__END_DECLS - -#endif /* stropts.h */ diff --git a/streams/sys/stropts.h b/streams/sys/stropts.h deleted file mode 100644 index 5b5bc02..0000000 --- a/streams/sys/stropts.h +++ /dev/null @@ -1 +0,0 @@ -#include <stropts.h> |