Commit Graph

16104 Commits

Author SHA1 Message Date
Roland McGrath
4c8ac84562 2008-08-02 Roland McGrath <roland@frob.com>
* sysdeps/mach/i386/machine-lock.h (__spin_unlock, __spin_try_lock):
	Add memory clobbers.
2008-08-02 20:12:08 +00:00
Ulrich Drepper
48b22986cc * manual/arith.texi: Avoid @strong{Note:}.
* manual/creature.texi: Likewise.
	* manual/filesys.texi: Likewise.
	* manual/math.texi: Likewise.
	* manual/memory.texi: Likewise.
	* manual/resource.texi: Likewise.
	* manual/syslog.texi: Likewise.
	* manual/time.texi: Likewise.
2008-08-02 16:30:28 +00:00
Ulrich Drepper
3501542f94 * sysdeps/posix/clock_getres.c (hp_timing_getres): Remove inline
to prevent warning.
2008-08-02 15:53:18 +00:00
Ulrich Drepper
ebcc1f4d75 * sysdeps/unix/sysv/linux/Versions: Fix changes due to old patch for
new epoll_create1 interface.
	* sysdeps/unix/sysv/linux/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/sys/epoll.h: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise.
2008-08-01 23:49:18 +00:00
Ulrich Drepper
144bfa86e2 * include/arpa/nameser.h (NS_GET16): Use const pointer.
(NS_GET32): Likewise.
2008-08-01 22:40:06 +00:00
Ulrich Drepper
7e1b29c64a * sysdeps/unix/sysv/linux/kernel-features.h: s390 has the new
syscalls, too.
2008-08-01 21:51:11 +00:00
Ulrich Drepper
42fa1f67d4 * sysdeps/unix/sysv/linux/dl-origin.c (_dl_get_origin): We cannot
use the AT_EXECFN value if it is no absolute path.
	* sysdeps/unix/sysv/linux/kernel-features.h: Never define
	__ASSUME_AT_EXECFN.
2008-08-01 18:03:57 +00:00
Ulrich Drepper
cd5743fdec * Versions.def: Add GLIBC_2.9 to libresolv.
* include/resolv.h: Remove hidden proto declarations for __ns_*
	functions.  Add them for __dn_count_labels and __p_secstodate.
	* include/arpa/nameser.h: Add a number of hidden proto declarations.
	Define ns_msg_getflags macro here.
	* resolv/res_debug.c: Add hidden definition for __dn_count_labels
	and __p_secstodate.
	* resolv/Versions: Export functions from <arpa/nameser.h> from
	libresolv in version GLIBC_2.9.
	* resolv/ns_name.c: Integrate changes from bind 9.5.0.  Add necessary
	hidden definitions.
	* resolv/ns_netint.c: Likewise.
	* resolv/ns_parse.c: Likewise.
	* resolv/ns_print.c: Likewise.
	* resolv/ns_samedomain.c: Likewise.
	* resolv/ns_ttl.c: Likewise.
	* resolv/arpa/nameser_compat.h: Likewise.
	* resolv/arpa/nameser.h: Likewise.  Remove macros which redirect
	function calls.
	* resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Use __ns_get16
	instead of ns_get16.
	* resolv/nss_dns/dns-host.c (getanswer_r): Use __ns_get16 and
	__ns_get32 instead of ns_get16 and ns_get32 respectively.
	(gaih_getanswer_slice): Likewise.
	* resolv/Makefile (libresolv-routines): Add ns_date.
	* resolv/ns_date.c: New file.
2008-08-01 17:16:31 +00:00
Ulrich Drepper
17756df399 * elf/Makefile (check-localplt.out): Also check libresolv and
libcrypt.
2008-08-01 07:51:52 +00:00
Ulrich Drepper
46bc5d4393 * sysdeps/unix/sysv/linux/kernel-features.h: Define
__ASSUME_O_CLOEXEC.
2008-07-31 20:12:34 +00:00
Ulrich Drepper
3c22738644 * sysdeps/posix/getaddrinfo.c (gaih_inet): Raise size of initial
buffer passed to NSS functions.
2008-07-30 19:14:32 +00:00
Ulrich Drepper
bd7f48571d * nscd/connections.c (nscd_init): Type if preprocessor directive.
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PACCEPT):
	Define.
