aboutsummaryrefslogtreecommitdiff
path: root/packages/glibc/2.12.1/0019-assume-pipe2.patch
diff options
context:
space:
mode:
authorChris Packham <judge.packham@gmail.com>2022-05-08 14:06:21 +1200
committerChris Packham <judge.packham@gmail.com>2022-05-10 19:46:53 +1200
commit6d5227b63b096b052dde8717822db259971db515 (patch)
tree367194d0497ac11587d4740d8c180009605a9e27 /packages/glibc/2.12.1/0019-assume-pipe2.patch
parent53bbdc74252f68a3800d222dddee69e63b617bf9 (diff)
downloadcrosstool-ng-6d5227b63b096b052dde8717822db259971db515.tar.gz
crosstool-ng-6d5227b63b096b052dde8717822db259971db515.tar.bz2
crosstool-ng-6d5227b63b096b052dde8717822db259971db515.zip
Remove obsolete glibc 2.12.1
glibc 2.12.1 was marked as obsolete. Now that the 1.25.0 release is out this version can be removed completely. As glibc 2.12.1 was the last remaining version supported by glibc-ports support for glibc-ports is also removed. Signed-off-by: Chris Packham <judge.packham@gmail.com>
Diffstat (limited to 'packages/glibc/2.12.1/0019-assume-pipe2.patch')
-rw-r--r--packages/glibc/2.12.1/0019-assume-pipe2.patch43
1 files changed, 0 insertions, 43 deletions
diff --git a/packages/glibc/2.12.1/0019-assume-pipe2.patch b/packages/glibc/2.12.1/0019-assume-pipe2.patch
deleted file mode 100644
index 0074ea65..00000000
--- a/packages/glibc/2.12.1/0019-assume-pipe2.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-http://bugs.gentoo.org/250342
-http://sources.redhat.com/bugzilla/show_bug.cgi?id=9685
-
-we cant assume sock_cloexec and pipe2 are bound together as the former defines
-are found in glibc only while the latter are a combo of kernel headers and
-glibc. so if we do a runtime detection of SOCK_CLOEXEC, but pipe2() is a stub
-inside of glibc, we hit a problem. for example:
-
-#include <grp.h>
-#include <stdio.h>
-main()
-{
- getgrnam("portage");
- if (!popen("ls", "r"))
- perror("popen()");
-}
-
-getgrnam() will detect that the kernel supports SOCK_CLOEXEC and then set both
-__have_sock_cloexec and __have_pipe2 to true. but if glibc was built against
-older kernel headers where __NR_pipe2 does not exist, glibc will have a ENOSYS
-stub for it. so popen() will always fail as glibc assumes pipe2() works.
-
----
- socket/have_sock_cloexec.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
---- a/socket/have_sock_cloexec.c
-+++ b/socket/have_sock_cloexec.c
-@@ -16,9 +16,14 @@
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-+#include <fcntl.h>
- #include <sys/socket.h>
- #include <kernel-features.h>
-
- #if defined SOCK_CLOEXEC && !defined __ASSUME_SOCK_CLOEXEC
- int __have_sock_cloexec;
- #endif
-+
-+#if defined O_CLOEXEC && !defined __ASSUME_PIPE2
-+int __have_pipe2;
-+#endif