Commit graph

24440 commits

Author SHA1 Message Date
Mike Frysinger a277af22ea split assume pipe2/dup3/sock_cloexec knobs
We can't 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:

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.

While this isn't too much of an issue for some arches as they added the
functionality to the kernel at the same time, not all arches are that
lucky.

Since the code already has dedicated names for each feature, delete the
defines wiring these three features together and make each one a proper
dedicated knob.

We've been carrying this in Gentoo since glibc-2.9.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-18 00:35:47 -04:00
Mike Frysinger fdab8fd335 update linux nice.c include path too after recent file shuffle
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-17 22:42:49 -04:00
Marek Polacek 31035e80a4 Quash warning in s_sincosl. 2012-08-17 23:44:53 +02:00
Roland McGrath e3b398f925 Adjust old #include's of sysdeps/unix/time.c to point to sysdeps/posix/time.c instead. 2012-08-17 14:16:12 -07:00
Roland McGrath c91c505f22 Make sysheaders available in config.make. 2012-08-17 14:05:53 -07:00
Roland McGrath 7c6f9d53c1 Move some things from sysdeps/unix to sysdeps/posix. 2012-08-17 13:52:32 -07:00
Roland McGrath 3bd9e9931b Fix rule dependency in last change. 2012-08-17 13:42:27 -07:00
Jeff Law d1f0938405 2012-08-17 Jeff Law <law@redhat.com>
* intl/Makefile (codeset_mo): New variable.
	($(codeset_mo)): New target.
	(tst-codeset.out): Depend on that.  Remove explicit rule.
	(tst-gettext3.out, tst-gettext5.out): Likewise.
	(LOCPATH-ENV, tst-codeset-ENV): New variables.
	(tst-gettext3-ENV, tst-gettext5-ENV): Likewise.
	* intl/tst-codeset.sh: Remove.
	* intl/tst-gettext3.sh: Likewise.
	* intl/tst-gettext5.sh: Likewise.
2012-08-17 14:32:19 -06:00
Roland McGrath c31fdb83d2 Merge unix/inet/syscalls.list into unix/syscalls.list. 2012-08-17 12:56:33 -07:00
Roland McGrath fbc723bb37 Fix typo in last change. 2012-08-17 11:49:00 -07:00
Roland McGrath a084405777 Fix getaddrinfo for [!_STATBUF_ST_NSEC] case. 2012-08-17 11:47:06 -07:00
Roland McGrath 750c1f2a9a Make malloc build for no-threads configurations. 2012-08-17 11:29:45 -07:00
Roland McGrath 2ae1ae5cf4 Change type of constant to avoid a warning. 2012-08-17 11:17:04 -07:00
Roland McGrath e66a42f57f Split sys/param.h out into common file and sysdeps bits/param.h file. 2012-08-17 09:55:17 -07:00
Roland McGrath b7c08a66f6 Add a cast to silence a warning. 2012-08-17 09:49:37 -07:00
Roland McGrath b2e1c56272 Make libio compile without _IO_MTSAFE_IO. 2012-08-17 09:35:36 -07:00
Roland McGrath c75ccd4c3a Clean up definition of _LIBC_REENTRANT and _IO_MTSAFE_IO. 2012-08-17 09:35:15 -07:00
Gary Benson d9195db871 Also set r->r_map when unmapping the first object in a namespace.
When unmapping the first object in a namespace, the runtime linker
did not update the externally visible pointer.  This resulted in
debuggers seeing pointers to memory that had been freed.
2012-08-17 11:44:37 +01:00
Roland McGrath 86466cd930 Do not pollute name space with internal_*netgrent functions. 2012-08-16 15:38:45 -07:00
Joseph Myers c3c8283c06 Update longlong.h from GCC. 2012-08-16 21:37:04 +00:00
Roland McGrath db1ee0a836 Suppress -Wunused-but-set warnings in GMP code. 2012-08-16 14:08:47 -07:00
Carlos O'Donell 30f696374d Fifth argument of la_pltenter() is not constant.
The original runtime linker auditing interface described
by Solaris allows the 5th argument of la_pltenter() to be
modified. This patch cleans up the ldsodefs.h definitions
such that the 5th argument is not constant.