2008-07-30 16:33:19 +00:00
Ulrich Drepper
a707cff63d * misc/syslog.c (openlog_internal): Fix compile problem. 2008-07-30 15:55:36 +00:00
Ulrich Drepper
340f76a284 (openlog_internal): Fix compile problem. 2008-07-30 15:55:18 +00:00
Roland McGrath
0424d00701 * elf/dl-sysdep.c (_dl_show_auxv): Add AT_EXECFN to the table. 2008-07-29 01:18:31 +00:00
Roland McGrath
bd3314aac3 2008-07-28 Roland McGrath <roland@redhat.com>
* elf/dl-sysdep.c (_dl_show_auxv): Add AT_EXECFN to the table.
2008-07-29 01:18:26 +00:00
Ulrich Drepper
300ea0ad5e * io/ftw.c (add_object): Remove inline to avoid warning. 2008-07-29 00:26:56 +00:00
Ulrich Drepper
d6173baaae * sysdeps/unix/sysv/linux/paccept.c: Fix compile problem. 2008-07-29 00:25:12 +00:00
Ulrich Drepper
b7da31a164 * resolv/res_send.c (__libc_res_nsend): Take additional parameter.
Use it instead of locally defined resplen2 variable.
	(res_nsend): Adjust for __libc_res_nsend interface change.
	(send_vc): Initialize *resplen2 if necessary.  Read length of
	package into an appropriately aligned variable.  Store converted length
	in new variable and use it appropriately.
	Add branch prediction help.
	* resolv/res_query.c (__libc_res_nquery): Take additional parameter
	and pass it on to __libc_res_nsend.  Adjust all callers.
	(__libc_res_nsearch): Likewise.
	(__libc_res_nqeurydomain): Likewise.
	* resolv/nss_dns/dns-host.c: Adjust for __libc_res_nsearch interface
	change.
	(_nss_dns_gethostbyname4): Don't unconditionally allocate tmp array.
	Define resplen2 variable and pass it to __libc_res_nsearch and then
	to gaih_getanswer.
	(getanswer_r): In case of incorrect DNS data don't overread buffer.
	Add branch prediction.
	(gaih_getanswer_slice): Likewise.  Check for invalid data types.
	(gaih_getanswer): Don't decode second slice if first one failed due
	to a too small buffer.  Don't let not found status of second
	decoder shadow results of the first.
	* resolv/gethnamaddr.c (gethostbyname2): Adjust for __libc_res_nsearch
	and __libc_res_nquery interface changes
	(gethostbyaddr): Adjust for __libc_res_nquery interface change.
	* include/resolv.h: Adjust prototypes for __libc_res_nquery,
	__libc_res_nsearch, and __libc_res_nsend.
	* resolv/nss_dns/dns-canon.c: Adjust for __libc_res_nquery interface
	change.
	* resolv/nss_dns/dns-network.c: Adjust for __libc_res_nquery and
	__libc_res_nsearch interface changes.
2008-07-28 22:55:10 +00:00
Ulrich Drepper
372aece0e4 * libio/iopopen.c (_IO_new_proc_open): Remove unnecessary volatile. 2008-07-27 22:34:39 +00:00
Ulrich Drepper
e038616f4a * posix/wordexp.c (exec_comm): Use pipe2 if possible to create
file descriptors with close-on-exec set.
	(exec_comm_child): Fix the case where the write end of the pipe is
	STDOUT_FILENO already.  In case it is, clear close-on-exec.
2008-07-27 19:08:19 +00:00
Ulrich Drepper
d6e0c2a67d * sysdeps/unix/sysv/linux/syscalls.list: Add __pipe2 alias.
* io/pipe2.c: Likewise.
	* sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_PIPE2
	instead of __ASSUME_PACCEPT.
	* include/unistd.h: Declare __have_pipe2.
	* libio/iopopen.c: Implement "e" flag.
	* libio/Makefile (tests): Add tst-popen1.
	* libio/tst-popen1.c: New file.