At one point the 5th argument *was* constant but this was
changed with commit 2413fdba7a.
This patch updates alpha, ia64, mips, sh and sparc with similar
changes.
2012-08-16 08:41:05 -07:00
Joseph Myers 93a78ac437 Remove __ASSUME_POSIX_TIMERS. 2012-08-16 14:03:43 +00:00
Roland McGrath 4b4f2771c2 Fix dl-load.c for [!_LIBC_REENTRANT] case. 2012-08-15 17:05:10 -07:00
Roland McGrath 601c888b2f Define __rtld_lock_initialize in stub bits/libc-lock.h file. 2012-08-15 17:03:56 -07:00
Roland McGrath 176790a734 Add a missing #include to dl-sym.c. 2012-08-15 17:02:22 -07:00
Maxim Kuvyrkov 309becf120 Optimize __libc_lock_lock and __libc_lock_trylock for MIPS. 2012-08-15 16:44:30 -07:00
Maxim Kuvyrkov ef4009734b Add generic versions of pthread_spin_lock and pthread_spin_trylock. 2012-08-15 16:29:06 -07:00
Roland McGrath 329bc01868 Suppress regcomp.c warnings in 32-bit builds. 2012-08-15 16:03:58 -07:00
Roland McGrath e04e272d21 Define O_DSYNC and O_RSYNC in generic/4.4 bits/fcntl.h file. 2012-08-15 15:47:52 -07:00
Roland McGrath 952bf94a28 Move stub lseek.c to the right directory. 2012-08-15 15:40:06 -07:00
Roland McGrath 7c99b50ae4 Fix stub clock_nanosleep #include. 2012-08-15 15:35:16 -07:00
Roland McGrath dd924cd7cc Fix last sha512.c change to avoid compiler warning. 2012-08-15 13:59:59 -07:00
Andreas Jaeger 1afbc875e3 Remove executable permissions checked in by accident 2012-08-15 21:18:44 +02:00
Liubov Dmitrieva b3f479a85a Fix segmentation fault in strncasecmp for i686
2012-08-15  Liubov Dmitrieva  <liubov.dmitrieva@gmail.com>

	[BZ #14195]
        * sysdeps/i386/i686/multiarch/strcmp-sssse3.S: Fix
        segmentation fault for a case of two empty input strings.
	* string/test-strncasecmp.c (check1): Renamed to...
	(bz12205): ...this.
	(bz14195): Add new testcase for two empty input strings and N > 0.
	(test_main): Call new testcase, adapt for renamed function.
2012-08-15 21:06:55 +02:00
Andreas Jaeger 9c55864e0d Add testcase for BZ#14090 - md5/sha512 with large sizes 2012-08-15 20:56:51 +02:00
Paul Eggert 02dcb6c5a2 Fix BZ#14090 - md5/sha512 with large sizes 2012-08-15 20:49:45 +02:00
Roland McGrath be75d75807 Remove local redefinition of MAX macro. 2012-08-15 11:40:41 -07:00
Roland McGrath 7312ca90dc Clean up x86_64/multiarch/strstr-c.c include order. 2012-08-15 11:38:57 -07:00
Roland McGrath 9a0a54864b Clean up x86_64/multiarch/memmove.c include order. 2012-08-15 11:26:02 -07:00
Roland McGrath 67cc348d55 Declare __getdirentries in internal dirent.h. 2012-08-15 10:09:18 -07:00
Roland McGrath a3f95dcc57 Add casts to suppress warnings in system.c under [!_LIBC_REENTRANT]. 2012-08-15 10:08:32 -07:00
Roland McGrath fdd3affb97 Rename ARM bits/atomic.h not to be specific to nptl add-on. 2012-08-15 09:40:28 -07:00
Roland McGrath f3bdd5f843 Separate ARM bits/atomic.h into generic and Linux-specific files. 2012-08-15 09:40:28 -07:00
Joseph Myers 5544c7e000 Update MIPS dl-lookup.c from generic version. 2012-08-15 09:49:07 +00:00
Mike Frysinger 9770df4f12 arm: fix up style in reloc fix
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-14 21:38:15 -04:00
Mike Frysinger ca98e1710e i386/x86_64: punt HAVE_CPP_ASM_DEBUGINFO
Pretty sure we require recent enough versions of gcc/binutils to make this
check pointless.  I can't any logs in the last few years where this check
didn't return "yes".

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-14 21:37:00 -04:00
Mike Frysinger d427a4f8a4 ia64: drop HAVE_CPP_ASM_DEBUGINFO
Looks like a wart copied from the i386 code base.  The only place I can
find that checks this is the i386 sysdep.h, and even then this looks like
a check that should get thrown away as obsolete ...

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-14 21:37:00 -04:00
Roland McGrath 1ec79f2673 Add a missing #include. 2012-08-14 16:44:27 -07:00
Roland McGrath 5908bf4662 Add a missing #include. 2012-08-14 16:04:29 -07:00