2008-07-27 18:26:13 +00:00
Ulrich Drepper
11ed3eaed9 * sysdeps/unix/sysv/linux/bits/socket.h: Define PF_ISDN and AF_ISDN.
* sysdeps/unix/sysv/linux/sparc/bits/socket.h: Likewise.
2008-07-27 08:25:37 +00:00
Ulrich Drepper
c4a710b6b0 [BZ #6771]
* libio/fileops.c (_IO_new_file_attach): Preserve errno around
	success call of _IO_SEEKOFF or calls which failed because the
	descriptor is for a pipe.
2008-07-26 23:42:14 +00:00
Ulrich Drepper
31f3b159e3 * sunrpc/key_call.c (getkeyserv_handle): Use FD_CLOEXEC instead of
magic number.
2008-07-26 23:12:04 +00:00
Ulrich Drepper
c0216dfc62 * misc/syslog.c (openlog_internal): Use SOCK_CLOEXEC if possible. 2008-07-26 22:55:08 +00:00
Ulrich Drepper
72112b0cb4 * malloc/mtrace.c (mtrace): Use 'e' flag in fopen call. Drop
F_SETFD use if we know fopen set the flag.
2008-07-26 22:43:16 +00:00
Ulrich Drepper
7438a80dcb * login/utmp_file.c (setutent_file): Minor optimization in case
O_CLOEXEC is available.
2008-07-26 22:35:15 +00:00
Ulrich Drepper
7b91359b2c * Makeconfig: Define pie-ccflag and PIE-ccflag variables.
* elf/Makefile: Use pie-ccflag variable.
	* nscd/Makefile: Likewise.
	* sysdeps/sparc/Makefile: Set $(pie-ccflag) to -fPIE.
2008-07-26 22:22:24 +00:00
Ulrich Drepper
3f414923cf [BZ #6763]
the same treatment as narrow output code in last patch.
	[BZ #6763]
2008-07-26 17:46:56 +00:00
Ulrich Drepper
e7135e2490 [BZ #6724] 2008-07-26 17:44:03 +00:00
Ulrich Drepper
4057dc459a * Versions.def: Add GLIBC_2.9 version tag for libutil.
* sysdeps/unix/sysv/linux/s390/bits/utmp.h: Copy of
	gnu/bits/utmp.h.  Check for __WORDSIZE_COMPAT32 removed.
	* sysdeps/unix/sysv/linux/s390/bits/utmpx.h: Copy of
	gnu/bits/utmpx.h.  Check for __WORDSIZE_COMPAT32 removed.
	* sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Add new files
	utmp32, utmpx32 and login32.
	* sysdeps/unix/sysv/linux/s390/s390-32/Versions: Add 2.9
	versions of struct utmp functions to libc and libutil.
	* sysdeps/unix/sysv/linux/s390/s390-32/utmp-compat.h: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/getutent.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/getutent_r.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/getutid.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/getutid_r.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/getutline.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/getutline_r.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/getutmp.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/getutxent.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/getutxid.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/getutxline.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/login.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/login32.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/pututxline.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/updwtmp.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/updwtmpx.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/utmp32.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/utmpx-convert.h: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.c: New file.
	* sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h: New file.
2008-07-26 17:43:30 +00:00
Ulrich Drepper
619cc2f69d * scripts/gen-as-const.awk: Generate more widely usable code by
using 64-bit arithmetic.
2008-07-26 16:35:21 +00:00
Ulrich Drepper
1311b164df * stdio-common/printf_fp.c (___printf_fp): Give wide outout code
the same treatment as narow output code in last patch.
2008-07-26 16:32:59 +00:00
Ulrich Drepper
ff0bf75374 * sunrpc/clnt_udp.c (__libc_clntudp_bufcreate): Namespace cleanup.
* elf/dl-load.c (local_strdup): Remove inline.
	(_dl_map_object_from_fd): Don't allocate l_symbolic_searchlist.r_list.
	* elf/dl-object.c (_dl_new_object): Allocate symbolic searchlist as
	part of the object.

	* sysdeps/unix/sysv/linux/dl-origin.c: Add const to avoid warning.
2008-07-26 08:42:54 +00:00
Ulrich Drepper
bdd24a302e * sysdeps/unix/sysv/linux/kernel-features.h: IA-64 and SPARC have
the new syscalls, too.
2008-07-26 05:44:56 +00:00
Ulrich Drepper
b5c0b5e431 * sysdeps/unix/sysv/linux/kernel-features.h: IA-64 has the new
syscalls, too.
2008-07-26 05:41:16 +00:00
Ulrich Drepper
b41f1d14f2 * sysdeps/i386/i686/memcmp.S: Fix unwind information.
Reported by Paul Pluzhnikov <ppluzhnikov@google.com>.
2008-07-26 05:27:49 +00:00
Ulrich Drepper
3703468e36 [BZ #6698]
* stdio-common/_i18n_number.h (_i18n_number_rewrite): Take additional
	parameter for end of buffer.  If temporary copy is too large use
	malloc.
	* stdio-common/vfprintf.c: Adjust for _i18n_number_rewrite
	interface change.
	* stdio-common/printf_fp.c (__printf_fp): Likewise..  Account for
	string rewrite when allocating buffer.
2008-07-25 23:39:16 +00:00
Ulrich Drepper
bb0277bff5 * sysdeps/unix/sysv/linux/kernel-features.h: PPC has the new
syscalls, too.
2008-07-25 21:03:16 +00:00
Ulrich Drepper
9dd8477226 * nscd/connections.c (nscd_init): Clean up fcntl call. 2008-07-25 18:38:20 +00:00
Ulrich Drepper
c418b1ba4c * nscd/nscd_helper.c (open_socket): Use SOCK_CLOEXEC and
SOCK_NONBLOCK if possible.
2008-07-25 18:31:07 +00:00
Ulrich Drepper
b206d8b166 * sysdeps/unix/sysv/linux/opensock.c (__opensock): Use
SOCK_CLOEXEC if available.
2008-07-25 18:16:57 +00:00
Ulrich Drepper
8ccf22f934 * include/rpc/clnt.h: Declare __libc_clntudp_bufcreate and
__libc_clntudp_bufcreate_internal.
	* include/sys/socket.h: Declare __have_sock_cloexec.
	* socket/Makefile (aux): Add have_sock_cloexec.
	* socket/have_sock_cloexec.c: New file.
	* sunrpc/clnt_udp.h (clntudp_bufcreate): Now a wrapper around
	__libc_clntudp_bufcreate.
	(__libc_clntudp_bufcreate): Former implementation of clntudp_bufcreate
	which takes an additional parameter.  Create socket with non-blocking
	mode and close-on-exec flag set, if wanted.
	* sunrpc/Versions: Export __libc_clntudp_bufcreate@GLIBC_PRIVATE.
	* nis/ypclnt.c (yp_bind_client_create): Use __libc_clntpudp_bufcreate
	instead of clntudp_create.  The socket has already the close-on-exec
	flag set if SOCK_CLOEXEC is defined.
2008-07-25 17:06:50 +00:00
Ulrich Drepper
3ff2c948be * sysdeps/unix/sysv/linux/kernel-features.h: Define
__ASSUME_PACCEPT, __ASSUME_IN_NONBLOCK, and __ASSUME_PACCEPT if
	appropriate.
	* nscd/connections.c: Avoid fcntl calls to set close-on-exec flag and
	non-blocking mode by using socket, paccept, and inotify_init1.
2008-07-25 05:30:10 +00:00
Ulrich Drepper
bdcebfc4c7 * Versions.def (glibc): Add GLIBC_2.9.
* io/Makefile (routines): Add dup3 and pipe2.
	* io/Versions [glibc] (GLIBC_2.9): Add dup3 and pipe2.
	* io/dup3.c: New file.
	* io/pipe2.c: New file.
	* posix/unistd.h: Declare dup3 and pipe2.
	* socket/Makefile (routines): Add paccept.
	* socket/Versions [glibc] (GLIBC_2.9): Add paccept.
	* socket/paccept.c: New file.
	* socket/sys/socket.h: Declare paccept.
	* sysdeps/unix/syscalls.list: Add entry for dup3.
	* sysdeps/unix/sysv/linux/Versions [glibc] (GLIBC_2.9): Add
	epoll_create2 and inotify_init1.
	* sysdeps/unix/sysv/linux/eventfd.c: Use eventfd1 syscall if possible.
	* sysdeps/unix/sysv/linux/paccept.c: New file.
	* sysdeps/unix/sysv/linux/signalfd.c: Use signalfd4 syscall if
	possible.
	* sysdeps/unix/sysv/linux/socketcall.h: Add SOCKOP_paccept.
	* sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create2,
	inotify_init1, and pipe2 entries.
	* sysdeps/unix/sysv/linux/alpha/sys/epoll.h: New file.
	* sysdeps/unix/sysv/linux/alpha/sys/eventfd.h: New file.
	* sysdeps/unix/sysv/linux/alpha/sys/inotify.h: New file.
	* sysdeps/unix/sysv/linux/alpha/sys/signalfd.h: New file.
	* sysdeps/unix/sysv/linux/alpha/sys/timerfd.h: New file.
	* sysdeps/unix/sysv/linux/bits/socket.h: Define SOCK_CLOEXEC and
	SOCK_NONBLOCK.
	* sysdeps/unix/sysv/linux/i386/paccept.S: New file.
	* sysdeps/unix/sysv/linux/sparc/sys/epoll.h: New file.
	* sysdeps/unix/sysv/linux/sparc/sys/eventfd.h: New file.
	* sysdeps/unix/sysv/linux/sparc/sys/inotify.h: New file.
	* sysdeps/unix/sysv/linux/sparc/sys/signalfd.h: New file.
	* sysdeps/unix/sysv/linux/sparc/sys/timerfd.h: New file.
	* sysdeps/unix/sysv/linux/sparc/bits/socket.h: New file.
	* sysdeps/unix/sysv/linux/sys/epoll.h: Define EPOLL_CLOEXEC and
	EPOLL_NONBLOCK.  Declare epoll_create2.
	* sysdeps/unix/sysv/linux/sys/eventfd.h: Define EFD_CLOEXEC and
	EFD_NONBLOCK.
	* sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOEXEC and
	IN_NONBLOCK.  Declare inotify_init1.
	* sysdeps/unix/sysv/linux/sys/signalfd.h: Define SFD_CLOEXEC and
	SFD_NONBLOCK.
	* sysdeps/unix/sysv/linux/sys/timerfd.h: Define TFD_CLOEXEC and
	TFD_NONBLOCK.
2008-07-25 04:51:56 +00:00
Ulrich Drepper
0e077a7eea * elf/elf.h: Define AT_EXECFN.
* elf/rtld.c [!__ASSUME_AT_EXECFN] (process_envvars): Don't handle
	LD_ORIGIN_PATH.
	* elf/dl-sysdep.c (_dl_sysdep_start): Handle AT_EXECFN.
	* elf/dl-support.c: Define _dl_execfn.  Don't define _dl_origin_path
	if __ASSUME_AT_EXECFN is defined.
	(_dl_aux_init): Handle AT_EXECFN.
	* sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_AT_EXECFN
	for 2.6.27 and up.
	* sysdeps/generic/ldsodefs.h (rtld_global_ro): Add _dl_execfn.
	Don't define _dl_origin_path if __ASSUME_AT_EXECFN is defined.
	* sysdeps/unix/sysv/linux/dl-origin.c (_dl_get_origin): Use
	_dl_execfn if available and avoid compatibility code if
	__ASSUME_AT_EXECFN is defined.
2008-07-24 18:33:44 +00:00
Ulrich Drepper
579cdf5a47 [BZ #6712]
2008-07-24  Ulrich Drepper  <drepper@redhat.com>
	* sysdeps/unix/sysv/linux/dl-sysdep.h: Don't declare
	_dl_discover_osversion only for older kernels.

	[BZ #6712]
2008-07-24 18:20:03 +00:00
Ulrich Drepper
f188d8f55c Don't declare _dl_discover_osversion only for older kernels. 2008-07-24 18:03:17 +00:00
Roland McGrath
7385c04c8c * hurd/fd-read.c (_hurd_fd_read): Fix last change. 2008-07-22 20:21:19 +00:00