Updated to fedora-glibc-20041006T0900
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
2
3         * elf/rtld.c (dl_main): Use _dl_debug_printf instead of _dl_printf
4         for prelink message.
5
6 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
7
8         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Include dl-sysdep.h.
9         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
10
11 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
12
13         * grp/initgroups.c: Remove duplicate group IDs.
14         * grp/compat-initgroups.c: Likewise.
15         * nscd/initgrcache.c: Likewise.
16
17 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
18
19         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (__sysconf): Return 200112L
20         for _SC_CPUTIME or _SC_THREAD_CPUTIME.
21
22         * nscd/Makefile (nscd-cflags): Set to -DIS_IN_nscd=1, plus
23         -fpie if building PIE.
24         (CFLAGS-*.c): Use it.
25
26         * nscd/Makefile (relro-LDFLAGS): Add -Wl,-z,now if have-z-relro.
27         ($(objpfx)nscd): Add $(relro-LDFLAGS).
28
29         * sysdeps/unix/sysv/linux/i386/sysconf.c: Include hp-timing.h.
30         (__sysconf): Return -1 for _SC_CPUTIME or _SC_THREAD_CPUTIME if
31         !HP_TIMING_AVAIL.
32
33 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
34
35         * nscd/Makefile (distribute): Remove TODO.
36         * nscd/TODO: Removed.
37
38 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
39
40         * nscd/gai.c: Define __no_netlink_support if NEED_NETLINK is
41         defined and __ASSUME_NETLINK_SUPPORT is zero.
42         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gai.c): Add
43         -DNEED_NETLINK.
44
45         * malloc/mtrace.pl: Avoid calling location unless it is needed for
46         output.  Patch by Edward Bishop <binutils@gmail.com>.
47
48         * nscd/Makefile (CFLAGS-gai.c): Add -fpie.
49
50 2004-10-04  H.J. Lu  <hongjiu.lu@intel.com>
51
52         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c
53         (clock_getcpuclockid): Add missing retval.
54
55         * sysdeps/unix/sysv/linux/ia64/sysconf.c (linux_sysconf): Fix a typo.
56
57 2004-10-04  Roland McGrath  <roland@redhat.com>
58
59         * include/errno.h [RTLD_PRIVATE_ERRNO] (errno): Rename the real symbol
60         to rtld_errno.
61         * sysdeps/generic/errno.c [RTLD_PRIVATE_ERRNO] (rtld_errno): Define it,
62         and don't define any other errno names.
63         * sysdeps/unix/alpha/sysdep.h [RTLD_PRIVATE_ERRNO]: Use rtld_errno in
64         place of errno.
65         * sysdeps/unix/i386/sysdep.S: Likewise.
66         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
67         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
68         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
69         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
70         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
71         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
72         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
73         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
74         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
75         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
76         * sysdeps/unix/x86_64/sysdep.S: Likewise.
77
78         * sysdeps/generic/errno.c [! USE___THREAD] (errno): Use `nocommon'
79         attribute instead of `section'.
80
81 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
82
83         * sysdeps/unix/sysv/linux/ia64/sysconf.c: New file.
84         * sysdeps/unix/sysv/linux/ia64/Dist: Add has_cpuclock.c.
85         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: Move actual
86         testing code to...
87         * sysdeps/unix/sysv/linux/ia64/has_cpuclock.c: ...here.  New file.
88         * sysdeps/unix/sysv/linux/i386/sysconf.c: Add dynamic check for
89         _SC_CPUTIME and _SC_THREAD_CPUTIME.
90
91         * nscd/connections.c (start_threads): Use sysconf in case
92         _POSIX_CLOCK_SELECTION or _POSIX_MONOTONIC_CLOCK is not greater zero.
93
94         * nscd/Makefile (nscd-modules): Add gai.
95         * nscd/gai.c: New file.
96         * nscd/nscd.c: Remove getaddrinfo stub definition.
97
98         * assert/assert.h: Give up on using __builtin_expect.
99
100         * elf/rtld.c (dl_main): Only skip => output in ldd mode if both
101         strings are identical.
102
103 2004-03-18  Jakub Jelinek  <jakub@redhat.com>
104
105         * malloc/arena.c (aligned_heap_area): New variable.
106         (new_heap): If aligned_heap_area != NULL, attempt to use that
107         first.  If HEAP_MAX_SIZE << 1 area is already HEAP_MAX_SIZE bytes
108         aligned, remember the second half in aligned_heap_area.
109         (delete_heap): Clear aligned_heap_area if deleting the area right
110         before aligned_heap_area.
111
112 2004-10-03  Juerg Billeter  <j@bitron.ch>
113
114         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Return -1 if nscd
115         can't be used.  [BZ #424]
116
117 2004-10-03  Ulrich Drepper  <drepper@redhat.com>
118
119         Dynamically create new threads if necessary.
120         * nscd/connections.c (fd_ready): If no thread available for processing
121         the request, create a new one unless the limit is reached.
122         (start_threads): Check errors from pthread_create.
123         * nscd/nscd.h: Declare max_nthreads.
124         * nscd/nscd_conf.c: Parse max-nthreads entry.
125         * nscd/nscd.conf: Add max-threads entry.
126         * nscd/nscd_stat.c: Print current and maximum number of threads.
127
128         Implement paranoia mode.
129         * nscd/connections.c (nscd_init): Mark database and socket descriptors
130         as close on exec.
131         (restart): New function.
132         (restart_p): New function.
133         (nscd_run): Add missing descrement of nready in case readylist is
134         empty.
135         (main_loop_poll): Call restart_p and restart.
136         (main_loop_epoll): Likewise.
137         (begin_drop_privileges): Save original UID and GID.
138         * nscd/nscd.c: Define new variables paranoia, restart_time,
139         restart_interval, oldcwd, old_gid, old_uid.
140         (main): Disable paranoia mode if we are not forking.
141         (check_pid): When re-execing, the PID file contains the same PID as
142         the current process.  Do not fail in this case.
143         * nscd/nscd.conf: Add paranoia and restart-interval entries.
144         * nscd/nscd.h: Define RESTART_INTERVAL.  Declare new variables.
145         * nscd/nscd_conf.c: Parse paranoia and restart-internal configurations.
146         * nscd/nscd_stat.c: Print paranoia and restart-internal values.
147
148         * nscd/connections.c: Implement alternative loop for main thread
149         which uses epoll.
150         * sysdeps/unix/sysv/linux/Makefile [subdir=nscd]
151         (CFLAGS-connections.c): Add -DHAVE_EPOLL.
152
153 2004-10-02  Ulrich Drepper  <drepper@redhat.com>
154
155         * nscd/Makefile (CFLAGS-initgrcache.c): Add to CFLAGS-* variables,
156         don't replace old content.
157
158         * nscd/connections.c: Rewrite handling of incoming connections.  All
159         are handled by one thread which then hands off the descriptors for the
160         real work to the worker threads.
161         * nscd/Makefile: Link nscd with librt.
162
163         * nscd/selinux.c: Pretty printing.
164
165         * nscd/dbg_log.c (dbg_log): Don't add unnecessary newline to
166         output.  Let syslog do the formatting if debug_level == 0.
167
168         * nscd/nscd_helper.c (get_mapping): No need to check timestamp if
169         nscd_certainly_running is nonzero.
170
171 2004-10-02  Simon Josefsson  <jas@extundo.com>
172
173         [BZ #420]
174         * sysdeps/generic/memmem.c [!_LIBC]: Define __builtin_expect, to
175         make the file usable inside gnulib.
176
177 2004-10-01  Ulrich Drepper  <drepper@redhat.com>
178
179         * malloc/malloc.c (public_vALLOc): Add missing use of hooks.
180         (public_pVALLOc): Likewise.
181
182         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Always add the
183         group the caller provided unless there is a real problem.
184
185         * posix/bug-glob1.c (prepare): Fix creation of symlink.
186
187 2004-09-30  Ulrich Drepper  <drepper@redhat.com>
188
189         * posix/Makefile: Add rules to build and run bug-glob1.
190         * posix/bug-glob1.c: New file.
191
192         * iconv/iconv_prog.c (main): Print progress information to stderr.
193
194         * nscd/nscd.c (termination_handler): Reset timestamp so that
195         clients immediately stop using the database.
196
197         * nscd/nscd-client.h (__nscd_get_map_ref): Drop volatile from last
198         parameter.
199         (__nscd_drop_map_ref): Change second parameter to be a reference to
200         a variable.  Update variable when cycle count changed.
201         * nscd/nscd_helper.c (__nscd_get_map_ref): Remove volatile here, too.
202         * nscd/nscd_getai.c: Correctly use __nscd_drop_map_ref.  Reinitialize
203         all variables and avoid memory leak in case of retries.
204         * nscd/nscd_getgr_r.c: Likewise.
205         * nscd/nscd_gethst_r.c: Likewise.
206         * nscd/nscd_getpw_r.c: Likewise.
207         * nscd/nscd_initgroups.c: Likewise.
208
209         * nscd/nscd.h: Add declaration of addinitgroups and
210         readdinitgroups.
211
212 2004-09-30  Andreas Jaeger  <aj@suse.de>
213
214         * nscd/Makefile (CFLAGS-nscd_initgroups.c): Set to -fpie.
215         (CFLAGS-initgrcache.c): Set to -fexceptions.
216
217 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
218
219         * sysdeps/generic/glob.c (glob_in_dir): Don't blindly trust
220         readdir results; for symlinks or files of unknown type check using
221         stat whether the file exists.
222
223         * posix/tst-gnuglob.c (find_file): Handle leading "./".  Fix
224         recognition of files.
225
226 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
227
228         * time/tzfile.c (tzfile_mtime): New variable.
229         (__tzfile_read): Reread the file if mtime is different.
230
231 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
232
233         * sysdeps/alpha/fpu/bits/mathinline.h (__fdimf, __fdim, fdimf, fdim):
234         Handle +inf/+inf.
235         * sysdeps/powerpc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
236         * sysdeps/sparc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
237
238 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
239
240         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use correct constant for
241         testing result of __nscd_get_map_ref.
242
243 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
244
245         * sysdeps/i386/fpu/s_fdim.S (__fdim): Handle +inf/+inf.
246         * sysdeps/i386/fpu/s_fdimf.S (__fdimf): Likewise.
247         * sysdeps/i386/fpu/s_fdiml.S (__fdiml): Likewise.
248
249 004-09-29  Ulrich Drepper  <drepper@redhat.com>
250
251         * grp/initgroups.c: Move compat_call implementation...
252         * grp/compat-initgroups.c: ...to here.  New file.
253         * grp/Makefile (distribute): Add compat-initgroups.c.
254         (CFLAGS-initgroups.c): Add -DUSE_NSCD=1.
255         * mscd/initgrcache.c: New file.
256         * nscd/nscd_initgroups.c: New file.
257         * nscd/Makefile (routines): Add nscd_initgroups.
258         (nscd-modules): Add initgrcache.
259         * nscd/cache.c (prune_cache): Add support for INITGROUPS entries.
260         * nscd/connections.c: Handle INITGROUPS requests.
261         * nscd/nscd-client.h: Define INITGROUPS, initgr_response_header.
262         Add initgrdata element to struct datahead.  Fix typo in comment.
263         * nscd/nscd_proto.h: Declare __nscd_getgrouplist.  Fix parameter
264         type in __nscd_getgrgrid_r.
265         * nscd/selinux.c (perms): Add INITGROUPS entry.
266
267         * nscd/nscd_getai.c: No need to include <sys/mman.h>.
268
269         * sunrpc/get_myaddr.c (get_myaddress): Account for interfaces without
270         assigned addresses.
271         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
272         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
273         * sunrpc/clnt_udp.c (is_network_up): Likewise.
274
275         * nscd/nscd.c: Define getaddrinfo hidden so that it is never found
276         outside.
277
278         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_segvflags):
279         Renamed from si_flags due to conflict with si_flags from <elf.h>.
280
281 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
282
283         * nscd/nscd_getai.c: Use NO_MAPPING instead of MAP_FAILED for test
284         of failing __nscd_get_map_ref.  Fix a few typos.
285
286         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Make sure
287         SIGSETXID is not blocked.
288         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Likewise.
289         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
290         * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise.
291         * sysdeps/generic/sigfillset.c (sigfillset): Don't set SIGSETXID.
292
293         * sunrpc/get_myaddr.c (get_myaddress): Fix test for failing
294         getifaddrs call.
295         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
296         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
297         * sunrpc/Makefile (xtests): Add tst-getmyaddr.
298         * sunrpc/tst-getmyaddr.c: New file.
299
300         * malloc/arena.c (ptmalloc_init): Allow MALLOC_CHECK_==0 to
301         disable all checking.
302
303         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_flags): Add
304         support to get this value.
305
306 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
307
308         * io/utime.h (utime): Allow second argument to be NULL.
309
310 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
311
312         * sysdeps/posix/getaddrinfo.c (gaih_inet): If NAME is a numerical IP
313         address and AI_CANONNAME is set, return copy of NAME as ai_canonname.
314
315 2004-09-27  Andreas Jaeger  <aj@suse.de>
316
317         * sysdeps/i386/dl-machine.h (elf_machine_rela_relative): Replace
318         static inline by auto inline, add always_inline attribute.
319         (elf_machine_rel): Likewise.
320         (elf_machine_rela): Likewise.
321         (elf_machine_lazy_rel): Likewise.
322         (elf_machine_lazy_rela): Likewise.
323         (elf_machine_rel_relative): Likewise.
324
325 2004-09-27  Ulrich Drepper  <drepper@redhat.com>
326
327         * sunrpc/xdr_intXX_t.c: Add xdr_quad_t and xdr_u_quad_t aliases.
328         * sunrpc/rpc/xdr.h: Declare xdr_quad_t and xdr_u_quad_t.
329         * sunrpc/rpc_parse.c (get_type): Use "quad_t" for TOK_HYPER.
330         Otherwise isvectordef will loop infinitely if typedef hyper int64_t
331         is seen.
332         (unsigned_dec): Use "u_quad_t" for similar reasons.
333         * sunrpc/Versions: Export xdr_quad_t and xdr_u_quad_t.
334
335 2004-09-27  Roland McGrath  <roland@redhat.com>
336
337         * sysdeps/generic/bits/waitstatus.h (__WIFSIGNALED): Simplify bit
338         twiddling in last change.
339
340         * posix/tst-waitid.c (do_test): Add tests for waitpid with WCONTINUED.
341
342         [BZ #409]
343         * posix/sys/wait.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
344         * stdlib/stdlib.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
345         * sysdeps/generic/bits/waitstatus.h (__W_CONTINUED): New macro.
346         [WCONTINUED] (__WIFCONTINUED): New macro.
347         (__WIFSIGNALED): Rewritten to exclude __W_CONTINUED value, and have no
348         branches.
349
350         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Add fifth argument to
351         all three syscall uses, not just one!
352
353 2004-09-26  Richard Henderson  <rth@redhat.com>
354
355         * sysdeps/alpha/alphaev6/memcpy.S: Mark .prologue.
356         * sysdeps/unix/alpha/sysdep.h (LEAF, ENTRY): Align entry points
357         to 16 byte boundaries.
358
359 2004-09-26  Ulrich Drepper  <drepper@redhat.com>
360
361         * elf/readlib.c (process_file): Before complaining about too-short
362         file, check that it potentially be an ELF file.  Also complain about
363         empty files.  [BZ #151].
364
365         * scripts/test-installation.pl: Fix ld.so recognition for new
366         LD_TRACE_LOADED_OBJECTS output format.
367         Patch by <jsberg04+computing.glibc@ftml.net>  [BZ #407].
368
369         * elf/dl-support.c (_dl_non_dynamic_init): Fix cleaning of
370         environment.  [BZ #384]
371
372         * sunrpc/clnt_udp.c (is_network_up): Use getifaddrs instead of ioctl.
373         * sunrpc/get_myaddr.c (get_myaddress): Likewise.
374         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
375         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.  Change interface
376         to avoid buffer overrun and remove now useless parameters.
377         (clnt_broadcast): Adjust caller.  [BZ #381].
378
379         * sysdeps/generic/s_fdim.c: Handle +inf/+inf
380         * sysdeps/generic/s_fdimf.c: Likewise.
381         * sysdeps/generic/s_fdiml.c: Likewise.
382         * sysdeps/i386/i686/fpu/s_fdim.S: Likewise.
383         * sysdeps/i386/i686/fpu/s_fdimf.S: Likewise.
384         * sysdeps/i386/i686/fpu/s_fdiml.S: Likewise.
385         * sysdeps/powerpc/fpu/s_fdim.c: Likewise.
386         * sysdeps/powerpc/fpu/s_fdimf.c: Likewise.
387         * sysdeps/x86_64/fpu/s_fdiml.S: Likewise.
388         * math/libm-test.inc (fdim_test): Add test case.  [BZ #376].
389
390         * sysdeps/generic/bits/types.h: Fix __SQUAD_TYPE and __UQUAD_TYPE
391         for compilers without __GLIBC_HAVE_LONG_LONG.  [BZ #362]
392
393         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Remove incorrect
394         requirement on socktype and protocol.
395         (gaih_inet): If numeric port number is given, return records for all
396         possible socket types.
397         * posix/tst-getaddrinfo2.c: New file.
398         * posix/Makefile (tests): Add tst-getaddrinfo2.  [BZ #358]
399
400 2004-09-25  Ulrich Drepper  <drepper@redhat.com>
401
402         * locale/loadlocale.c (_nl_intern_locale_data): Recognize LC_CTYPE
403         data where _nl_value_type_LC_CTYPE does not contain the type
404         information.  Add range checks.
405         Reported by John Lumby <johnlumby@hotmail.com> [BZ #356].
406
407         * libio/vasprintf.c (_IO_vasprintf): Fix condition to decide
408         whether to realloc or not.
409         Reported by Pavel Kankovsky <peak@argo.troja.mff.cuni.cz> [BZ #346].
410
411         * intl/dcigettext.c (DCIGETTEXT): Protect tfind/tsearch calls.
412         * intl/dcigettext.c (_nl_find_msg): Call _nl_load_domain also if
413         decided < 0.
414         * intl/finddomain.c (_nl_find_domain): Likewise.
415         * intl/loadmsgcat.c (_nl_load_domain): Set decided to 1 only once we
416         are done.  First set to -1 to signal initialization is ongoing.
417         Protect against concurrent callers with recursive lock.
418         * intl/finddomain.c (_nl_find_domain): Protect calls to
419         _nl_make_l10nflist.  [BZ #322]
420
421         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If determinination of
422         source address fails, initialized source_addr_len field so that
423         duplicate address recognition does not copy junk.
424
425 2004-09-25  Jakub Jelinek  <jakub@redhat.com>
426
427         * sysdeps/unix/sysv/linux/i386/setuid.c (__setuid): Remove second
428         result declaration.
429
430 2004-09-22  Andreas Schwab  <schwab@suse.de>
431
432         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Adjust whitespace.
433
434 2004-09-24  Ulrich Drepper  <drepper@redhat.com>
435
436         * misc/daemon.c (daemon): Don't succeed if /dev/null cannot be
437         opened.
438
439         * nis/ypclnt.c (do_ypcall): Add one missing unlock.  Simplify the
440         code a bit.
441
442         * misc/daemon.c (daemon): Define errno in case /dev/null is not
443         the correct device.
444
445         * nis/ypclnt.c (yp_bind_file): Optimize a bit.  Minimal cleanups.
446
447 2004-09-23  Andreas Jaeger  <aj@suse.de>
448
449         * locale/weight.h (findidx): Remove static, it's not supported
450         anymore with GCC 4.0 in a block scope.
451         * locale/weightwc.h (findidx): Likewise.
452         * posix/regcomp.c (seek_collating_symbol_entry): Likewise.
453         (lookup_collation_sequence_value): Likewise.
454         (build_range_exp): Likewise.
455         (build_collating_symbol): Likewise.
456         * iconv/iconvconfig.c (write_output): Likewise.
457         * elf/do-rel.h (elf_dynamic_do_rel): Likewise.
458
459         * sysdeps/x86_64/dl-machine.h (elf_machine_rela_relative): Remove
460         static, add always_inline attribute.
461         (elf_machine_rela): Likewise.
462         (elf_machine_lazy_rel): Likewise.
463
464         * elf/dynamic-link.h (elf_get_dynamic_info): Make static dependend
465         on !RESOLVE so that it's not defined in local scope.
466
467 2004-09-23  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
468
469         * sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL_NCS): Define.
470
471 2004-09-23  Thorsten Kukuk  <kukuk@suse.de>
472
473         * sysdeps/unix/sysv/linux/sys/mount.h: Sync MS_RMT_MASK flag
474         and BLK* ioctls with linux kernel headers.
475
476 2004-09-23  Ulrich Drepper  <drepper@redhat.com>
477
478         * sysdeps/generic/bits/dlfcn.h: Add RTLD_DEEPBIND.
479         * elf/dl-object.c (_dl_new_object): Add new parameter mode.  If mode
480         has RTLD_DEEPBIND set add local searchlist before global scope.
481         * sysdeps/generic/ldsodefs.h (_dl_new_object): Adjust prototype.
482         * elf/rtld.c: Adjust callers of _dl_new_object.
483         * elf/dl-load.c: Likewise.
484         (_dl_map_object_from_fd): If RTLD_DEEPBIND is used, don't do anything
485         for DF_SYMBOLIC.
486         * elf/dl-open.c (dl_open_writer): Pass RTLD_DEEPBIND flag on to
487         _dl_map_object_deps.
488         * elf/tst-deep1.c: New file.
489         * elf/tst-deep1mod1.c: New file.
490         * elf/tst-deep1mod2.c: New file.
491         * elf/tst-deep1mod3.c: New file.
492         * elf/Makefile: Add rules to build and run new tests.
493
494         * elf/dl-deps.c: Pretty printing.
495
496 2004-09-23  Jakub Jelinek  <jakub@redhat.com>
497
498         * sysdeps/unix/alpha/sysdep.h (inline_syscall[0-6]): Change name
499         argument to numbers from syscall names.
500         (INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
501         (INTERNAL_SYSCALL_NCS): Renamed from...
502         (INTERNAL_SYSCALL_1): ... this.  Use INTERNAL_SYSCALL_NCS.
503         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
504         (INTERNAL_SYSCALL_NCS): Define.
505         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
506         (INTERNAL_SYSCALL_NCS): Likewise.
507         * sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall[0-6]):
508         Change name argument to numbers from syscall names.
509         (INLINE_SYSCALL, INTERNAL_SYSCALL): Adjust.
510         (INTERNAL_SYSCALL_NCS): Define.
511
512 2004-09-22  Ulrich Drepper  <drepper@redhat.com>
513
514         * malloc/malloc.c (malloc_printerr): Use syslog if writev failed.
515
516         * string/string.h: Add __nonnull annotations.
517         * stdlib/stdlib.h: Likewise.
518
519 2004-09-20  Jakub Jelinek  <jakub@redhat.com>
520
521         * sysdeps/unix/alpha/sysdep.h (inline_syscall[0-6]): Change name
522         argument to numbers from syscall names.
523         (INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
524         (INTERNAL_SYSCALL_NCS): Renamed from...
525         (INTERNAL_SYSCALL_1): ... this.  Use INTERNAL_SYSCALL_NCS.
526         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
527         (INTERNAL_SYSCALL_NCS): Define.
528         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
529         (INTERNAL_SYSCALL_NCS): Likewise.
530         * sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall[0-6]):
531         Change name argument to numbers from syscall names.
532         (INLINE_SYSCALL, INTERNAL_SYSCALL): Adjust.
533         (INTERNAL_SYSCALL_NCS): Define.
534
535 2004-09-20  H.J. Lu  <hongjiu.lu@intel.com>
536
537         * sysdeps/unix/sysv/linux/ia64/sysdep.h (DO_INLINE_SYSCALL):
538         Renamed to ...
539         (DO_INLINE_SYSCALL_NCS): This.
540         (DO_INLINE_SYSCALL): New.
541         (INLINE_SYSCALL): Updated.
542         (INTERNAL_SYSCALL_NCS): Updated.
543
544 2004-09-21  Ulrich Drepper  <drepper@redhat.com>
545
546         * elf/sprof.c (load_shobj): Add support for reading symbol table
547         from debuginfo file.
548
549         * elf/ldd.bash.in: Fix syntax errors.
550
551 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
552
553         * sysdeps/unix/sysv/linux/dl-execstack.c
554         (_dl_make_stack_executable): Remove some duplication.
555
556         * nscd/nscd.c (options): Mark S option as hidden.
557         (parse_opt): When S option is used, print warning message.
558         * nscd/grpcache.c (adgrptbyX): Don't handle secure mode.
559         * nscd/hstcache.c (addhstbyX): Don't handle secure mode.
560         * nscd/aicache.c (addhstaiX): Don't handle secure mode.
561         * nscd/pwdcache.c (addpwbyX): Don't handle secure mode.
562
563 2004-09-20  Roland McGrath  <roland@frob.com>
564
565         * elf/dl-load.c (__stack_prot): Only use PROT_GROWSUP/PROT_GROWSDOWN
566         in initializer #if defined.
567
568 2004-09-18  Paul Eggert  <eggert@cs.ucla.edu>
569
570         [BZ #391]
571         * stdlib/getsubopt.c: Merge fixes from gnulib.
572         (__strchrnul) [!_LIBC]: Define and include "strchrnul.c".
573         (getsubopt): Use prototypes, not K&R style.
574         Fix bug: memcmp(A,B,N) was being invoked on a memory block B
575         whose size might be smaller than N.  Use strncmp to avoid the bug.
576
577 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
578
579         * configure.in: If selinux has not explictly been requested, don't
580         comment on it missing.
581
582         * elf/dl-load.c: Define __stack_prot.
583         * sysdeps/unix/sysv/linux/dl-execstack.c: Don't define
584         __stack_prot here, just declare it.
585
586 2004-09-20  Jakub Jelinek  <jakub@redhat.com>
587
588         * configure.in (libc_cv_z_relro): Only set to yes if linker script
589         contains DATA_SEGMENT_RELRO_END.
590
591 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
592
593         * elf/dl-load.c (_dl_map_object_from_fd): Add some error checking.
594         Reorder code slightly.
595         * elf/rtld.c (dl_main): No need to check whether l_info[DT_HASH]
596         is non-null, _dl_setup_hash will do that.
597
598 2004-09-19  Ulrich Drepper  <drepper@redhat.com>
599
600         * sysdeps/unix/sysv/linux/setegid.c [HAVE_PTR__NPTL_SETXID]: Call
601         callback to set IDs in all other threads as well.
602         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
603         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
604         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
605         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
606         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
607         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
608         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
609         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
610         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
611         * sysdeps/unix/sysv/linux/setuid.c: New file.
612         * sysdeps/unix/sysv/linux/setgid.c: New file.
613         * sysdeps/unix/sysv/linux/setreuid.c: New file.
614         * sysdeps/unix/sysv/linux/setregid.c: New file.
615         * sysdeps/unix/sysv/linux/setresuid.c: New file.
616         * sysdeps/unix/sysv/linux/setresgid.c: New file.
617         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NCS.
618         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
619         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
620         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
621         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
622         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c: Use x86 version.
623         * sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c: Likewise.
624         * sysdeps/unix/sysv/linux/sparc/sparc32/setresgid.c: New file.
625         * sysdeps/unix/sysv/linux/sparc/sparc32/setresuid.c: New file.
626         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Remove setresgid
627         and setresuid.
628         * nscd/aicache.c: Use pthread_seteuid_np instead of seteuid.
629         * nscd/grpcache.c: Likewise.
630         * nscd/hstcache.c: Likewise.
631         * nscd/pwdcache.c: Likewise.
632
633         * resolv/res_mkquery.c (res_nmkquery): Fix typo.
634
635 2004-09-18  Ulrich Drepper  <drepper@redhat.com>
636
637         * sysdeps/unisx/sysv/linux/dl-execstack.c: Get protection flag
638         from memory.
639         * elf/dl-load.c (_dl_map_object_from_fd): Add PROT_EXEC flag to
640         __stack_flags.
641
642         * sysdeps/posix/getaddrinfo.c (gaih_inet): Do not use
643         gethostbyname3_r if we are not looking for the canonical name.
644
645         * resolv/res_mkquery.c (res_nmkquery): Randomize request ID every
646         time.
647
648 2004-09-18  Roland McGrath  <roland@redhat.com>
649
650         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Pass fifth argument to
651         system call.
652
653 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
654
655         * include/link.h (struct link_map): Add l_used element.
656         * sysdeps/generic/ldsodefs.h: Define DL_DEBUG_UNUSED.
657         * elf/rtld.c (process_dl_debug): Recognize unused.
658         (dl_main): When unused debug flag is set check for unused direct
659         dependencies.
660         When printing dependencies and SONAME starts with /, omit the SONAME =>
661         part.
662         * elf/dl-lookup.c (_dl_lookup_symbol_x): Mark object in which the
663         symbol has been found as used.
664         * elf/ldd.bash.in: Add -u option.
665
666 2004-09-18  Jakub Jelinek  <jakub@redhat.com>
667
668         * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread):
669         Do nothing if __NR_set_tid_address is not defined.  [BZ #390]
670
671 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
672
673         * sysdeps/posix/getaddrinfo.c: Use gethostbyname3_r NSS function
674         in case it is available.
675
676 2004-09-17  Jakub Jelinek  <jakub@redhat.com>
677
678         * nscd/nscd.c (parse_opt): Write arg string instead of (void *)
679         key to the socket.
680
681 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
682
683         * misc/sys/cdefs.h: Define __nonnull using nonnull function attribute
684         for gcc 3.3 and higher.
685         * io/fcntl.h: Add __nonnull where appropriate.
686         * io/ftw.h: Likewise.
687         * io/utime.h: Likewise.
688         * io/sys/poll.h: Likewise.
689         * io/sys/sendfile.h: Likewise.
690         * io/sys/stat.h: Likewise.
691         * io/sys/statfs.h: Likewise.
692         * io/sys/statvfs.h: Likewise.
693         * posix/unistd.h: Likewise.
694         * catgets/nl_types.h: Likewise.
695         * crypt/crypt.h: Likewise.
696         * debug/execinfo.h: Likewise.
697
698 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
699
700         * posix/glob.h: Remove cruft to make header usable outside glibc.
701         The maintenance headache is too big.
702
703         * configure.in: Add test for required SELinux features.
704         * config.make.in: Add have-selinux entry.
705         * config.h.in: Add HAVE_SELINUX entry.
706         * nscd/Makefile (nscd-modules): Add selinux.
707         (CFLAGS-selinux.c): Add -fpie.
708         Define selinux-LIBS and use in link line.
709         * nscd/connections.c (handle_request): Check access SELinux permissions
710         before processing request.
711         * nscd/nscd.c (main): Initialize selinux_enabled and stop avc thread.
712         * nscd/nscd_stat.c: Transmit and print AVC statistics.
713         * nscd/selinux.c: New file.
714         * nscd/selinux.h: New file.
715         Patch mostly by Matthew Rickard <mjricka@epoch.ncsc.mil>.
716
717 2004-09-16  Jakub Jelinek  <jakub@redhat.com>
718
719         * nscd/nscd_helper.c (__nscd_unmap, get_mapping): Use __munmap
720         instead of munmap.
721
722         * nscd/Makefile (CFLAGS-aicache.c): Set to -fpie.
723
724 2004-09-16  Thorsten Kukuk  <kukuk@suse.de>
725
726         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check
727         __nss_not_use_nscd_hosts variable if nscd should be used or not.
728
729 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
730
731         * nscd/nscd_proto.h: Define NSS_NSCD_RETRY.
732         Add __nscd_getai prototype.
733         * nss/getXXbyYY_r.c: Remode definition of NSS_NSCD_RETRY.
734         * nscd/nscd-client.h: Remove __nscd_getai prototype.
735         * nscd/nscd_getai.c: Include nscd_proto.h.
736
737         * elf/ldd.bash.in: Add support for SELinux environments.
738         Patch by Stephen Smalley <sds@epoch.ncsc.mil>.
739
740 2004-09-16  Roland McGrath  <roland@redhat.com>
741
742         * configure.in (--with-headers): Let argument contain a : separated
743         list of directories to use, not just one.
744         * configure: Regenerated.
745
746 2004-09-15  Richard Henderson  <rth@redhat.com>
747
748         * sysdeps/alpha/fpu/libm-test-ulps: Update.
749         * scripts/data/c++-types-alpha-linux-gnu.data: New file.
750
751 2004-09-15  Ulrich Drepper  <drepper@redhat.com>
752
753         * nscd/aicache.c: Prefer using gethostbyname3_r NSS callback to also
754         get ttl and canonical name.  Use these two values.
755         * resolv/Versions: Export _nss_dns_gethostbyname3_r from libnss_dns.
756         * resolv/nss_dns/dns-host.c (getanswer_r): Take two new parameters.
757         If nonnull fill with TTL and pointer to canonical name respectively.
758         (_nss_dns_gethostbyaddr_r): Pass NULL in new parameters of getanswer_r.
759         (_nss_dns_gethostbyname2_r): Just wrapper around
760         _nss_dns_gethostbyname3_r.
761         (_nss_dns_gethostbyname3_r): Renamed from _nss_dns_gethostbyname2_r.
762         Take two new parameters which as passed to getanswer_r.
763
764         * nscd/Makefile (rountines): Add nscd_getai.
765         (nscd-modules): Add aicache.
766         * nscd/aicache.c: New file.
767         * nscd/nscd_getai.c: New file.
768         * nscd/cache.c (prune_cache): Handle GETAI request type.
769         * nscd/connections.c: Add GETAI support in request handling.
770         * nscd/nscd-client.h (request_type): Add GETAI.
771         Define ai_response_header and struct nscd_ai_result types.
772         (struct datahead): Add aidata field.
773         Declare __nscd_getai.
774         * nscd/nscd.c: Add getaddrinfo definition to catch problems.
775         * nscd/nscd.h: Declare addhstai and readdhstai.
776
777         * sysdeps/posix/getaddrinfo.c: Add support for using cached results.
778         * posix/Makefile (CFLAGS-getaddrinfo.c): Add -DUSE_NSCD.
779
780         * nscd/nscd-client.h  (struct datahead): Use uint8_t instead of bool.
781
782 2004-09-14  Ulrich Drepper  <drepper@redhat.com>
783
784         * misc/sys/cdefs.h: Remove debugging text from __P and __PMT.
785
786 2004-09-13  Ulrich Drepper  <drepper@redhat.com>
787
788         * misc/sys/cdefs.h: Restore old definition of __P.
789         * csu/munch.awk: Remove uses of __P and __PMT.
790         * gmon/gmon.c: Likewise.
791         * hesiod/hesiod.h: Likewise.
792         * include/stdio.h: Likewise.
793         * io/fts.c: Likewise.
794         * libio/genops.c: Likewise.
795         * libio/libioP.h: Likewise.
796         * libio/fileops.c: Likewise.
797         * libio/iolibio.h: Likewise.
798         * libio/libio.h: Likewise.
799         * libio/memstream.c: Likewise.
800         * libio/oldfileops.c: Likewise.
801         * libio/oldstdfiles.c: Likewise.
802         * libio/iopopen.c: Likewise.
803         * libio/vsnprintf.c: Likewise.
804         * libio/vswprintf.c: Likewise.
805         * libio/wgenops.c: Likewise.
806         * libio/oldiopopen.c: Likewise.
807         * locale/programs/xmalloc.c: Likewise.
808         * locale/programs/xstrdup.c: Likewise.
809         * malloc/mtrace.c: Likewise.
810         * misc/getttyent.c: Likewise.
811         * misc/getusershell.c: Likewise.
812         * nis/rpcsvc/ypupd.h: Likewise.
813         * posix/fnmatch.h: Likewise.
814         * posix/glob.h: Likewise.
815         * resolv/arpa/nameser.h: Likewise.
816         * resolv/gethnamaddr.c: Likewise.
817         * resolv/resolv.h: Likewise.
818         * resolv/inet_net_ntop.c: Likewise.
819         * resolv/inet_net_pton.c: Likewise.
820         * resolv/res_init.c: Likewise.
821         * resolv/nss_dns/dns-network.c: Likewise.
822         * stdio-common/vfprintf.c: Likewise.
823         * stdio-common/reg-printf.c: Likewise.
824         * sysdeps/generic/chflags.c: Likewise.
825         * sysdeps/generic/fchflags.c: Likewise.
826         * sysdeps/generic/glob.c: Likewise.
827         * sysdeps/generic/printf_fphex.c: Likewise.
828         * sysdeps/generic/memcmp.c: Likewise.
829         * sysdeps/generic/memcopy.h: Likewise.
830         * sysdeps/generic/morecore.c: Likewise.
831         * sysdeps/generic/sstk.c: Likewise.
832         * sysdeps/posix/sigvec.c: Likewise.
833         * sysdeps/posix/ttyname_r.c: Likewise.
834         * sysdeps/standalone/arm/bits/errno.h: Likewise.
835         * sysdeps/standalone/standalone.h: Likewise.
836         * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise.
837         * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
838         * sysdeps/unix/arm/start.c: Likewise.
839         * sysdeps/unix/bsd/sigaction.c: Likewise.
840         * sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise.
841         * sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise.
842         * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise.
843         * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise.
844         * sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise.
845         * sysdeps/unix/sparc/start.c: Likewise.
846         * sysdeps/unix/sysv/getdents.c: Likewise.
847         * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise.
848         * sysdeps/unix/sysv/irix4/getgroups.c: Likewise.
849         * sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
850         * sysdeps/unix/sysv/irix4/getrusage.c: Likewise.
851         * sysdeps/unix/sysv/irix4/pathconf.c: Likewise.
852         * sysdeps/unix/sysv/irix4/setgroups.c: Likewise.
853         * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise.
854         * sysdeps/unix/sysv/irix4/start.c: Likewise.
855         * sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
856         * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise.
857         * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise.
858         * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise.
859         * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise.
860         * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
861         * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
862         * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise.
863         * sysdeps/unix/sysv/sysv4/setsid.c: Likewise.
864         * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
865         * sysdeps/unix/sysv/sysv4/waitpid.c: Likewise.
866         * sysdeps/unix/sysv/sysv4/solaris2/getdents.c: Likewise.
867         * time/tzset.c: Likewise.
868         * time/strftime_l.c: Likewise.
869         * time/strptime_l.c: Likewise.
870         * crypt/md5.h: Likewise.
871
872 2004-09-13  Andreas Jaeger  <aj@suse.de>
873
874         * configure.in: Support GCC 4.x.
875         * configure: Regenerated.
876
877 2004-09-13  Thorsten Kukuk  <kukuk@suse.de>
878
879         * nscd/nscd_stat.c: Don't access dbs[cnt].head for disabled services.
880
881         * nscd/nscd.init: Fix path to socket.
882
883 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
884
885         * nscd/nscd_helper.c (get_mapping): Correctly check cmsg length.
886         Avoid file descriptor leak in case of size mismatch.
887
888         * nscd/nscd-client.h: Fix database structure layout for biarch.
889         * nscd/mem.c (gc): Add casts to avoid warnings.
890
891         * nss/getent.c: Don't preconstruct help message.  Do it only when
892         needed.
893
894         * locale/programs/locale.c: Simplify help message printing.
895
896 2004-09-12  Roland McGrath  <roland@frob.com>
897
898         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]: Add decls
899         missing in last change.
900
901 2004-09-11  Thorsten Kukuk  <kukuk@suse.de>
902
903         * nis/nss_compat/compat-grp.c: Check that buflen is greater zero
904         before writing data into the buffer with negative offset.
905         * nis/nss_compat/compat-initgroups.c: Likewise.
906         * nis/nss_compat/compat-pwd.c: Likewise.
907         * nis/nss_compat/compat-spwd.c Likewise.
908
909 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
910
911         * misc/syslog.c (vsyslog): Fix copying of PID in case of
912         out-of-memory situation.  [BZ #365].
913
914         * sysdeps/alpha/fpu/bits/mathinline.h: Use __NTH instead of
915         __THROW in inline function definitions.
916
917         * posix/spawn.h [__USE_GNU]: Define POSIX_SPAWN_USEVFORK.
918         * posix/spawnattr_setflags.c: Check whether any unknown bit is set
919         in FLAGS parameter and fail if this is the case.
920         * sysdeps/posix/spawni.c: Use vfork if POSIX_SPAWN_USEVFORK flag is
921         set.
922
923         * nscd/pwdcache.c (cache_addpw): Sync also negative results to disk.
924         * nscd/grpcache.c (cache_addgr): Likewise.
925         * nscd/hstcache.c (cache_addhst): Likewise.
926
927 2004-09-11  Roland McGrath  <roland@frob.com>
928
929         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]:
930         Set _dl_phdr and _dl_phnum.
931         (init1): When bootstrap task, bail early and never examine *D.
932
933 2004-09-11  Alfred M. Szmidt  <ams@kemisten.nu>
934
935         * sysdeps/mach/hurd/i386/tls.h (__i386_set_gdt) [!HAVE_I386_SET_GDT]:
936         Cast THR, SEL and DESC to `void'.
937
938 2004-09-11  Ulrich Drepper  <drepper@redhat.com>
939
940         * nscd/connections.c (nscd_run): Call setup_thread only for enabled
941         databases.
942
943         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Use __NTH for __cmsg_nxthdr.
944
945 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
946
947         * nscd/nscd.c (pagesize_m1): New variable.
948         (main): Initialize it.
949         * nscd/nscd.h: Declare pagesize_m1.
950         * nscd/hstcache.c: Pass correctly aligned address to msync.
951         * nscd/grpcache.c: Likewise.
952         * nscd/pwdcache.c: Likewise.
953
954 2004-09-10  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
955
956         * sysdeps/unix/sysv/linux/sh/pthread_cond_wait.S: Decrement
957         __nwaiters.  If pthread_cond_destroy has been called and this is
958         the last waiter, signal pthread_cond_destroy caller and avoid
959         using the pthread_cond_t structure after unlock.
960         * sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Likewise.
961
962 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
963
964         * sysdeps/unix/sysv/linux/kernel-features.h: Don't define
965         __ASSUME_CLONE_STOPPED.
966
967 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
968
969         * misc/sys/cdefs.h (__REDIRECT_NTH): Change order of __THROW and
970         __asm__ for C++.  [BZ #377]
971
972 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
973
974         * nscd/nscd_stat.c: Improve output by also printing .shared and
975         .persistent.
976
977         * nscd/connections.c: Allow cache sharing to be really disabled.
978
979 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
980
981         * malloc/malloc.c (_int_free): Only do arena boundary check for
982         contiguous arenas.
983
984 2004-09-10  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
985
986         * stdlib/longlong.h [__M32R__] (add_ssaaaa, sub_ddmmss): Fix broken
987         instruct operands.
988         * elf/elf.h: Add R_M32R_* relocs.
989
990 2004-09-09  Ulrich Drepper  <drepper@redhat.com>
991
992         * misc/sys/cdefs.h: Despite what the gcc manual says, gcc 3.2
993         seems not to support the nothrow attribute.  Use it only for gcc
994         3.3 and higher.
995
996         * malloc/hooks.c (top_check): Print top chunk corruption as normal
997         error message.
998
999         * malloc/malloc.c (malloc_printerr): Don't make informational
1000         message look like error message.
1001
1002 2004-09-09  Andreas Jaeger  <aj@suse.de>
1003
1004         * nscd/Makefile (CFLAGS-nscd_setup_thread.c): Set to -fpie.
1005
1006 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1007
1008         * sysdeps/unix/sysv/linux/bits/socket.h (__SCM_CONNECT): Removed.
1009
1010         * malloc/malloc.c (_int_free): Add inexpensive double free and
1011         memory corruption tests.
1012         (malloc_printf_nc): Renamed to malloc_printerr.  Second parameter
1013         is no format string anymore.  Don't use stdio.  Adjust all callers.
1014         * malloc/hooks.c: Adjust malloc_printf_nc callers.
1015
1016 2004-09-08  Roland McGrath  <roland@redhat.com>
1017
1018         * malloc/mcheck.c: Don't use __P.
1019         Use prototypes definitions for static functions.
1020
1021 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1022
1023         * sysdeps/ia64/fpu/bits/mathinline.h: Use __NTH instead of __THROW.
1024
1025 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1026             Jakub Jelinek  <jakub@redhat.com>
1027
1028         * nscd/nscd-client.h: Add a few #includes.
1029
1030         * nscd/Makefile (nscd-modules): Add nscd_setup_thread.
1031         * nscd/connections.c (nscd_run): Call setup_thread for maintenance
1032         threads.
1033         * nscd/nscd-client.h (struct database_pers_head): Add
1034         nscd_certainly_running field.
1035         * nscd/nscd.h: Declare setup_thread.
1036         * nscd/nscd_helper.c (__nscd_get_map_ref): Avoid the time test if
1037         nscd_certainly_running is nonzero.
1038         * sysdeps/generic/nscd_setup_thread.c: New file.
1039         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: New file.
1040
1041 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1042
1043         * nscd/connections.c: Implement r/o sharing of nscd's cache with client
1044         processes via shared memory.
1045         * nscd/nscd-client.h: Likewise.
1046         * nscd/nscd.h: Likewise.
1047         * nscd/nscd_conf.c: Likewise.
1048         * nscd/nscd_getgr_r.c: Likewise.
1049         * nscd/nscd_getpw_r.c: Likewise.
1050         * nscd/nscd_gethst_r.c: Likewise.
1051         * nscd/nscd.conf: Add new config parameters.
1052         * nscd/Makefile (aux): Add nscd_helper.
1053         * nscd/nscd_helper.c: New file.
1054         * nscd/mem.c (gc): Indicate beginning and end of the gc cycle.
1055
1056         * nscd/hstcache.c: Simplify a lot.  We cache only the request itself,
1057         no derived information.
1058         * connections.c (nscd_init): Fix bug in testing size of the persistent.
1059
1060         * nis/Makefile (aux): Add nis_hash.
1061         * nis/nis_hash.c: New file.  Split out from nis_util.c.
1062         * nis/nis_util.c: Move __nis_hash code in separate file.
1063
1064         * csu/tst-atomic.c: Improve atomic_increment_val test which would
1065         not have found a ppc bug.
1066
1067         * sysdeps/s390/fpu/bits/mathinline.h: Remove unnecessary includes.
1068
1069         * malloc/arena.c: Remove __MALLOC_P uses.
1070         * malloc/malloc.c: Likewise.
1071
1072         * malloc/mtrace.c: Remove __P uses.
1073         * malloc/mcheck-init.c: Likewise.
1074
1075 2004-09-07  Jakub Jelinek  <jakub@redhat.com>
1076
1077         * sysdeps/powerpc/powerpc64/configure.in: New file.
1078         * config.h.in (USE_PPC64_OVERLAPPING_OPD): Add.
1079         * configure.in (HAVE_ASM_GLOBAL_DOT_NAME): Remove.
1080         * sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
1081         (OPD_ENT, BODY_LABEL, ENTRY_1, ENTRY_2, END_2, DOT_PREFIX,
1082         BODY_PREFIX): Define.
1083         (ENTRY, DOT_LABEL, END, TRACEBACK, END_GEN_TB, EALIGN): Support
1084         HAVE_ASM_GLOBAL_DOT_NAME or no dot symbols,
1085         USE_PPC64_OVERLAPPING_OPD or never overlapping .opd entries.
1086         * sysdeps/powerpc/powerpc64/dl-machine.h: Include sysdep.h.
1087         (TRAMPOLINE_TEMPLATE, RTLD_START): Use the new sysdep.h macros.
1088
1089 2004-09-07  Ulrich Drepper  <drepper@redhat.com>
1090
1091         * malloc/malloc.h: Don't define __THROW if it is already defined.
1092
1093         * sysdeps/powerpc/bits/atomic.h (atomic_increment): Define.
1094         (atomic_decrement): Define.
1095
1096         * sysdeps/powerpc/bits/atomic.h: Implement atomic_increment_val and
1097         atomic_decrement_val.
1098         * sysdeps/powerpc/powerpc32/bits/atomic.h: Likewise.
1099         * sysdeps/powerpc/powerpc64/bits/atomic.h: Likewise.
1100
1101         * csu/tst-atomic.c (do_test): Add tests of atomic_increment_val
1102         and atomic_decrement_val.
1103
1104         * include/atomic.h: Define atomic_increment_val, atomic_decrement_val,
1105         and atomic_delay is not already defined.
1106         * sysdeps/i386/i486/bits/atomic.h: Define atomic_delay.
1107         * sysdeps/x86_64/bits/atomic.h: Likewise.
1108
1109         * miscd/sys/cdefs.h (__NTH): New macro.
1110         (__THROW): Define using nothrow attribute for C code and gcc >= 3.2.
1111         (__REDIRECT_NTH): New macro.
1112         * argp/argp.h: Use __NTH and __REDIRECT_NTH where necessary.
1113         * ctype/ctype.h: Likewise.
1114         * dirent/dirent.h: Likewise.
1115         * io/fcntl.h: Likewise.
1116         * io/sys/sendfile.h: Likewise.
1117         * io/sys/stat.h: Likewise.
1118         * io/sys/statfs.h: Likewise.
1119         * io/sys/statvfs.h: Likewise.
1120         * libio/bits/stdio.h: Likewise.
1121         * misc/sys/mman.h: Likewise.
1122         * posix/unistd.h: Likewise.
1123         * resource/sys/resource.h: Likewise.
1124         * rt/aio.h: Likewise.
1125         * signal/signal.h: Likewise.
1126         * stdlib/stdlib.h: Likewise.
1127         * string/argz.h: Likewise.
1128         * string/string.h: Likewise.
1129         * sysdeps/generic/inttypes.h: Likewise.
1130         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
1131         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
1132         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
1133         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
1134         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
1135         * sysdeps/unix/sysv/linux/bits/sys/sysmacros.h: Likewise.
1136         * wcsmbs/wchar.h: Likewise.
1137
1138         * sysdeps/generic/glob.c: Use __PMT isntead of __P where appropriate.
1139
1140         * resolv/gethnamaddr.c (getanswer): Remove __P use in variable
1141         definition.
1142
1143         * io/sys/poll.h: Remove __THROW from poll prototype, it's a
1144         cancellation point.
1145
1146         * io/fts.c (fts_open): Remove uses of __P.
1147
1148         * include/stdlib.h: No need to use __THROW in this header.
1149
1150 2004-09-06  Roland McGrath  <roland@frob.com>
1151
1152         * sysdeps/mach/hurd/dl-sysdep.c (__writev): Does use assert on FD
1153         validity, since __assert_fail gets to here anyway.  Just fail.
1154
1155 2004-09-06  Ulrich Drepper  <drepper@redhat.com>
1156
1157         * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix problem with
1158         AF_UNSPEC lookup with AI_CANONNAME of name which has only IPv6
1159         addresses.
1160
1161 2004-09-05  Richard Henderson  <rth@redhat.com>
1162
1163         * sysdeps/alpha/fpu/fraiseexcpt.c: Remove file.
1164         * sysdeps/unix/sysv/linux/kernel-features.h
1165         (__ASSUME_IEEE_RAISE_EXCEPTION): New.
1166         * sysdeps/unix/sysv/linux/alpha/fraiseexcpt.c: New file.
1167         * sysdeps/unix/sysv/linux/alpha/kernel_sysinfo.h: New file.
1168         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use it.
1169         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
1170
1171 2004-09-05  Richard Henderson  <rth@redhat.com>
1172
1173         * sysdeps/alpha/div.S: Save and restore FPCR around fp operations.
1174         * sysdeps/alpha/divl.S, sysdeps/alpha/divq.S, sysdeps/alpha/divqu.S,
1175         sysdeps/alpha/ldiv.S, sysdeps/alpha/reml.S, sysdeps/alpha/remq.S,
1176         sysdeps/alpha/remqu.S: Likewise.
1177         * sysdeps/alpha/div_libc.h (FRAME): Increase to 64.
1178
1179 2004-09-05  Ulrich Drepper  <drepper@redhat.com>
1180
1181         * nscd/cache.c (cache_add): Correctly log GETHOSTBYADDR and
1182         GETHOSTBYADDRv6 requests.
1183
1184 2004-09-04  Ulrich Drepper  <drepper@redhat.com>
1185
1186         * nscd/pwdcache.c (cache_addpw): Use correct key length in
1187         cache_add calls.
1188         * nscd/grpcache.c (cache_addgr): Likewise.
1189
1190 2004-09-03  Alfred M. Szmidt  <ams@kemisten.nu>
1191
1192         * sysdeps/mach/hurd/i386/tls.h (THREAD_DTV): Changed type of _DTV
1193         to `dtv_t *'.
1194
1195 2004-09-03  Ulrich Drepper  <drepper@redhat.com>
1196
1197         * nscd/nscd.c (parse_opt): Use writev instead of two write for
1198         invalidate command.
1199
1200 2004-09-02  Ulrich Drepper  <drepper@redhat.com>
1201
1202         * nscd/connections.c (nscd_run): Check early for invalid request types.
1203
1204 2004-09-02  Roland McGrath  <roland@frob.com>
1205
1206         * sysdeps/mach/hurd/i386/tls.h (TLS_INIT_TP_EXPENSIVE): New macro.
1207         (INSTALL_NEW_DTV, THREAD_DTV): Rewritten to fetch the right word.
1208         (THREAD_SELF): New macro.
1209
1210 2004-09-02  Steven Munroe  <sjmunroe@us.ibm.com>
1211
1212         [BZ #357]
1213         * stdlib/tst-setcontext.c (test_stack): Added test for stack clobber.
1214         (main): Call test_stack.
1215         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
1216         (__getcontext): Push stack frame then save parms in local frame.
1217         Improve instruction scheduling.
1218         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
1219         (__swapcontext): Likewise.
1220
1221 2004-09-01  Andreas Schwab  <schwab@suse.de>
1222
1223         * sysdeps/unix/sysv/linux/ia64/sys/ucontext.h [g++ >= 3.5]: Use
1224         __builtin_offsetof.
1225
1226 2004-09-01  Jakub Jelinek  <jakub@redhat.com>
1227
1228         [BZ #361]
1229         * posix/fnmatch_loop.c (FCT): For backslash between brackets, branch
1230         to normal_bracket after fetching the next character.
1231         * posix/tst-fnmatch.input: Add 25 new tests.
1232         Reported by Markus Oberhumer <markus@oberhumer.com>.
1233
1234 2004-09-01  Ulrich Drepper  <drepper@redhat.com>
1235
1236         * elf/rtld.c (dl_main): First check existence of ld.so.preload
1237         with access.
1238
1239 2004-09-01  Roland McGrath  <roland@redhat.com>
1240
1241         * sysdeps/unix/sysv/linux/bits/waitflags.h
1242         (WSTOPPED, WEXITED, WCONTINUED, WNOWAIT): New macros.
1243         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_WAITID_SYSCALL):
1244         New macro.
1245         * sysdeps/unix/sysv/linux/waitid.c: New file.  Use new syscall when
1246         available, or fall back to the waitpid-based generic code.
1247
1248 2004-08-14  Alfred M. Szmidt  <ams@kemisten.nu>
1249
1250         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Let gcc
1251         clobber the `ebp' register.
1252         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Removed.
1253         Reverts change from 2004-05-07 by Jeroen Dekkers.
1254
1255         * sysdeps/mach/hurd/i386/init-first.c (init): Changed the type of
1256         NEWSP from `void *' to `int *'.  Changed all casts accordingly.
1257
1258 2004-08-31  Jakub Jelinek  <jakub@redhat.com>
1259
1260         * wcsmbs/wcsmbsload.c (__wcsmbs_getfct): Move attribute_hidden
1261         before return type.
1262         * locale/localename.c (__current_locale_name): Likewise.
1263
1264 2004-08-31  Jakub Jelinek  <jakub@redhat.com>
1265
1266         * elf/ldconfig.c (parse_conf): Add prefix argument, prepend it
1267         before arguments to add_dir and pass to parse_conf_include.
1268         (parse_conf_include): Add prefix argument, pass it down to
1269         parse_conf.
1270         (main): Call arch_startup.  Adjust parse_conf caller.
1271         Call add_arch_dirs.
1272         * sysdeps/generic/dl-cache.h (arch_startup, add_arch_dirs): Define.
1273         * sysdeps/unix/sysv/linux/i386/dl-cache.h: New file.
1274         * sysdeps/unix/sysv/linux/ia64/dl-cache.h (EMUL_HACK, arch_startup,
1275         add_arch_dirs): Define.
1276         * sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed: Prepend
1277         /emul/ia32-linux before the 32-bit ld.so pathname.
1278         * sysdeps/unix/sysv/linux/ia64/dl-procinfo.c: New file.
1279         * sysdeps/unix/sysv/linux/ia64/dl-procinfo.h: New file.
1280
1281 2004-08-30  Roland McGrath  <roland@frob.com>
1282
1283         * scripts/extract-abilist.awk: If `lastversion' variable defined, omit
1284         later sets from output.
1285         * Makerules (check-abi): Pass option to set that with value of
1286         LIB-abi-frozen variable if one is set.
1287
1288         * abilist/libcidn.abilist: New file (empty).
1289
1290 2004-08-30  Jakub Jelinek  <jakub@redhat.com>
1291
1292         * posix/bits/posix1_lim.h (_POSIX_CHILD_MAX, _POSIX_OPEN_MAX): If
1293         not __USE_XOPEN2K, use the Unix98 mandated values.
1294
1295 2004-08-27  Roland McGrath  <roland@redhat.com>
1296
1297         * configure.in (usetls): Default to yes.
1298         * configure: Regenerated.
1299
1300 2004-08-26  Roland McGrath  <roland@redhat.com>
1301
1302         * configure.in (add_ons_automatic): New variable, set to yes or no
1303         indicating --enable-add-ons with no explicit list.
1304         (running add-on fragments): Allow a fragment to modify $libc_add_on
1305         and have that affect its place in the list of add-ons to use.
1306         * configure: Regenerated.
1307
1308 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
1309
1310         * nscd/cache.c: Major rewrite.  The data is now optionally kept in
1311         a mmaped memory region which is automatically mirrored on disk.
1312         This implements persistent data storage.  The Memory handled
1313         needed to be completely revamped, it now uses a garbage collection
1314         mechanism instead of malloc.
1315         * nscd/connections.c: Likewise.
1316         * nscd/nscd.c: Likewise.
1317         * nscd/nscd.h: Likewise.
1318         * nscd/nscd_conf.c: Likewise.
1319         * nscd/nscd_stat.c: Likewise.
1320         * nscd/grpcache.c: Likewise.
1321         * nscd/hstcache.c:: Likewise.
1322         * nscd/pwdcache.c:: Likewise.
1323         * nscd/Makefile: Add rules to build mem.c.
1324         * nscd/mem.c: New file.
1325         * nscd/nscd.conf: Describe new configuration options.
1326
1327 2004-08-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1328
1329         * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
1330         NO_SGIDEFS_H isn't defined.
1331         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
1332         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
1333
1334         * sysdeps/unix/sysv/linux/sh/pread.c: Define NO_SGIDEFS_H and
1335         _MIPS_SIM.
1336         * sysdeps/unix/sysv/linux/sh/pwrite.c: Likewise.
1337         * sysdeps/unix/sysv/linux/sh/pread64.c: Likewise.
1338         * sysdeps/unix/sysv/linux/sh/pwrite64.c: Likewise.
1339
1340 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
1341
1342         * nscd/connections.c (nscd_run): atomic_increment was not missing.
1343
1344         * sysdeps/gnu/Makefile (libdl-sysdep_routines): Don't add eval.
1345         Patch by Greg Schafer.
1346
1347 2004-08-25  Richard Henderson  <rth@redhat.com>
1348
1349         * sysdeps/alpha/elf/start.S (_start): Use $15 as frame unwind
1350         instead of $31.  Zero $15.
1351         * sysdeps/unix/sysv/linux/alpha/clone.S (thread_start): Likewise.
1352
1353 2004-08-25  Ulrich Drepper  <drepper@redhat.com>
1354
1355         * sysdeps/powerpc/powerpc64/bits/atomic.h
1356         (__arch_compare_and_exchange_bool_32_acq): Fix case where oldval
1357         is negative.
1358         (__arch_compare_and_exchange_bool_32_rel): Likewise.
1359
1360         * nscd/connections.c: Make socket nonblocking so that threads
1361         don't get stuck on accept.  Fix locking.
1362
1363         * nscd/grpcache.c (cache_addgr): Use copy of original key in hash
1364         entry with alternative key.
1365         * nscd/pwdcache.c (cache_addpw): Likewise.
1366
1367 2004-08-25  Richard Sandiford  <rsandifo@redhat.com>
1368
1369         * sysdeps/mips/dl-machine.h (_dl_start_user): Don't set
1370         __libc_stack_end.
1371
1372 2004-08-23  Ulrich Drepper  <drepper@redhat.com>
1373
1374         * sysdeps/gnu/netinet/udp.h: Cosmetic changes.  Remove unnecessary
1375         __BEGIN_DECLS/__END_DECLS.
1376
1377 2004-08-23  Andreas Jaeger  <aj@suse.de>
1378
1379         [BZ #341]
1380         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_NOATIME): Define.
1381         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (O_NOATIME): Likewise.
1382         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (O_NOATIME): Likewise.
1383         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (O_NOATIME): Likewise.
1384         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (O_NOATIME): Likewise.
1385         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_NOATIME): Likewise.
1386         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (O_NOATIME): Likewise.
1387         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (O_NOATIME): Likewise.
1388         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_NOATIME): Likewise.
1389         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (O_NOATIME): Likewise.
1390         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (O_NOATIME): Likewise.
1391         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_NOATIME): Likewise.
1392         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (O_NOATIME): Likewise.
1393
1394 2004-08-21  Ulrich Drepper  <drepper@redhat.com>
1395
1396         * malloc/hooks.c (DEFAULT_CHECK_ACTION): Moved to malloc.c.
1397         (check_action): Likewise.
1398         When printing error messages, use malloc_printf_nc now instead of
1399         fiddling with the streams cancellation flag in every place.
1400         * malloc/malloc.c (DEFAULT_CHECK_ACTION): New definition.  Change
1401         default to 3.
1402         (check_action): New variable.
1403         (unlink): Print error message and eventually terminate in case list
1404         is corrupted.
1405         (malloc_printf_nc): New function.  Use it in _int_free.
1406         Change proposed by Arjan van de Ven.
1407
1408         * dlfcn/Makefile: Don't build eval.c anymore.
1409
1410 2004-08-20  Roland McGrath  <roland@frob.com>
1411
1412         * csu/Makefile ($(objpfx)version-info.h): Use printf in place
1413         of echo -e for POSIX.2 portability.
1414         Reported by Paul Jarc <prj@po.cwru.edu>.
1415
1416 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
1417
1418         * sysdeps/posix/getaddrinfo.c (gaih_inet): Minor optimizations in
1419         list generation.
1420
1421         * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't use
1422         getcanonname_r function if AI_CANONNAME flag is not set in
1423         request.
1424
1425         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss):
1426         Initialize mysize with limits only if latter is >= 0.  Use mysize
1427         in malloc call.
1428
1429 2004-08-19  Jakub Jelinek  <jakub@redhat.com>
1430
1431         * sysdeps/posix/getaddrinfo.c (gaih_inet): Cast canon to (char *)
1432         to avoid warning.
1433
1434         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Initialize
1435         status to NSS_STATUS_UNAVAIL.
1436
1437 2004-08-19  Jakub Jelinek  <jakub@redhat.com>
1438
1439         * sysdeps/powerpc/powerpc64/configure.in: New file.
1440         * sysdeps/powerpc/powerpc64/configure: Rebuilt.
1441         * config.h.in (USE_PPC64_OVERLAPPING_OPD): Add.
1442         * configure.in (HAVE_ASM_GLOBAL_DOT_NAME): Remove.
1443         * configure: Rebuilt.
1444         * sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
1445         (OPD_ENT, BODY_LABEL, ENTRY_1, ENTRY_2, END_2, DOT_PREFIX,
1446         BODY_PREFIX): Define.
1447         (ENTRY, DOT_LABEL, END, TRACEBACK, END_GEN_TB, EALIGN): Support
1448         HAVE_ASM_GLOBAL_DOT_NAME or no dot symbols,
1449         USE_PPC64_OVERLAPPING_OPD or never overlapping .opd entries.
1450         * sysdeps/powerpc/powerpc64/dl-machine.h: Include sysdep.h.
1451         (TRAMPOLINE_TEMPLATE, RTLD_START): Use the new sysdep.h macros.
1452
1453 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
1454
1455         * sysdeps/posix/getaddrinfo.c (gaih_inet): Use h->h_name in the
1456         cannoname lookup since it has the FQDN even if the original NAME
1457         value has not.
1458
1459 2004-08-18  Ulrich Drepper  <drepper@redhat.com>
1460
1461         * sysdeps/posix/getaddrinfo.c (gaih_inet): Store NAME parameter
1462         pointer in new variable ORIG_NAME and use this pointer when
1463         determination of canonical name failed, not the possibly IDN
1464         translated value of NAME.
1465
1466 2004-08-17  Ulrich Drepper  <drepper@redhat.com>
1467
1468         * resolv/resolv.h (RES_DEFAULT): Add RES_NOIP6DOTINT.
1469         * resolv/res_init.c (res_setoptions): Recognize ip6-dotint option.
1470         Reset RES_NOIP6DOTINT flag in this case..
1471
1472         * sysdeps/posix/getaddrinfo.c: Fix memory handling of
1473         ai_canonname.
1474
1475 2004-08-16  Ulrich Drepper  <drepper@redhat.com>
1476
1477         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Don't use
1478         CNAME records, we better follow the chain of CNAME records which
1479         can be accomplished with A/AAAA lookups.
1480
1481 2004-08-15  Roland McGrath  <roland@redhat.com>
1482
1483         * sysdeps/unix/sysv/linux/bits/resource.h (enum __rusage_who):
1484         Remove __RUSAGE_BOTH constant and RUSAGE_BOTH macro.
1485         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
1486         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
1487         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
1488
1489 2004-08-15  Roland McGrath  <roland@frob.com>
1490
1491         * sysdeps/i386/i686/Makefile (elide-routines.os): Append hp-timing to
1492         this, not ...
1493         (static-only-routines): ... this.
1494         * sysdeps/ia64/Makefile: Likewise.
1495         * sysdeps/sparc/sparc32/sparcv9/Makefile: Likewise.
1496         * sysdeps/sparc/sparc64/Makefile: Likewise.
1497         * sysdeps/x86_64/Makefile: Likewise.
1498         * sysdeps/i386/i686/hp-timing.c: Revert copyright terms change.
1499         * sysdeps/ia64/hp-timing.c: Likewise.
1500         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
1501         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
1502
1503         * csu/elf-init.c: Update copyright terms including special exception
1504         for these trivial files, which are statically linked into executables
1505         that use dynamic linking for the significant library code.
1506         * io/fstat.c: Likewise.
1507         * io/fstat64.c: Likewise.
1508         * io/lstat.c: Likewise.
1509         * io/lstat64.c: Likewise.
1510         * io/stat.c: Likewise.
1511         * io/stat64.c: Likewise.
1512         * stdlib/atexit.c: Likewise.
1513         * sysdeps/alpha/elf/initfini.c: Likewise.
1514         * sysdeps/alpha/elf/start.S: Likewise.
1515         * sysdeps/arm/elf/start.S: Likewise.
1516         * sysdeps/cris/elf/start.S: Likewise.
1517         * sysdeps/generic/initfini.c: Likewise.
1518         * sysdeps/generic/mknod.c: Likewise.
1519         * sysdeps/hppa/elf/initfini.c: Likewise.
1520         * sysdeps/hppa/elf/start.S: Likewise.
1521         * sysdeps/i386/elf/start.S: Likewise.
1522         * sysdeps/i386/i686/hp-timing.c: Likewise.
1523         * sysdeps/ia64/elf/initfini.c: Likewise.
1524         * sysdeps/ia64/elf/start.S: Likewise.
1525         * sysdeps/ia64/hp-timing.c: Likewise.
1526         * sysdeps/m68k/elf/start.S: Likewise.
1527         * sysdeps/mach/start.c: Likewise.
1528         * sysdeps/mips/elf/start.S: Likewise.
1529         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
1530         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
1531         * sysdeps/s390/s390-32/elf/start.S: Likewise.
1532         * sysdeps/s390/s390-32/initfini.c: Likewise.
1533         * sysdeps/s390/s390-64/elf/start.S: Likewise.
1534         * sysdeps/s390/s390-64/initfini.c: Likewise.
1535         * sysdeps/sh/elf/initfini.c: Likewise.
1536         * sysdeps/sh/elf/start.S: Likewise.
1537         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
1538         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
1539         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
1540         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
1541         * sysdeps/standalone/i386/start.S: Likewise.
1542         * sysdeps/standalone/i960/start.S: Likewise.
1543         * sysdeps/standalone/m68k/m68020/start.S: Likewise.
1544         * sysdeps/unix/arm/start.c: Likewise.
1545         * sysdeps/unix/bsd/osf/alpha/start.S: Likewise.
1546         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
1547         * sysdeps/unix/sparc/start.c: Likewise.
1548         * sysdeps/unix/start.c: Likewise.
1549         * sysdeps/unix/sysv/aix/start.s: Likewise.
1550         * sysdeps/unix/sysv/irix4/start.c: Likewise.
1551         * sysdeps/x86_64/elf/initfini.c: Likewise.
1552         * sysdeps/x86_64/elf/start.S: Likewise.
1553
1554 2004-08-15  Roland McGrath  <roland@redhat.com>
1555
1556         [BZ #227]
1557         * sysdeps/unix/sysv/linux/kernel-features.h
1558         (__ASSUME_BRK_PAGE_ROUNDED): New macro.
1559         * sysdeps/unix/sysv/linux/dl-sysdep.c (frob_brk)
1560         [! __ASSUME_BRK_PAGE_ROUNDED]: Adjust the break up if it falls within
1561         the partial page after the dynamic linker's own data segment.
1562
1563 2004-08-15  Ulrich Drepper  <drepper@redhat.com>
1564
1565         * sysdeps/posix/getaddrinfo.c (gaih_inet): Optimize generation of
1566         v4-mapped addresses a bit.
1567         (gethosts): Move alloca out of macro, so that it is done only once.
1568
1569         * sysdeps/posix/getaddrinfo.c (gaih_addrtuple): Change type of
1570         addr to avoid casts.
1571         (gethosts): Removed.
1572         (gethosts2): Renamed to gethosts.  Make it usable for family !=
1573         AF_UNSPEC.  Fix AI_V4MAPPED.
1574         (gaih_inet): Remove use of old gethosts.  Always use what used to be
1575         gethosts2.  If entry is found, try to use the same NSS module's
1576         getcanonname_r function.  Use gethostbyaddr for AI_CANONNAME only
1577         if getcanonname_r was not available.  Fix filtering of AI_V4MAPPED
1578         addresses.  Numerous cleanups.
1579         * resolv/nss_dns/dns-canon.c: New file.
1580         * resolv/Makefile (libnss_dns-routines): Add dns-canon.
1581         * resolv/Versions (libnss_dns): Add _nss_dns_getcanonname_r.
1582
1583         * elf/Makefile: Add rules to build and run tst-dlopenrpath.
1584         * elf/tst-dlopenrpath.c: New file.
1585         * elf/tst-dlopenrpathmod.c: New file.
1586
1587         * intl/tst-gettext.sh: Adjust for change of de.po file to UTF-8.
1588         * intl/tst-gettext.c: Likewise.
1589
1590         * nss/getent.c (ahosts_keys_int): Correctly print IPv6 addresses.
1591
1592         * nss/getent.c: Allow queries for getaddrinfo with AF_INET and
1593         AF_INET6.
1594
1595 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
1596
1597         * po/de.po: Update from translation team.
1598
1599 2004-08-14  Roland McGrath  <roland@frob.com>
1600
1601         * sysdeps/mach/configure: Regenerated.
1602         * sysdeps/mach/hurd/configure: Regenerated.
1603
1604 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
1605
1606         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If RFC3484 sorting is
1607         performed, make sure it is still the first entry after sorting
1608         that has the ai_canonname information.
1609
1610         * sysdeps/posix/getaddrinfo.c (gaih_inet): Really set ai_canonname
1611         only in one entry.
1612
1613 2004-08-13  Daniel Jacobowitz  <dan@debian.org>
1614
1615         * scripts/output-format.sed: Handle default case of three-argument
1616         OUTPUT_FORMAT.
1617
1618         * sysdeps/arm/machine-gmon.h (mcount_internal): Mark as
1619         __attribute_used__.
1620
1621 2004-08-13  Ulrich Drepper  <drepper@redhat.com>
1622
1623         * nss/getent.c (ahosts_keys): ai_canonname is NULL for all but the
1624         first returned entry.  Print name only if not NULL.
1625
1626         * nis/nss_nis/nis-netgrp.c: Remove locking by using data in struct
1627         __netgrent object passed in instead of global variables.
1628         Optimize.
1629         * nis/nss_nisplus/nisplus-netgrp.c: Remove locking by using data
1630         in struct __netgrent object passed in instead of global variables.
1631         * inet/netgroup.h (struct __netgrent): Add service_user field.
1632         Move cursor in anonymous union, add new field location to that
1633         union.
1634         * inet/getnetgrent_r.c: Extensive rewrite to really enable
1635         concurrent uset of set/get/endnetgrent and innetgr.
1636         Reported by Chuck Simmons.
1637
1638         * inet/netgroup.h (struct name_list): Replace name pointer with
1639         zero-sized array.
1640         * inet/getnetgrent_r.c: Adjust code for change in name_list
1641         layout.  Numerous strdup and free calls removed.
1642
1643         * elf/sprof.c (read_symbols): When comparing aliases, prefer
1644         non-hidden over hidden symbols and strong over weak symbols
1645         if both don't start with '_'.
1646
1647         * malloc/malloc.c: Use strong_alias instead of weak_alias wherever
1648         possible.
1649
1650 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
1651
1652         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
1653         RUSAGE_ enums as __RUSAGE_ and adjust macros accordingly.
1654         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
1655         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
1656         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
1657         Define non-standard RLIMIT_ enums as __RLIMIT_ and adjust macros
1658         accordingly.
1659
1660 2004-08-11  Andreas Schwab  <schwab@suse.de>
1661
1662         * resolv/res_libc.c: Move definition of __res_initstamp ...
1663         * resolv/res_init.c: ... here.
1664
1665 2004-08-10  GOTO Masanori  <gotom@debian.or.jp>
1666
1667         * locale/C-time.c: Change default ERA value from NULL to "".
1668         * locale/tst-C-locale.c: Add test case for ERA keywords.
1669
1670 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
1671
1672         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
1673         RLIMIT__ enums as __RLIMIT_ and adjust macros accordingly.
1674         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
1675         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
1676
1677 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
1678
1679         * sysdeps/unix/sysv/linux/bits/resource.h (RLIMIT_SIGPENDING,
1680         RLIMIT_MSGQUEUE): Add.
1681         (RLIMIT_NLIMITS, RLIM_NLIMITS): Adjust.
1682         * sysdeps/unix/sysv/linux/alpha/bits/resource.h (RLIMIT_SIGPENDING,
1683         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
1684         (RLIM_NLIMITS): Adjust.
1685         * sysdeps/unix/sysv/linux/sparc/bits/resource.h (RLIMIT_SIGPENDING,
1686         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
1687         (RLIM_NLIMITS): Adjust.
1688         * sysdeps/unix/sysv/linux/mips/bits/resource.h (RLIMIT_SIGPENDING,
1689         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
1690         (RLIM_NLIMITS): Adjust.
1691
1692 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
1693
1694         * resolv/res_query.c (__libc_res_nsearch): Protect the debugging
1695         printf with #ifdef DEBUG and RES_DEBUG check.
1696
1697         * sysdeps/unix/sysv/linux/bits/shm.h: Move __END_DECLS after
1698         __USE_MISC #endif.
1699         * sysdeps/generic/bits/shm.h: Add __BEGIN_DECLS for __getpagesize
1700         declaration.
1701         * sysdeps/gnu/bits/shm.h: Likewise.
1702         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
1703         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
1704         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
1705         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
1706         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
1707
1708 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
1709
1710         * po/ca.po: Update from translation team.
1711
1712 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
1713
1714         * sysdeps/unix/sysv/linux/bits/shm.h: Add __BEGIN_DECLS for
1715         __getpagesize declaration.
1716
1717 2004-08-11  Roland McGrath  <roland@redhat.com>
1718
1719         * configure.in (libc_cv_cpp_asm_debuginfo): Add missing braces around
1720         commands inside &&.
1721         Reported by Andreas Schwab <schwab@suse.de>.
1722         * configure: Regenerated.
1723
1724         * posix/tst-waitid.c (do_test): Ignore SIGCHLD before cleanup SIGKILL.
1725
1726 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
1727
1728         * time/tzset.c (tzset_internal): Add new parameter which is
1729         nonzero if called through tzset.  Use TZDEFAULT name including
1730         name comparison if the new parameter is zero.  This means implicit
1731         tzset calls will not cause files to be opened and read by tzfile.c
1732         all the time.
1733
1734 2004-08-11  Jakub Jelinek  <jakub@redhat.com>
1735
1736         * rt/tst-timer2.c (do_test): If timer_create fails, just continue.
1737         * rt/tst-timer4.c (do_test): If one of the timer_create calls fails,
1738         return 1 immediately.
1739
1740         * time/tzfile.c (__tzfile_read): Free transitions only if it will
1741         not be reused.
1742
1743         * sysdeps/ieee754/dbl-64/mpa.c: Include <sys/param.h>.
1744         * sysdeps/ieee754/dbl-64/mpa.h (MAX, MIN): Macros removed.
1745
1746         * stdio-common/tst-popen.c: Include <string.h>.
1747
1748         * resolv/res_send.c (__libc_res_nsend): Only define TMPBUF #if DEBUG.
1749
1750         * sysdeps/pthread/aio_misc.c (handle_fildes_io): Remove noreturn
1751         attribute.  Return NULL instead of calling pthread_exit at the end.
1752
1753 2004-08-11  Roland McGrath  <roland@redhat.com>
1754
1755         * iconvdata/testdata/ISO-2022-JP-3: Regenerated.
1756
1757 2004-07-23  Jakub Jelinek  <jakub@redhat.com>
1758
1759         [BZ #284]
1760         * include/features.h (_POSIX_SOURCE, _POSIX_C_SOURCE): Define
1761         if _XOPEN_SOURCE >= 500 even if __STRICT_ANSI__ is defined.
1762
1763 2004-08-10  Alfred M. Szmidt  <ams@kemisten.nu>
1764
1765         * sysdeps/generic/bits/in.h (struct ip_mreq): Remove definition.
1766
1767 2004-08-10  Jakub Jelinek  <jakub@redhat.com>
1768
1769         * libio/bits/stdio.h (fread_unlocked): Cast 0 to (size_t).
1770         (fwrite_unlocked): When checking if size * n is <= 8, cast each
1771         argument to size_t individually.  Cast n to (void) instead of
1772         (size_t), surround with (), return (size_t) 0 if one of n or size
1773         is 0.  [BZ #316]
1774         * stdio-common/Makefile (tests): Add tst-unlockedio.
1775         * stdio-common/tst-unlockedio.c: New test.
1776
1777 2004-08-09  Roland McGrath  <roland@frob.com>
1778
1779         * manual/install.texi (Supported Configurations): Replace bug-glibc
1780         mention with web URL.
1781         * INSTALL: Regenerated.
1782         * locale/iso-3166.def: Likewise, in comment.
1783         * locale/iso-4217.def: Likewise.
1784         * locale/iso-639.def: Likewise.
1785         * posix/cpio.h: Remove bug reporting comment.
1786
1787 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
1788
1789         * libio/bits/stdio.h (fread_unlocked): Add a couple of (size_t)
1790         casts to handle funny calls with floating point argument values
1791         and signed values correctly and without warning.
1792         (fwrite_unlocked): Likewise.  [BZ #309]
1793
1794         * malloc/memusage.c (me): Use creat64, not creat.
1795         * malloc/memusagestat.c: Fix handling of very large sizes.  [BZ #285]
1796         Patch by Guy Maor <guymaor@yahoo.com>.
1797
1798         * elf/ldconfig.c (options): Mark parameter option names as
1799         translatable.  [BZ #253]  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
1800
1801         * iconv/gconv_charset.h (strip): Also allow comma which is what is
1802         used to separate options.  [BZ #194]
1803
1804 2004-08-09  Roland McGrath  <roland@redhat.com>
1805
1806         * FAQ.in: Refer to web pages instead of bug-glibc.
1807         * FAQ: Regenerated.
1808
1809         * time/strptime_l.c: #include <stdbool.h>, `bool' used in last change.
1810
1811 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
1812
1813         * time/tzset.c (tzset_internal): If TZ is not set do not compare
1814         old and new tz value since it might be /etc/localtime in both
1815         cases although the file changed.  [BZ #154]
1816         Patch by Christian Franke <franke@computer.org>.
1817
1818         * time/tzfile.c (__tzfile_read): Determine dev/ino of file.
1819         Compare with values of previously opened file.  Don't do anything
1820         is they match.
1821
1822 2004-08-08  Ulrich Drepper  <drepper@redhat.com>
1823
1824         * elf/dl-load.c (_dl_map_object): If __RTLD_CALLMAP flag is set,
1825         reset loader before the actual loading.
1826         * elf/dl-open.c (dl_open_worker): If file name contains no path
1827         element determine map of caller.  Pass caller map in this case to
1828         _dl_map_object.  Set __RTLD_CALLMAP in mode.
1829         * include/dlfcn.h (__RTLD_CALLMAP): Define.  [BZ #116]
1830         Patch by Greg Wolodkin <greg@mathworks.com>.
1831
1832         * misc/syslog.c (openlog_internal): Always try both UDP and TCP.
1833         [BZ #108]  Patch mainly by Bjorn Andersson <bjorn@iki.fi>.
1834
1835         * configure.in: Also recognize i786. [BZ #106]
1836         Patch by <pluto@pld-linux.org>.
1837
1838         * resolv/res_query.c (__libc_res_nsearch): Correctly test whether
1839         name contains any dots. [BZ #95]
1840
1841         * resolv/res_send.c: Compiling with DEBUG defined works again.
1842         * resolv/gethnamaddr.c (dprintf): Renamed to Dprintf.  Adjust all
1843         callers.
1844
1845         * resolv/tst-leaks.c (TIMEOUT): Define so that if no server is
1846         available the process is not killed. [BZ #41]
1847
1848         * intl/tst-gettext.c (main): Improve some messages. [BZ #33]
1849
1850         * time/strptime_l.c (__strptime_internal): Fix handling of %Ey.
1851         [BZ #28]
1852
1853         * po/sv.po: Update from translation team.
1854
1855 2004-08-07  Ulrich Drepper  <drepper@redhat.com>
1856
1857         * inet/netinet/in.h: Add more const to the setipv4soucefilter,
1858         getsourcefilter, and setsourcefilter parameter list.
1859         * sysdeps/generic/setipv4sourcefilter.c: Likewise.
1860         * sysdeps/generic/getsourcefilter.c: Likewise.
1861         * sysdeps/generic/setsourcefilter.c: Likewise.
1862         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: Likewise.
1863         * sysdeps/unix/sysv/linux/getsourcefilter.c: Likewise.
1864         * sysdeps/unix/sysv/linux/setsourcefilter.c: Likewise.
1865
1866         * po/tr.po: Update from translation team.
1867
1868 2004-08-06  Ulrich Drepper  <drepper@redhat.com>
1869
1870         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): Fix typo.
1871         Reported by Paolo Bonzini.
1872
1873 2004-08-06  Jakub Jelinek  <jakub@redhat.com>
1874
1875         * sysdeps/ia64/dl-machine.h (elf_machine_fixup_plt): Add
1876         always_inline.
1877         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_runtime_setup,
1878         elf_machine_fixup_plt, elf_machine_plt_conflict): Likewise.
1879
1880         * sysdeps/unix/sysv/linux/netatalk/at.h: Include bits/sockaddr.h
1881         before including linux/atalk.h.
1882
1883         * resolv/res_libc.c: Include atomic.h.
1884
1885         * intl/finddomain.c (free_mem): Rename to...
1886         (_nl_finddomain_subfreeres): ... this.  Add
1887         __libc_freeres_fn_section.
1888         * intl/loadmsgcat.c (_nl_unload_domain): Add
1889         __libc_freeres_fn_section.
1890         * intl/gettextP.h (_nl_unload_domain): Move into #ifdef _LIBC.
1891         Add attribute_hidden.
1892         (_nl_findomain_subfreeres): New prototype.
1893         * iconv/gconv_db.c (free_mem): Call _nl_findomain_subfreeres.
1894
1895 2004-07-30  Guido Guenther  <agx@sigxcpu.org>
1896
1897         * nss/getent.c (passwd_keys): Use strtoul instead of isdigit to
1898         test if the key is numeric or not.
1899         (group_keys): Likewise.
1900
1901 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
1902
1903         * inet/netinet/in.h: Define struct ip_msfilter, IP_MSFILTER_SIZE,
1904         struct group_filter, and GROUP_FILTER_SIZE.
1905         * include/sys/socket.h: Declare __getsockopt.
1906         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: New file.
1907         * sysdeps/unix/sysv/linux/getipv4sourcefilter.c: New file.
1908         * sysdeps/unix/sysv/linux/setsourcefilter.c: New file.
1909         * sysdeps/unix/sysv/linux/getsourcefilter.c: New file. [BZ #211]
1910
1911         * po/ko.po: Update from translation team.
1912
1913 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
1914
1915         * hesiod/hesiod.c (__hesiod_res_get): Use calloc instead of malloc +
1916         memset.
1917         (__hesiod_res_set): Free nsaddrs.
1918
1919         * include/resolv.h (__res_maybe_init): Add prototype.
1920         * resolv/resolv.h (struct __res_state): Add _u._ext.initstamp field.
1921         * resolv/Versions (libc): Add __res_maybe_init@@GLIBC_PRIVATE.
1922         * resolv/res_libc.c (__res_initstamp, lock): New variables.
1923         (res_init): Increase __res_initstamp.
1924         (__res_maybe_init): New function.
1925         * resolv/res_init.c (__res_vinit): Initialize _u._ext.initstamp.
1926         * hesiod/hesiod.c (__hesiod_res_get): Use __res_maybe_init instead
1927         of RES_INIT check and {res_ninit,__res_ninit,res_init} call.
1928         * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise.
1929         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
1930         _nss_dns_gethostbyaddr_r): Likewise.
1931         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
1932         _nss_dns_getnetbyaddr_r): Likewise.
1933         * resolv/gethnamaddr.c (gethostbyname, gethostbyname2,
1934         gethostbyaddr): Likewise.
1935         * resolv/res_data.c (fp_nquery, res_mkquery, res_mkupdate,
1936         res_isourserver, res_sendsigned, res_update, res_search,
1937         res_querydomain): Likewise.
1938         * nss/getXXbyYY_r.c (INTERNAL (REENTRANT_NAME)): Likewise.
1939         * nss/digits_dots.c (__nss_hostname_digits_dots): Likewise.
1940         * nss/getnssent_r.c (__nss_setent, __nss_endent, __nss_getent_r):
1941         Likewise.
1942
1943 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
1944
1945         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set ai_family for
1946         V4-mapped IPv6 addresses and req->ai_family==AF_INET.
1947         Reported by A. Guru <a.guru@sympatico.ca>.
1948
1949         * po/sv.po: Update from translation team.
1950         * po/sk.po: Likewise.
1951         * po/pl.po: Likewise.
1952
1953 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
1954             Ulrich Drepper  <drepper@redhat.com>
1955
1956         * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Don't read more input
1957         characters than necessary.
1958
1959 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
1960
1961         * wcsmbs/Makefile (tests): Add tst-mbsrtowcs.
1962         * wcsmbs/tst-mbsrtowcs.c: New file.
1963
1964         * po/fr.po: Update from translation team.
1965
1966 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
1967
1968         * resolv/inet_pton.c (inet_pton4): Disallow octal numbers.  Reported
1969         by A. Guru <a.guru@sympatico.ca>.  [BZ #295]
1970
1971 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
1972
1973         * po/nl.po: Update from translation team.
1974
1975         * sysdeps/posix/getaddrinfo.c (gaih_inet): Recognize all the IPv4
1976         numeric address formats inet_addr knows.
1977         (getaddrinfo): Allow AI_NUMERICSERV flag.
1978         If neither IPv4 nor IPv6 interface is present we cannot make any
1979         decision for AI_ADDRCONFIG.  Fail if AI_NUMERICSERV is set and the
1980         string is not just a number.  Remove useless freeaddrinfo call.
1981         * resolv/netdb.h (AI_NUMERICSERV): Define.
1982         Based on a patch by a.guru@sympatico.ca.
1983
1984 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
1985
1986         * stdlib/strfmon_l.c (__vstrfmon_l): Memset whole info structure
1987         instead of trying to initialize some, but not all, fields one by
1988         one.
1989         * stdio-common/printf_size.c (printf_size): Initialize fb_info
1990         structure with *info instead of trying to initialize some, but not
1991         all, fields from it.
1992
1993         * nscd/connections.c (handle_request): Check if req->type is in
1994         LASTDBREQ .. LASTREQ range instead of req.
1995
1996         * locale/programs/linereader.c (lr_create): Initialize
1997         lr->return_widestr to 0.
1998
1999         * elf/dl-close.c (free_slotinfo): Add __libc_freeres_fn_section.
2000         (free_mem): Call free_slotinfo just once.
2001
2002         * stdio-common/tst-fmemopen.c (main): Check for MAP_FAILED instead
2003         of NULL.
2004
2005         * locale/localeinfo.h (_nl_locale_subfreeres): New prototype.
2006         * locale/setlocale.c (free_category): Add __libc_freeres_fn_section.
2007         (free_mem): Rename to _nl_locale_subfreeres.
2008         * iconv/gconv_db.c: Include locale/localeinfo.h.
2009         (free_derivation, free_modules_db): Add __libc_freeres_fn_section.
2010         (free_mem): Call _nl_locale_subfreeres.
2011         * iconv/gconv_dl.c (do_release_all): Add __libc_freeres_fn_section.
2012
2013 2004-08-04  Roland McGrath  <roland@frob.com>
2014
2015         * Makeconfig ($(common-objpfx)config.status):
2016         Fix typo: $(add_ons) -> $(add-ons).
2017         (Makeconfig-add-on): New variable.  When doing $(sysdep-makeconfigs)
2018         include, use black magic to get it set to an add-on's name during the
2019         include of the add-on's Makeconfig.
2020
2021         * configure.in: Use variable name `libc_add_on' when sourcing add-on
2022         configure fragments, so they can refer to this.
2023         * configure: Regenerated.
2024
2025 2004-08-04  Roland McGrath  <roland@redhat.com>
2026
2027         * posix/tst-waitid.c (test_child): Sleep a second before stopping.
2028         (do_test): Bump sleep to three seconds.
2029         (sigchld, check_sigchld): New functions.
2030         (do_test): Handle SIGCHLD and check for getting the right details.
2031
2032         * posix/tst-waitid.c (do_test): Kill the child process when bailing
2033         out early on some failure.
2034         [WCONTINUED]: Test WCONTINUED functionality.
2035
2036 2004-08-03  Ulrich Drepper  <drepper@redhat.com>
2037
2038         * nscd/connections.c (handle_request): Print more descriptive
2039         message for invalid request types.
2040
2041 2004-08-02  Jakub Jelinek  <jakub@redhat.com>
2042
2043         * iconvdata/ibm932.c (BODY): Avoid binary search for ch >= 0xffff.
2044         Always treat high as highest number in range + 1.
2045         * iconvdata/ibm943.c (BODY): Likewise.
2046
2047 2004-07-31  Bruno Haible  <bruno@clisp.org>
2048
2049         * iconvdata/JISX0213.TXT: Updated to JISX0213 plane 1 version 2004.
2050         * iconvdata/jisx0213.c (__jisx0213_to_ucs_main,
2051         __jisx0213_to_ucs_pagestart, __jisx0213_from_ucs_level1,
2052         __jisx0213_from_ucs_level2): Regenerated.
2053         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): New function.
2054         * iconvdata/iso-2022-jp-3.c (JISX0213_1_2000_set): Renamed from
2055         JISX0213_1_set.
2056         (JISX0213_1_2004_set): New enum value.
2057         (BODY for FROM_LOOP): Treat ESC $ ( Q like ESC $ ( O.
2058         (BODY for TO_LOOP): For JISX 0213 plane 1 characters, emit ESC $ ( O
2059         when possible, ESC $ ( Q when needed.
2060         * iconvdata/testdata/EUC-JISX0213: Add the 10 new characters.
2061         * iconvdata/testdata/EUC-JISX0213..UTF8: Update.
2062         * iconvdata/testdata/SHIFT_JISX0213: Add the 10 new characters.
2063         * iconvdata/testdata/SHIFT_JISX0213..UTF8: Update.
2064         * iconvdata/testdata/ISO-2022-JP-3: Add the 10 new JISX0213 characters.
2065         * iconvdata/testdata/ISO-2022-JP-3..UTF8: Update.
2066
2067 2004-07-22  Bruno Haible  <bruno@clisp.org>
2068
2069         * iconvdata/gconv-modules (ISO-8859-7): Add alias ISO_8859-7:2003.
2070
2071 2004-07-29  David S. Miller  <davem@redhat.com>
2072
2073         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy): Optimize
2074         better for smaller than 256 byte copies.  Also, use only one
2075         unrolled loop instead of two for the large copy case.
2076
2077 2004-07-30  Richard Henderson  <rth@redhat.com>
2078
2079         * sysdeps/alpha/divq.S: Save t3 before it gets clobbered.
2080         * sysdeps/alpha/remq.S: Likewise.
2081         * sysdeps/alpha/div.S, sysdeps/alpha/ldiv.S: Rewrite with the
2082         new division algorithms in divl.S and divq.S respectively.
2083
2084 2004-07-28  GOTO Masanori  <gotom@debian.or.jp>
2085
2086         * timezone/asia: Update from tzdata2004b.
2087         * timezone/backward: Likewise.
2088         * timezone/europe: Likewise.
2089         * timezone/iso3166.tab: Likewise.
2090         * timezone/leapseconds: Likewise.
2091         * timezone/northamerica: Likewise.
2092         * timezone/southamerica: Likewise.
2093         * timezone/zone.tab: Likewise.
2094
2095         * timezone/private.h: Update from tzcode2004b.
2096         * timezone/zic.c: Likewise.
2097
2098 2004-07-27  Ulrich Drepper  <drepper@redhat.com>
2099
2100         * nscd/grpcache.c (cache_addgr): If necessary, add entry also
2101         under the name the user provided.
2102         * nscd/pwdcache.c (cache_addpw): Likewise.
2103
2104 2004-07-26  Roland McGrath  <roland@redhat.com>
2105
2106         * sysdeps/posix/waitid.c [WEXITED]: Clear WEXITED bit in OPTIONS for
2107         call to __waitpid.
2108
2109 2004-07-26  Ulrich Drepper  <drepper@redhat.com>
2110
2111         * nscd/hstcache.c (cache_addhst): Fix two scenarios which lead to
2112         memory leaks.
2113
2114         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Assign pointer for
2115         new buffer at the right time.
2116         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
2117
2118 2004-07-25  Ulrich Drepper  <drepper@redhat.com>
2119
2120         * inet/Versions [libc, GLIBC_2.3.4]: Add getipv4sourcefilter,
2121         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
2122         * inet/Makefile (routines): Likewise.
2123         * inet/netinet/in.h: Add prototypes for getipv4sourcefilter,
2124         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
2125         * sysdeps/generic/getipv4sourcefilter.c: New file.
2126         * sysdeps/generic/setipv4sourcefilter.c: New file.
2127         * sysdeps/generic/getsourcefilter.c: New file.
2128         * sysdeps/generic/setsourcefilter.c: New file.
2129
2130 2004-07-17  Steven Munroe  <sjmunroe@us.ibm.com>
2131
2132         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
2133         for POWER4 machines.
2134
2135 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
2136
2137         [BZ #274]
2138         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): Fix used >=
2139         BITS_PER_MP_LIMB shifting up.
2140         * stdlib/tst-strtod.c (main): Add new tests.
2141
2142 2004-07-23  Jakub Jelinek  <jakub@redhat.com>
2143
2144         [BZ #282]
2145         * libio/iopopen.c (_IO_new_popen): Use _IO_init instead of
2146         _IO_no_init.  Remove wd from struct locked_FILE.
2147         (_IO_wproc_jumps): Remove.
2148         Reported by Andrew Josey <a.josey@opengroup.org>.
2149         * stdio-common/Makefile (tests): Add tst-popen.
2150         * stdio-common/tst-popen.c: New test.
2151
2152 2004-07-23  Ulrich Drepper  <drepper@redhat.com>
2153
2154         * posix/bits/posix1_lim.h: Fix values for _POSIX_CHILD_MAX and
2155         _POSIX_OPEN_MAX.  Add _POSIX_HOST_NAME_MAX, _POSIX_SYMLINK_MAX,
2156         _POSIX_SYMLOOP_MAX, and _POSIX_RE_DUP_MAX.
2157         Reported by Andrew Josey.
2158
2159         * include/features.h: Document _POSIX_C_SOURCE == 200112L.
2160
2161         * grp/grp.h: Define gid_t if __USE_XOPEN2K is defined.
2162         * pwd/pwd.h: Define uid_t and gid_t if __USE_XOPEN2K is defined.
2163         * io/sys/stat.h: Define dev_t, gid_t, ino_t, mode_t, nlink_t,
2164         off_t, time_t, and uid_t if __USE_XOPEN2K is defined.
2165         * signal/signal.h: Define pid_t if __USE_XOPEN2K is defined.
2166         * posix/unistd.h: Define gid_t, off_t, pid_t, uid_t, and
2167         useconds_t if __USE_XOPEN2K is defined.
2168         * io/utime.h: Define time_t if __USE_XOPEN2K is defined.
2169         * libio/stdio.h: Declare fseeko and ftello if __USE_XOPEN2K is defined.
2170
2171 2004-07-19  Thorsten Kukuk  <kukuk@suse.de>
2172
2173         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't
2174         allocate memory for large temporary variables with alloca.
2175
2176 2004-07-22  Ulrich Drepper  <drepper@redhat.com>
2177
2178         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Compatibility
2179         code must have version GLIBC_2.0.  Patch by Dwayne McConnell.
2180
2181         * nscd/nscd_getgr_r.c (nscd_getgr_r): Avoid read call with NULL
2182         pointer and zero length.
2183
2184 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
2185
2186         * nscd/cache.c (prune_cache): Print correct list when debugging.
2187
2188 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
2189
2190         * resolv/res_libc.c (res_init): If RES_INIT is set and
2191         _res.nscount > 0, call __res_nclose and free nsaddrs.
2192         * resolv/Makefile: Add rules to build and run tst-leaks2.
2193         * resolv/tst-leaks2.c: New test.
2194
2195 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
2196
2197         * intl/libintl.h: Don't define macros for C++.
2198         Patch by Goto Masanori.
2199
2200 2004-07-22  GOTO Masanori  <gotom@debian.or.jp>
2201
2202         [BZ #276]
2203         * include/arpa/inet.h: Change inet_aton type from in_addr_t to int.
2204         * inet/arpa/inet.h: Likewise.
2205         * resolv/inet_addr.c: Likewise.
2206
2207 2004-07-21  Alexandre Oliva  <aoliva@redhat.com>
2208
2209         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: Add semtimedop.
2210
2211 2004-07-20  Roland McGrath  <roland@redhat.com>
2212
2213         * configure.in (add_ons): Substitute this.  Move $add_ons handling
2214         after AC_CANONICAL_HOST and default setting of $machine et al.
2215         Don't set $subdirs from $add_ons.
2216         Instead, source add-on/configure fragments early on.
2217         (base_machine): If it's already set, don't set it based on $machine.
2218         (libc_config_ok): New variable, set to no.  If an add-on fragment sets
2219         it to yes, skip the  tuple sanity check as if --enable-hacker-mode.
2220         (sysnames): Try appending add-on names after machine as well.
2221         * config.make.in (add-ons): Set from @add_ons@ instead of @subdirs@.
2222         * Makeconfig ($(common-objpfx)config.status): Also depend on configure
2223         files in $(add_ons) dirs.
2224
2225         * sysdeps/unix/sysv/linux/bits/in.h (struct ip_mreq): Remove
2226         definition, now in netinet/in.h proper.
2227
2228 2004-07-20  Alexandre Oliva  <aoliva@redhat.com>
2229
2230         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
2231         Sort by syscalls.  Make sure we get headers such as sgidefs.h from
2232         the build tree before just-installed ones.
2233
2234         * sysdeps/mips/atomicity.h: Use standard names for ABI macros,
2235         include sgidefs.h where appropriate.
2236         * sysdeps/mips/dl-machine.h: Likewise.
2237         * sysdeps/mips/machine-gmon.h: Likewise.
2238         * sysdeps/mips/bits/setjmp.h: Likewise.
2239         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
2240         * sysdeps/mips/mips64/__longjmp.c: Likewise.
2241         * sysdeps/mips/mips64/setjmp_aux.c: Likewise.
2242         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
2243         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
2244         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
2245         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
2246         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
2247         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
2248         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
2249         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise.
2250         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
2251         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: Likewise.
2252         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
2253         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise.
2254         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: Likewise.
2255         * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
2256         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
2257         * sysdeps/unix/sysv/linux/mips/sys/user.h: Likewise.
2258         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
2259         Likewise.
2260         * sysdeps/unix/sysv/linux/mips/configure.in (asm-unistd.h):
2261         Likewise.
2262
2263         * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Update to use
2264         _dl_lookup_symbol_x.
2265         (elf_machine_runtime_link_map): Don't INTUSE _dl_signal_error.
2266
2267 2004-07-20  Ulrich Drepper  <drepper@redhat.com>
2268
2269         * inet/netinet/in.h: Define struct ip_mreq and struct
2270         ip_mreq_source.
2271         Define struct group_req and struct group_source_req.
2272         * sysdeps/unix/sysv/linux/bits/in.h: Define IP_UNBLOCK_SOURCE,
2273         IP_BLOCK_SOURCE, IP_ADD_SOURCE_MEMBERSHIP,
2274         IP_DROP_SOURCE_MEMBERSHIP, IP_MSFILTER, MCAST_JOIN_GROUP,
2275         MCAST_BLOCK_SOURCE, MCAST_UNBLOCK_SOURCE, MCAST_LEAVE_GROUP,
2276         MCAST_JOIN_SOURCE_GROUP, MCAST_LEAVE_SOURCE_GROUP, and
2277         MCAST_MSFILTER.
2278         Define MCAST_INCLUDE and MCAST_EXCLUDE.
2279
2280         * iconvdata/gconv-modules: Add alias for IBM874 [BZ #244].
2281
2282 2004-07-19  Jakub Jelinek  <jakub@redhat.com>
2283
2284         [BZ #258]
2285         * math/libm-test.inc (max_value, min_value): New variables.
2286         (initialize): Initialize them.
2287         (pow_test): Add a couple of new tests.
2288         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Don't generate invalid
2289         exception if |y| >= 1U<<31.
2290         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Don't generate invalid
2291         exception if |y| >= 1L<<63.
2292         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
2293         If y*log2(x) overflows to +-inf, return still +inf/+0 instead of NaN.
2294         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
2295
2296 2004-07-18  Ulrich Drepper  <drepper@redhat.com>
2297
2298         * nscd/pwdcache.c (cache_addpw): Optimize case of unsuccessful
2299         lookup a bit.
2300         * nscd/grpcache.c (cache_addgr): Likewise.
2301         * nscd/hstcache.c (cache_addhst): Likewise.
2302
2303 2004-07-10  GOTO Masanori  <gotom@debian.or.jp>
2304
2305         * sysdeps/s390/s390-32/elf/start.S: Remove symbol _fp_hw.
2306         * sysdeps/s390/s390-64/elf/start.S: Likewise.
2307
2308 2004-04-16  Andreas Schwab  <schwab@suse.de>
2309
2310         * sysdeps/ia64/bits/atomic.h: Cast first argument of
2311         __sync_bool_compare_and_swap_si correct to void*.
2312
2313 2004-07-17  Ulrich Drepper  <drepper@redhat.com>
2314
2315         * iconv/iconv_prog.c (print_known_names): Make machine-readable
2316         output even less cluttered.
2317
2318 2004-07-16  Steven Munroe  <sjmunroe@us.ibm.com>
2319
2320         [BZ #269]
2321         * setjmp/Makefile (tests): Add bug269-setjmp.
2322         * setjmp/bug269-setjmp.c: New file.
2323         * sysdeps/powerpc/powerpc64/__longjmp-common.S [SHARED && !IS_IN_rtld]:
2324         Store R2 from jmpbuf in callers TOC save area.
2325         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [SHARED && !IS_IN_rtld]:
2326         Store R2 in TOC save area.
2327         * sysdeps/powerpc/powerpc64/setjmp-common.S [SHARED && !IS_IN_rtld]:
2328         Copy TOC save area from previous frame as R2 (TOC) in jmpbuf.
2329
2330 2004-07-16  Jakub Jelinek  <jakub@redhat.com>
2331
2332         * locale/newlocale.c: Include bits/libc-lock.h.
2333         (__libc_setlocale_lock): Extern decl.
2334         (__newlocale): Use it.
2335         Reported by Ulrich Weigand <Ulrich.Weigand@de.ibm.com>.
2336
2337 2004-07-15  Jakub Jelinek  <jakub@redhat.com>
2338
2339         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Remove
2340         static inline __attribute ((always_inline)).  Don't define if
2341         NO_CANCELLATION.
2342         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
2343         __fcntl_nocancel.
2344         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c (__fcntl_nocancel):
2345         Remove static inline __attribute ((always_inline)).  Don't define
2346         if NO_CANCELLATION.
2347         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
2348         __fcntl_nocancel.
2349         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Define to
2350         __libc_fcntl if NO_CANCELLATION and __ASSUME_FCNTL64 == 0.
2351         Don't define at all if NO_CANCELLATION and __ASSUME_FCNTL64 > 0.
2352         (__libc_fcntl): Don't define if __fcntl_nocancel is a macro.
2353
2354         [BZ #262]
2355         * sysdeps/i386/elf/start.S (_start): Use @GOT instead of @GOTOFF
2356         for main.
2357         * elf/Makefile: Add rules to build and run tst-pie1.
2358         * elf/tst-pie1.c: New test.
2359         * elf/tst-piemod1.c: New file.
2360
2361 2004-07-14  Jakub Jelinek  <jakub@redhat.com>
2362
2363         [BZ #266]
2364         * manual/string.texi (l64a): Note that the static buffer is 7 bytes
2365         long.  Rewrite example code so that it takes into account l64a output
2366         shorter than 6 characters.
2367         Reported by Julian Graham <julian.graham@aya.yale.edu>.
2368
2369 2004-07-14  Kaz  Kojima  <kkojima@rr.iij4u.or.jp>
2370
2371         * sysdeps/sh/dl-machine.h: Don't reset _dl_starting_up here.
2372         (elf_machine_rela_relative): Remove unused valiable.
2373
2374 2004-07-12  Paul Eggert  <eggert@cs.ucla.edu>
2375
2376         [BZ #263]
2377         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Don't store
2378         outside the buffer if the read returns 0.  __strtod_l can't set
2379         endp to NULL, so remove a test for that case.
2380
2381 2004-07-12  Roland McGrath  <roland@redhat.com>
2382
2383         * manual/signal.texi (Interrupted Primitives): Make clear that
2384         TEMP_FAILURE_RETRY evaluates its expression as long int and compares
2385         it to -1 to define "failure".
2386
2387 2004-07-10  Ulrich Drepper  <drepper@redhat.com>
2388
2389         * elf/ldconfig.c: Define PROCINFO_CLASS as static before including
2390         ldsodefs.h.
2391         * sysdeps/generic/ldsodefs.h: Only define PROCINFO_CLASS if it is not
2392         already defined.
2393         * sysdeps/i386/dl-procinfo.c: Define PROCINFO_CALLS only if not
2394         already defined.
2395
2396         * elf/rtld.c (print_statistics): Mark with noinline attribute.
2397         * sysdeps/i386/dl-machine.h (elf_machine_rel): Mark with always_inline
2398         attribute.
2399         (elf_machine_rel_relative): Likewise.
2400
2401         * include/string.h: Add libc_hidden_proto for __strtok_r and
2402         __strsep_g.
2403         * sysdeps/generic/strsep.c: Add libc_hidden_def.
2404         * sysdeps/generic/strtok_r.c: Likewise.
2405         * sysdeps/i386/strtok_r.S: Add alias for internal symbol.
2406         * sysdeps/i386/i686/strtok_r.S: Likewise.
2407         * sysdeps/x86_64/strtok_r.S: Likewise.
2408
2409 2004-07-09  Alexandre Oliva  <aoliva@redhat.com>
2410
2411         * inet/getnetgrent_r.c (internal_setnetgrent): Make it hidden
2412         instead of internal-linkage, such that we can alias to it.
2413         (internal_endnetgrent, internal_getnetgrent_r): Likewise.
2414
2415 2004-07-09  Ulrich Drepper  <drepper@redhat.com>
2416
2417         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Move attribute
2418         to the front for gcc 3.5+.
2419         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
2420         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
2421         * include/fcntl.h: Don't declare __fcntl_nocancel here if
2422         NO_CANCELLATION is defined.
2423
2424 2004-07-07  Jakub Jelinek  <jakub@redhat.com>
2425
2426         * elf/dl-fini.c (_dl_fini): Add nloaded variable, load
2427         GL(dl_nloaded) into it while still in critical section.
2428
2429 2004-07-06  Thorsten Kukuk  <kukuk@suse.de>
2430
2431         * nss/getent.c (print_group, print_passwd): Use %lu format for
2432         `unsigned long int' values.
2433
2434         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Fix syntax
2435         error typos in goto statements.
2436
2437 2004-07-07  Roland McGrath  <roland@frob.com>
2438
2439         * Makefile (dist-separate): New variable.
2440         (glibc-%.tar rule): Make separate tar files for add-ons listed there.
2441         Depend on their configure files.
2442         (dist-do-separate-dirs): New canned sequence to do that.
2443         (dist-separate-libidn, dist-separate-linuxthreads): New variables.
2444         (dist): Depend on add-on tar files based on $(dist-separate).
2445         (dist-version): New variable, default to $(version).
2446         (tag-for-dist, dist): Use that in place of $(version) in deps.
2447
2448 2004-07-07  Ulrich Drepper  <drepper@redhat.com>
2449
2450         * elf/dl-fini.c (_dl_fini): Move the unlock of the ld.so lock
2451         before the loop running the destructors.
2452
2453 2004-05-18  Andreas Schwab  <schwab@suse.de>
2454
2455         * elf/dl-load.c (_dl_map_object_from_fd): Use the end address of
2456         the first segment for mprotect, not l_text_end.
2457
2458 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
2459
2460         * elf/dl-profile.c (_dl_start_profile): Compact error handling.
2461         Remove hashfraction variable.  Make kcount and kcountsize local
2462         variables.
2463
2464         * elf/dl-init.c: Don't define and use _dl_starting_up if
2465         HAVE_INLINED_SYSCALLS is defined and the variable is not used.
2466         * elf/dl-support.c: Likewise.
2467         * elf/rtld.c: Likewise.
2468         * elf/dl-misc.c (_dl_debug_vdprintf): Use writev syscall directly
2469         if HAVE_INLINED_SYSCALLS is defined.
2470         * sysdeps/powerpc/powerpc64/dl-machine.h: Don't reset _dl_starting_up
2471         here.
2472         * sysdeps/powerpc/powerpc32/dl-start.S: Likewise.
2473         * sysdeps/unix/sysv/linux/configure.in: Define HAVE_INLINED_SYSCALLS.
2474         * config.h.in: Add entry for HAVE_INLINED_SYSCALLS.
2475
2476         * sysdeps/posix/profil.c: If compiled for ld.so, omit code which
2477         is needed to stop profiling.
2478         * elf/dl-open.c (dl_open_worker): If a newly opened object is to be
2479         profile make sure it cannot be unloaded.
2480
2481         * sysdeps/unix/sysv/linux/dl-origin.c: Inline readlink syscall.
2482
2483         * sysdeps/unix/sysv/linux/fcntl.c: If compiled without cancellation
2484         support, make sure the helper function is inlined.
2485         * sysdeps/unix/sysv/linux/pread.c: Likewise.
2486         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
2487         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
2488         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
2489
2490 2004-07-05  Jakub Jelinek  <jakub@redhat.com>
2491
2492         * include/string.h (ffs): Add libc_hidden_builtin_proto.
2493         * sysdeps/rs6000/ffs.c (ffs): Add libc_hidden_builtin_def.
2494         * sysdeps/alpha/alphaev67/ffs.S (ffs): Likewise.
2495         * sysdeps/alpha/ffs.S (ffs): Likewise.
2496         * sysdeps/s390/ffs.c (ffs): Likewise.
2497         * sysdeps/powerpc/ffs.c (ffs): Likewise.
2498         * sysdeps/i386/ffs.c (ffs): Likewise.
2499         * sysdeps/i386/i686/ffs.c (ffs): Likewise.
2500         * sysdeps/m68k/ffs.c (ffs): Likewise.
2501         * sysdeps/generic/ffs.c (ffs): Likewise.
2502         * sysdeps/m88k/ffs.c (ffs): Likewise.
2503         * sysdeps/am29k/ffs.c (ffs): Likewise.
2504         * sysdeps/i960/ffs.c (ffs): Likewise.
2505         * sysdeps/x86_64/ffs.c (ffs): Likewise.
2506
2507         * Makerules (check-abi): Use diff -p -U 0 instead of diff -pu0.
2508
2509         * sysdeps/powerpc/novmx-longjmp.c (__libc_longjmp,
2510         __libc_siglongjmp): Remove symbol_version.
2511         * sysdeps/powerpc/longjmp.c (__libc_longjmp, __libc_siglongjmp):
2512         Export @@GLIBC_PRIVATE, not @@GLIBC_2.3.4.
2513         * sysdeps/powerpc/sigjmp.c (__sigjmp_save): Use strong_alias
2514         unconditionally.
2515         * sysdeps/powerpc/novmx-sigjmp.c (__sigjmp_save): Remove.
2516         * sysdeps/powerpc/powerpc32/__longjmp.S (__longjmp): Use
2517         strong_alias instead of default_symbol_version, remove
2518         symbol_version.
2519         * sysdeps/powerpc/powerpc64/__longjmp.S (__longjmp): Likewise.
2520         * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__novmx__setjmp): Change
2521         into strong_alias to __novmxsetjmp.
2522         (__vmx__setjmp): Similarly with __vmxsetjmp.
2523         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
2524         default_symbol_version and symbol_version.
2525         * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__novmx__setjmp): Change
2526         into strong_alias to __novmxsetjmp.
2527         (__vmx__setjmp): Similarly with __vmxsetjmp.
2528         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
2529         default_symbol_version and symbol_version.
2530
2531         * nscd/nscd_getgr_r.c: Include stdio-common/_itoa.h.
2532
2533 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
2534
2535         * elf/rtld.c (dl_main): Mark dyn_temp with attribute_relro.
2536
2537 2004-07-04  Matthew Reppert  <arashi@kai.vm.bytemark.co.uk>
2538
2539         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Use libc_hidden_ver
2540         instead of libc_hidden_def.
2541
2542 2004-07-01  Roland McGrath  <roland@redhat.com>
2543
2544         * aclocal.m4: Add provide for AC_CONFIG_AUX_DIR_DEFAULT.
2545
2546         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Move top-level
2547         $(..)shlib-versions file to last in deps list.  This lets add-ons give
2548         more-specific matches that override defaults in the top-level file.
2549
2550         * sysdeps/unix/sysv/linux/configure.in: If arch_minimum_kernel was
2551         already set, don't set it or libc_cv_gcc_unwind_find_fde.
2552         * sysdeps/unix/sysv/linux/configure: Regenerated.
2553
2554 2004-07-01  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2555
2556         * sysdeps/s390/fpu/bits/mathinline.h [__LIBC_INTERNAL_MATH_INLINES]
2557         (__ieee754_sqrt): Define as __MATH_INLINE using sqdbr instruction.
2558         (__ieee754_sqrtf): Define as __MATH_INLINE using sqebr instruction.
2559         * sysdeps/s390/fpu/e_sqrt.c: New file.
2560         * sysdeps/s390/fpu/e_sqrtf.c: New file.
2561         * sysdeps/s390/Implies: New file.
2562         * sysdeps/s390/s390-32/Implies: Remove ieee754, move
2563         ieee754/dbl-64 and ieee754/flt-32 to s390/Implies.
2564         * sysdeps/s390/s390-64/Implies: Likewise.
2565
2566 2004-06-30  Jakub Jelinek  <jakub@redhat.com>
2567
2568         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Include tls.h.
2569         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
2570
2571         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (thread_start):
2572         DO_CALL (exit, 1) instead of branching to _exit.
2573         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (thread_start):
2574         Likewise.
2575
2576         * sysdeps/s390/fpu/bits/mathinline.h: New file.
2577
2578         * include/glob.h (glob64): Add libc_hidden_proto.
2579         * sysdeps/generic/glob64.c (glob64): Add libc_hidden_def.
2580         * sysdeps/gnu/glob64.c (glob64): Likewise.
2581         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Likewise.
2582
2583 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
2584
2585         * sysdeps/i386/fpu/libm-test-ulps: Update for GCC 3.4.
2586         * sysdeps/s390/fpu/libm-test-ulps: Likewise.
2587
2588 2004-06-11  Dwayne Grant McConnell  <dgm69@us.ibm.com>
2589
2590         * sysdeps/powerpc/fpu/s_lround.c: Removed.
2591         * sysdeps/powerpc/fpu/s_lroundf.c: Removed.
2592         * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: New file.
2593         * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: New file.
2594         * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: New file.
2595         * sysdeps/powerpc/powerpc32/fpu/s_floor.S: New file.
2596         * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: Removed.
2597         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S: New file.
2598         * sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: New file.
2599         * sysdeps/powerpc/powerpc32/fpu/s_lround.S: New file.
2600         * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: New file.
2601         * sysdeps/powerpc/powerpc32/fpu/s_rint.S: New file.
2602         * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: New file.
2603         * sysdeps/powerpc/powerpc32/fpu/s_round.S: New file.
2604         * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: New file.
2605         * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: New file.
2606
2607 2004-06-30  Ulrich Drepper  <drepper@redhat.com>
2608
2609         * include/net/if.h: Handle if_nameindex and if_freenameindex with
2610         libc_proto_hidden.
2611         * sysdeps/unix/sysv/linux/netlinkaccess.h: New file.
2612         * sysdeps/unix/sysv/linux/ifaddrs.c: Export netlink handling functions.
2613         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Implement using
2614         netlink if possible.  Fall back on ioctl method if necessary.
2615         * sysdeps/unix/sysv/linux/Dist: Add netlinkaccess.h.
2616
2617         * include/unistd.h: Declare __truncate.
2618         * sysdeps/generic/truncate.c: Also define __truncate.
2619         * sysdeps/mach/hurd/truncate.c: Likewise.
2620         * sysdeps/unix/common/syscalls.list: Likewise.
2621         * sysdeps/unix/sysv/linux/truncate64.c: Use __truncate, not truncate.
2622
2623 2004-06-29  Ulrich Drepper  <drepper@redhat.com>
2624
2625         * stdio-common/printf-parsemb.c (__parse_one_specmb): Initialize
2626         info.extra.  Patch by Marcus Meissner.
2627
2628 2004-06-29  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2629
2630         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
2631         Fix branch offset for a PLT entry.
2632
2633 2004-06-20  Jim Meyering  <jim@meyering.net>
2634
2635         * malloc/obstack.h (obstack_base): Cast to `void *', to align with
2636         documentation.
2637
2638 2004-06-28  Ulrich Drepper  <drepper@redhat.com>
2639
2640         * inet/bug-if1.c (do_test): Simply use 0 as invalid index.
2641         Workaround for [BZ #232].
2642
2643         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Use extend_alloca.
2644
2645 2004-06-28  GOTO Masanori  <gotom@debian.or.jp>
2646
2647         * iconv/gconv_simple.c: Use get16/put16 for user given buffer
2648         in ucs2/ucs2reverse when unaligned memory access is attempted.
2649         * iconv/tst-iconv5.c: New file.
2650         * iconv/Makefile (tests): Add tst-iconv5.
2651
2652 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
2653
2654         * inet/bug-if1.c: Include <string.h>.
2655
2656 2004-06-19  Roland McGrath  <roland@redhat.com>
2657
2658         * sysdeps/posix/waitid.c (do_waitid) [DO_WAITID]: Define function
2659         under this macro name instead.
2660         [NO_DO_WAITID]: Don't define it at all.
2661         (do_waitid) [WNOWAIT, WEXITED]: If these POSIX.1 waitid flag bits are
2662         defined, then return ENOTSUP for combinations of selection bits other
2663         than WEXITED and WEXITED|WSTOPPED, which this version cannot support.
2664
2665         * posix/tst-waitid.c: New file.
2666         * posix/Makefile (tests): Add it.
2667
2668 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
2669
2670         * sysdeps/unix/alpha/sysdep.h (inline_syscall6): Fix a typo.
2671
2672         [BZ #231]
2673         * sysdeps/unix/alpha/sysdep.S (__syscall_error): Avoid !samegp
2674         relocation in librt.so.
2675
2676         [BZ #230]
2677         * sysdeps/alpha/dl-machine.h (_dl_start_user): Use ldah/ldl to load
2678         _dl_skip_args.  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
2679
2680 2004-06-27  Ulrich Drepper  <drepper@redhat.com>
2681
2682         * elf/ldconfig.c (add_dir): Take chroot into account.
2683         Based on changes by HJ Lu and Hideki Iwamoto.
2684
2685         * nscd/connections.c (invalidate_cache): If the host cache has to
2686         be invalidated, re-read resolv.conf.
2687
2688         * resolv/resolv.h (RES_NOIP6DOTINT): Define.
2689         * resolv/res_init.c (res_setoptions): Handle no-ip6-dotint option.
2690         * resolv/gethnamaddr.c (gethostbyaddr): Don't lookup with .ip6.int
2691         if RES_NOIP6DOTINT flag is set.
2692         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise.
2693
2694 2004-06-25  Jakub Jelinek  <jakub@redhat.com>
2695
2696         * sysdeps/unix/sysv/linux/powerpc/fcntl.c: Move to...
2697         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fcntl.c: ... here.
2698         * sysdeps/unix/sysv/linux/powerpc/lockf64.c: Move to...
2699         * sysdeps/unix/sysv/linux/powerpc/powerpc32/lockf64.c: ... here.
2700         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: New file.
2701
2702         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_GETLK, F_SETLK,
2703         F_SETLKW): Fix values for -m32 -D_FILE_OFFSET_BITS=64.
2704
2705 2004-06-21  Jakub Jelinek  <jakub@redhat.com>
2706
2707         [BZ #231]
2708         * sysdeps/unix/alpha/Makefile: New file.
2709         * sysdeps/unix/alpha/rt-sysdep.S: New file.
2710         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
2711
2712 2004-06-18  Ulrich Drepper  <drepper@redhat.com>
2713
2714         * sysdeps/posix/getaddrinfo.c (gaih_inet): For AI_CANONNAME,
2715         determine the canonical name only for the first returned entry.
2716
2717         * inet/bug-if1.c: New file.
2718         * inet/Makefile (tests): Add bug-if1.
2719
2720 2004-06-18  Roland McGrath  <roland@frob.com>
2721
2722         * Makerules (compile-mkdep-flags): Add -MT $@.
2723
2724         * Makefile (dist, tag-for-dist): New targets.
2725         (files-for-dist, tag-of-stem): New variables.
2726         (glibc-%.tar glibc-linuxthreads-%.tar): New pattern rule.
2727         Make tar files using cvs export.
2728         (%.bz2, %.gz, tag-%): New pattern rules.
2729         (distribute): Variable removed.
2730         (+subdir_targets): Remove distinfo targets.
2731         (echo_subdirs, echo-distinfo, parent_echo-distinfo): Targets removed.
2732         (rpm/%): Pattern rule removed.
2733         * rpm/Makefile, rpm/rpmrc, rpm/template: Ancient cruft files removed.
2734         * Rules (subdir_echo-headers, subdir_echo-distinfo, subdir_dist):
2735         Targets removed.
2736         * Makerules (dist, subdir_distinfo): Targets removed.
2737         ($(objpfx)distinfo): Depend on $(distribute).
2738         * Make-dist: File removed.
2739
2740         * NEWS: Fix a typo.  Update bug-reporting instructions.
2741
2742 2004-06-17  Thorsten Kukuk  <kukuk@suse.de>
2743
2744         * sysdeps/unix/sysv/linux/sched_setaffinity.c
2745         (__sched_setaffinity_new): Set errno to EINVAL and return -1 if
2746         cpuset is wrongly set.
2747
2748 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
2749
2750         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
2751         for POWER4 machines.
2752
2753 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
2754
2755         [BZ #218]
2756         * sunrpc/pmap_prot2.c (xdr_pmaplist): When freeing, remember pml_next
2757         in a local variable, point rp to that local variable afterwards.
2758
2759 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
2760
2761         * sysdeps/ieee754/dbl-64/e_sqrt.c (__ieee754_sqrt): Handle special
2762         cases properly.
2763
2764 2004-06-17  Ulrich Drepper  <drepper@redhat.com>
2765
2766         * sysdeps/unix/sysv/linux/if_index.c (if_indextoname): Correct
2767         error value for unknown interface. [BZ #198]
2768
2769 2004-06-13  Jakub Jelinek  <jakub@redhat.com>
2770
2771         * sysdeps/i386/bits/string.h (memcpy): Add () around arguments.
2772         (memchr, __memrchr, strlen, strcmp, strncmp, __strchr_g, __strchr_c,
2773         __strchrnul_g, __strchrnul_c, strspn, strcspn, strpbrk): Add memory
2774         the asm uses as its input, either of size __n where __n is known or
2775         0xfffffff.
2776         (strstr): Add "memory" clobber.
2777
2778 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
2779
2780         [BZ #219]
2781         * nss/nsswitch.c (free_mem): Don't try to close a library handle
2782         if the handle is invalid.  Patch by David Kimdon <kimdon@esrf.fr>.
2783
2784 2004-06-11  Dmitry V. Levin  <ldv@altlinux.org>
2785
2786         [BZ #217]
2787         * debug/xtrace.sh: Fix typo in error diagnostics.
2788
2789 2004-06-14  Andreas Schwab  <schwab@suse.de>
2790
2791         * stdio-common/psignal.c (psignal): Don't use BUF when asprintf
2792         failed.
2793
2794 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
2795
2796         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Fix pasto
2797         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
2798         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Fix pasto
2799         that clobbers r19.
2800         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Fix pasto
2801         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
2802         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S:
2803         Fix setting of sigcontext.v_regs.  Fix pasto that clobbers r19.
2804         Fix pasto that overflowed sigcontext.v_reserve.
2805         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S:
2806         Fix pasto that clobbers r19.
2807         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Fix setting
2808         of sigcontext.v_regs.  Fix pasto that clobbers r19.  Fix pasto that
2809         overflowed sigcontext.v_reserve.
2810
2811 2004-05-04  H.J. Lu  <hongjiu.lu@intel.com>
2812
2813         [BZ #150]
2814         * sysdeps/generic/strtol_l.c (DEF): Use ".gnu.linkonce.r."
2815         instead of ".gnu.linkonce.ro." as the prefix for linkonce
2816         read-only section name.
2817
2818 2004-06-14  Richard Henderson  <rth@redhat.com>
2819
2820         * sysdeps/alpha/div_libc.h (_ITOFS): Use "sp" not "$sp".
2821         (_ITOFT, _FTOIT, _ITOFT2): Likewise.
2822
2823 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
2824
2825         * sysdeps/s390/s390-32/backtrace.c (init): Guard with #ifdef SHARED.
2826         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
2827         (__backtrace): Don't call init #ifndef SHARED.
2828         * sysdeps/s390/s390-64/backtrace.c (init): Guard with #ifdef SHARED.
2829         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
2830         (__backtrace): Don't call init #ifndef SHARED.
2831         * sysdeps/ia64/backtrace.c (init): Guard with #ifdef SHARED.
2832         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
2833         (__backtrace): Don't call init #ifndef SHARED.
2834
2835 2004-06-11  Roland McGrath  <roland@redhat.com>
2836
2837         * sysdeps/arm/strlen.S [__ARMEB__]: Compute correctly for big-endian.
2838         From Krzysztof Halasa <khc@pm.waw.pl>.
2839
2840 2004-06-10  Jakub Jelinek  <jakub@redhat.com>
2841
2842         * elf/tls-macros.h [__s390x__] (TLS_LD, TLS_GD): Clobber also r14.
2843
2844 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
2845
2846         [BZ #199]
2847         * crypt/md5-crypt.c (__md5_crypt): Only update buflen if realloc
2848         succeeds.  Reported by Miles Ohlrich <miles@cray.com>.
2849
2850         * elf/chroot_canon.c (chroot_canon): Avoid segfault if first malloc
2851         fails.  Avoid memory leak if realloc fails.
2852
2853 2004-06-09  Jakub Jelinek  <jakub@redhat.com>
2854
2855         * sysdeps/generic/setenv.c (setenv): Return -1/EINVAL if name is
2856         NULL, "" or contains '=' character in it.  Reported by
2857         Michael T Kerrisk <mtk-lists@gmx.net>.
2858         * stdlib/tst-environ.c: Include errno.h.
2859         (main): Add tests for these arguments to setenv/unsetenv.
2860
2861 2004-06-07  Roland McGrath  <roland@frob.com>
2862
2863         * NEWS: Update bug reporting instructions.  Fix some typos.
2864
2865 2004-06-05  Ulrich Drepper  <drepper@redhat.com>
2866
2867         * stdio-common/_itoa.h: Don't expand _itoa inline for libc.
2868         * stdio-common/_itoa.c: Add _itoa implementation.
2869
2870         * nscd/nscd_gethst_r.c (__nscd_open_socket): Change implementation
2871         to also send request.  Add parameter to allow this.
2872         Change callers.
2873         * nscd/nscd_getgr_r.c: Change __nscd_open_socket caller.
2874         * nscd/nscd_getpw_r.c: Likewise.
2875         * nscd/nscd-client.h: Change __nscd_open_socket prototype.
2876
2877 2004-06-05  Andreas Jaeger  <aj@suse.de>
2878
2879         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
2880         Handle more than 6 args correctly.  Based on a patch by Masahide
2881         Washizawa <washi@jp.ibm.com>.
2882
2883 2004-06-04  Ulrich Drepper  <drepper@redhat.com>
2884
2885         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use __nss_not_use_nscd_hosts
2886         in all places, not __nss_not_use_nscd_group.
2887         Reported by Philippe Gregoire.
2888
2889 2004-06-03  Ulrich Drepper  <drepper@redhat.com>
2890
2891         * sysdeps/i386/i486/bits/atomic.h: Optimize a bit.
2892
2893 2004-05-07  Dmitry V. Levin  <ldv@altlinux.org>
2894
2895         * argp/argp-help.c (__argp_error, __argp_failure): Check result
2896         of __asprintf call and don't use string if it failed.
2897         * stdio-common/psignal.c (psignal): Likewise.
2898         * locale/programs/localedef.c (more_help): Likewise.
2899         * resolv/res_hconf.c (arg_service_list, arg_trimdomain_list,
2900         arg_bool, parse_line): Check result of __asprintf calls and
2901         don't use string if they failed.
2902         * sunrpc/svc_simple.c (registerrpc, universal): Likewise.
2903         * elf/ldconfig.c (parse_conf_include): Check result of __asprintf
2904         call and exit if it failed.
2905
2906 2004-05-10  Jakub Jelinek  <jakub@redhat.com>
2907
2908         * sysdeps/posix/sysconf.c (__sysconf) <cases _SC_REALTIME_SIGNALS,
2909         _SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO,
2910         _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC, _SC_MAPPED_FILES,
2911         _SC_MEMLOCK, _SC_MEMLOCK_RANGE, _SC_MEMORY_PROTECTION,
2912         _SC_MESSAGE_PASSING, _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS,
2913         _SC_THREADS, _SC_THREAD_SAFE_FUNCTIONS, _SC_THREAD_ATTR_STACKADDR,
2914         _SC_THREAD_ATTR_STACKSIZE, _SC_THREAD_PRIORITY_SCHEDULING,
2915         _SC_THREAD_PRIO_INHERIT, _SC_THREAD_PRIO_PROTECT,
2916         _SC_THREAD_PROCESS_SHARED>: Return _POSIX_* value instead of 1.
2917         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf)
2918         <case _SC_MONOTONIC_CLOCK>: Return _POSIX_VERSION instead of 1.
2919
2920 2004-05-07  Jeroen Dekkers  <jeroen@dekkers.cx>
2921
2922         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Add
2923         -momit-leaf-frame-pointer.
2924
2925         * inet/test-ifaddrs.c (addr_string): Surround AF_PACKET case with
2926         #ifdef AF_PACKET.
2927
2928         * sysdeps/mach/hurd/getcwd.c
2929         (_hurd_canonicalize_directory_name_intern): Only realloc when
2930         size is <= 0.
2931
2932         * sysdeps/mach/hurd/mmap.c (__mmap): Fail when addr or offset
2933         isn't page aligned.
2934
2935         * sysdeps/mach/hurd/spawni.c (EXPAND_DTABLE): Set dtablesize to
2936         new size.
2937
2938         * sysdeps/mach/hurd/Versions (GLIBC_PRIVATE): Add __libc_read,
2939         __libc_write and __libc_lseek64.
2940
2941 2004-05-29  Roland McGrath  <roland@redhat.com>
2942
2943         * elf/Makefile (shared-only-routines): Add dl-caller.
2944
2945 2004-05-28  Ulrich Drepper  <drepper@redhat.com>
2946
2947         * sysdeps/powerpc/configure.in: New file.
2948
2949 2004-05-28  Steven Munroe  <sjmunroe@us.ibm.com>
2950
2951         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Add .machine
2952         "altivec" to enable VMX instructions.
2953         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
2954         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
2955         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
2956         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
2957         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
2958         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
2959         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
2960         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
2961         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
2962
2963 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
2964
2965         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Define using
2966         __builtin_expm1l for GCC 3.5+.
2967         (__expl): Define using __builtin_expl for GCC 3.4+.
2968         (exp, expf, expl): Don't define for GCC 3.4+.
2969         (tan, tanf, tanl): Don't define for GCC 3.5+.
2970         (__atan2l): Define using __builtin_atan2l for GCC 3.4+.
2971         (atan2, atan2f, atan2l): Don't define for GCC 3.4+ or !__FAST_MATH__.
2972         (fmod, fmodf, fmodl): Don't define for GCC 3.5+ or !__FAST_MATH__.
2973         (fabsf, fabsl): Only provide if __USE_MISC or __USE_ISOC99.
2974         (sin, sinf, sinl, cos, cosf, cosl, log, logf, logl): Don't define
2975         for GCC 3.4+.
2976         (log10, log10f, log10l, asin, asinf, asinl, acos, acosf, acosl):
2977         Don't define for GCC 3.5+.
2978         (atan, atanf, atanl): Don't define for GCC 3.4+ or !__FAST_MATH__.
2979         (log1p, log1pf, log1pl, logb, logbf, logbl, log2, log2f, log2l): Don't
2980         define for GCC 3.5+.
2981         (drem, dremf, dreml): Don't define for GCC 3.5+ or !__FAST_MATH__.
2982         * sysdeps/sparc/fpu/bits/mathinline.h (sqrt, sqrtf, sqrtl): Don't
2983         define for GCC 3.2+.
2984
2985 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
2986
2987         * string/bits/string2.h (__bzero): Define even for GCC 3.0+.
2988         * sysdeps/alpha/stpcpy.S (stpcpy): Add libc_hidden_builtin_def.
2989         * sysdeps/alpha/alphaev67/stpcpy.S (stpcpy): Likewise.
2990         * sysdeps/powerpc/powerpc32/stpcpy.S (stpcpy): Likewise.
2991         * sysdeps/powerpc/powerpc64/stpcpy.S (stpcpy): Likewise.
2992         * sysdeps/sparc/sparc32/stpcpy.S (stpcpy): Likewise.
2993         * sysdeps/sparc/sparc64/stpcpy.S (stpcpy): Likewise.
2994         * sysdeps/i386/stpcpy.S (stpcpy): Likewise.
2995         * sysdeps/i386/i586/stpcpy.S (stpcpy): Likewise.
2996         * sysdeps/generic/stpcpy.c (stpcpy): Likewise.
2997         * sysdeps/x86_64/stpcpy.S (stpcpy): Likewise.
2998         * sysdeps/i386/i586/memcpy.S (memcpy): Remove
2999         libc_hidden_builtin_def if MEMPCPY_P.
3000         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
3001         * sysdeps/i386/i686/mempcpy.S (mempcpy): Add libc_hidden_builtin_def.
3002         * sysdeps/i386/i586/mempcpy.S (mempcpy): Likewise.
3003         * sysdeps/generic/mempcpy.c (mempcpy): Likewise.
3004         * sysdeps/x86_64/mempcpy.S (mempcpy): Likewise.
3005
3006 2004-05-26  Roland McGrath  <roland@frob.com>
3007
3008         * sysdeps/generic/bits/in.h
3009         (IMPLINK_IP, IMPLINK_LOWEXPER, IMPLINK_HIGHEXPER): Macros removed.
3010         These are long obsolete in BSD systems where they originated.
3011         * conform/data/netinet/in.h-data: Remove `allow IMPLINK_*'
3012
3013 2004-05-26  Jakub Jelinek  <jakub@redhat.com>
3014
3015         * include/string.h (mempcpy, stpcpy): Add libc_hidden_builtin_proto.
3016         * string/bits/string2.h (memset): Disable macro for GCC 3.0+.
3017         (__mempcpy): Use __builtin_mempcpy for GCC 3.4+.
3018         (strchr): For GCC 3.2+, only use __rawmemchr if second argument is
3019         constant '\0' and first argument is not constant.
3020         (__stpcpy): Use __builtin_stpcpy for GCC 3.4+.
3021         (strncpy): Remove #ifdef _USE_STRING_ARCH_mempcpy variant.
3022         For GCC 3.2+ use __builtin_strncpy.
3023         (strncat): For GCC 3.2+ use __builtin_strncat.
3024         (strcmp): For GCC 3.2+ use __builtin_strcmp if both arguments are
3025         constant.
3026         (strcspn, strspn, strpbrk): For GCC 3.2+, use builtin function
3027         if both arguments are constant.
3028
3029 2004-05-26  Ulrich Drepper  <drepper@redhat.com>
3030
3031         * nss/nss_files/files-hosts.c: Fix condition for looking up IPv4
3032         mapped addresses in gethostbyaddr.
3033
3034 2004-05-25  Ulrich Drepper  <drepper@redhat.com>
3035
3036         * nss/digits_dots.c (__nss_hostname_digits_dots): Remove typep and
3037         flags parameter, convert afp to simple int parameter.  Adjust code.
3038         typep was never != NULL and flags therefore also unused.  *afp is
3039         never modified.
3040         * nss/nsswitch.h: Adjust __nss_hostname_digits_dots prototype.
3041         * nss/getXXbyYY.c: Remove HAVE_TYPE handling.  Adjust af parameter
3042         handling for __nss_hostname_digits_dots calls.
3043         * nss/getXXbyYY_r.c: Likewise.
3044
3045         * elf/dl-load.c (_dl_map_object_from_fd): Map DSOs with MAP_DENYWRITE.
3046
3047 2004-05-25  Steven Munroe  <sjmunroe@us.ibm.com>
3048
3049         * sysdeps/powerpc/fpu/Makefile: Make ld.so a dependency of libm.so.
3050         * sysdeps/powerpc/fpu/bits/mathinline.h [__LIBC_INERNAL_MATH_INLINES]
3051         (__ieee754_sqrt): Define as __MATH_INLINE using fsqrt instruction.
3052         (__ieee754_sqrtf): Define as __MATH_INLINE using fsqrts instruction.
3053         * sysdeps/powerpc/fpu/e_sqrt.c (__slow_ieee754_sqrt): Moved
3054         implementation from w_sqrt.c.
3055         * sysdeps/powerpc/fpu/e_sqrtf.c (__slow_ieee754_sqrtf): Moved
3056         implementation from w_sqrtf.c.
3057         * sysdeps/powerpc/fpu/w_sqrt.c (__sqrt): Wrapper implementation
3058         using inline __ieee754_sqrt().
3059         * sysdeps/powerpc/fpu/w_sqrtf.c (__sqrtf): Wrapper implementation
3060         using inline __ieee754_sqrtf().
3061         * sysdeps/powerpc/powerpc32/sysdep.h [__ASSEMBLER__]: Include
3062         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
3063         * sysdeps/powerpc/sysdep.h [__ASSEMBLER__] (PPC_FEATURE_*): Define
3064         PPC_FEATURE_*  independent of __ASSEMBLER__.
3065
3066 2004-05-25  Jakub Jelinek  <jakub@redhat.com>
3067
3068         * sysdeps/pthread/aio_notify.c: Use <> instead of "" for aio_misc.h
3069         include.
3070         (aio_start_notify_thread): Define if not defined.
3071         (notify_func_wrapper): Use it.
3072         * sysdeps/pthread/aio_misc.c: Use <> instead of "" for aio_misc.h
3073         include.
3074         (aio_create_helper_thread): Define if not defined.
3075         (__aio_create_helper_thread): New function.
3076         (__aio_enqueue_request): Use aio_create_helper_thread.
3077
3078         * nis/ypclnt.c (ypall_data, ypall_foreach): Remove.
3079         (struct ypresp_all_data): New type.
3080         (__xdr_ypresp_all): Change second argument to
3081         struct ypresp_all_data *.  Replace ypall_foreach and
3082         ypall_data with objp->foreach and objp->data.
3083         (yp_all): Remove status variable, add data.  Replace
3084         all uses of status with data.status.  Initialize data.foreach
3085         and data.data instead of ypall_foreach and ypall_data.
3086
3087 2004-05-24  Jakub Jelinek  <jakub@redhat.com>
3088
3089         * elf/dl-lookup.c (add_dependency): Set DF_1_NODELETE bit
3090         in l_flags_1, not in l_flags.
3091
3092 2004-04-10  Robert Millan  <robertmh@gnu.org>
3093
3094         * sysdeps/unix/sysv/linux/bits/in.h: Cosmetic fixes to get in sync
3095         with sysdeps/generic/bits/in.h.
3096
3097 2004-05-25  Roland McGrath  <roland@frob.com>
3098
3099         * sysdeps/generic/unwind-dw2-fde-glibc.c: Change copyright terms from
3100         GCC GPL to standard glibc LGPL.
3101
3102 2004-05-24  Ulrich Drepper  <drepper@redhat.com>
3103
3104         * manual/string.texi (Copying and Concatenation): Fixed second
3105         concat example.
3106         Reported by Fabian Pietsch <fabian@zzznowman.dyndns.org>.
3107
3108 2004-05-23  Ulrich Drepper  <drepper@redhat.com>
3109
3110         * malloc/obstack.c: Don't allow linking with _obstack.
3111
3112 2004-05-23  Andreas Schwab  <schwab@suse.de>
3113
3114         * sysdeps/m68k/m68020/bits/atomic.h: Use "+m" constraint instead
3115         of separate "m" constraints.
3116
3117 2004-05-15  Chris Demetriou  <cgd@broadcom.com>
3118
3119         * sysdeps/mips/dl-machine.h (ELF_DL_FRAME_SIZE)
3120         (ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS): For the N32
3121         and 64 ABIs, save and restore regs $10 and $11 (a6 and a7).
3122
3123 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
3124
3125         * malloc/obstack.c (_obstack) [!defined _LIBC]: Remove; not used.
3126         Add comment explaining why libc still defines it.
3127
3128 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
3129
3130         * malloc/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
3131         obstack_alignment_mask, obstack_alloc, obstack_base,
3132         obstack_blank, obstack_blank_fast, obstack_chunk_size,
3133         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
3134         obstack_grow0, obstack_init, obstack_int_grow,
3135         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
3136         obstack_next_free, obstack_object_size, obstack_ptr_grow,
3137         obstack_ptr_grow_fast, obstack_room): Remove declarations of
3138         nonexistent functions.
3139
3140 2004-05-18  Steven Munroe  <sjmunroe@us.ibm.com>
3141
3142         * sysdeps/powerpc/powerpc64/sysdep.h [__ASSEMBLER__]: Include
3143         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
3144         [PIC]: Redundent for powerpc64, removed.
3145         (ENTRY): Generate size and alignment for opd entry.
3146         (EALIGN): Generate size and alignment for opd entry.
3147         (END): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
3148         (END_GEN_TB): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
3149
3150 2004-05-19  Ulrich Drepper  <drepper@redhat.com>
3151
3152         * misc/regexp.h: Say the functions have been withdrawn.
3153
3154         * wcsmbs/tst-wcpncpy.c: Add more tests.
3155
3156 2004-05-18  Roland McGrath  <roland@frob.com>
3157
3158         * sysdeps/generic/unwind.h: Change copyright terms from GCC GPL to
3159         standard glibc LGPL.
3160         * sysdeps/generic/unwind-dw2.c: Likewise.
3161         * sysdeps/generic/unwind-dw2-fde.c: Likewise.
3162         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
3163         * sysdeps/generic/unwind-pe.h: Likewise.
3164
3165 2004-05-15  Petter Reinholdtsen  <pere@hungry.com>
3166
3167         * locale/iso-3166.def: Remove YUGOSLAVIA and insert "SERBIA AND
3168         MONTENEGRO" which have taken over the code 819.  Patch from
3169         Danilo Segan. [BZ #40]
3170
3171 2004-05-15  Jakub Jelinek  <jakub@redhat.com>
3172
3173         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
3174         (SYSCALL_ERROR_HANDLER): Rename __sparc.get_pic.l7 to
3175         __sparc_get_pic_l7.
3176
3177 2004-05-15  Joseph S. Myers  <jsm@polyomino.org.uk>
3178
3179         * catgets/gencat.c: Update bug reporting instructions.
3180         * csu/version.c: Likewise.
3181         * debug/catchsegv.sh: Likewise.
3182         * debug/pcprofiledump.c: Likewise.
3183         * debug/xtrace.sh: Likewise.
3184         * elf/ldd.bash.in: Likewise.
3185         * iconv/iconv_prog.c: Likewise.
3186         * iconv/iconvconfig.c: Likewise.
3187         * locale/programs/locale.c: Likewise.
3188         * locale/programs/localedef.c: Likewise.
3189         * login/programs/pt_chown.c: Likewise.
3190         * malloc/memusage.sh: Likewise.
3191         * malloc/memusagestat.c: Likewise.
3192         * malloc/mtrace.pl: Likewise.
3193         * manual/crypt.texi: Likewise.
3194         * manual/install.texi: Likewise.
3195         * nss/makedb.c: Likewise.
3196
3197 2004-05-14  Jakub Jelinek  <jakub@redhat.com>
3198
3199         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Only
3200         CHECK_STATIC_TLS if sym != NULL.
3201         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
3202         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
3203
3204 2004-05-12  Andreas Schwab  <schwab@suse.de>
3205
3206         * posix/regex_internal.c (build_wcs_buffer): Also set pstr->mbs
3207         when translating.
3208
3209 2004-05-13  H.J. Lu  <hongjiu.lu@intel.com>
3210
3211         * Rules (xtests): Depend on tests.
3212
3213 2004-05-13  Jakub Jelinek  <jakub@redhat.com>
3214
3215         * libio/genops.c (_IO_default_xsputn): Avoid one overflow per char if
3216         count is negative, yet write_ptr < write_end.
3217         (_IO_default_xsgetn): Avoid one underflow per char if count is
3218         negative, yet read_ptr < read_end.
3219
3220 2004-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
3221
3222         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h (XTABS): Define XTABS
3223         equal to TAB3.
3224
3225 2004-05-12  Ulrich Drepper  <drepper@redhat.com>
3226
3227         * elf/dl-lookup.c (_dl_lookup_symbol_x): Correct _dl_signal_cerror
3228         call.
3229
3230 2004-05-10  Roland McGrath  <roland@frob.com>
3231
3232         * hurd/hurdlookup.c (__hurd_file_name_split): Return ENOENT for "".
3233         (__hurd_directory_name_split): Likewise.
3234
3235 2004-05-10  Ulrich Drepper  <drepper@redhat.com>
3236
3237         * po/fr.po: Update from translation team.
3238
3239 2004-05-10  Andreas Jaeger  <aj@suse.de>
3240
3241         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
3242         Correctly compute alignment.
3243         Patch by Michael Matz <matz@suse.de>.
3244
3245 2004-05-09  Ulrich Drepper  <drepper@redhat.com>
3246
3247         * sysdeps/generic/sigpause.c: Prevent sigpause prototype.
3248         * sysdeps/posix/sigpause.c: Likewise.
3249         * signal/signal.h: Don't define sigpause macro unless needed.
3250
3251 2004-05-08  Jakub Jelinek  <jakub@redhat.com>
3252
3253         * configure.in (libc_cv_libgcc_s_suffix): New check.
3254         (libc_cv_as_needed): Use -lgcc_s$libc_cv_libgcc_s_suffix.
3255         * config.make.in (libgcc_s_suffix): Set.
3256         * Makeconfig (libgcc_eh): Use -lgcc_s$(libgcc_s_suffix).
3257
3258 2004-05-08  Ulrich Drepper  <drepper@redhat.com>
3259
3260         * signal/signal.h: Use BSD sigpause only if BSD behavior is preferred.
3261
3262 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
3263
3264         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_1,
3265         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
3266         Load argument values into temporary variables.
3267         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_1,
3268         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
3269         Likewise.
3270
3271 2004-05-07  Ulrich Drepper  <drepper@redhat.com>
3272
3273         * sysdeps/unix/sysv/linux/Makefile: mq_send.c and mq_receive.c
3274         need to be compiled with exceptions.
3275
3276 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
3277
3278         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Fix memory handling.
3279         * sysdeps/generic/ifreq.c (__ifreq): Fix memory handling.
3280
3281         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Make clear that
3282         realloc cannot fail.
3283
3284         * nss/nss_files/files-netgrp.c (EXPAND): Free buffer which cannot
3285         be expanded.
3286
3287         * nis/nis_table.c: Clean up memory handling.
3288         * nis/nis_subr.c (nis_getnames): Clean up memory handling.
3289         * nis/nis_removemember.c (nis_removemember): Add comment
3290         explaining use of realloc.
3291
3292         * math/tgmath.h (fabs): Use __TGMATH_UNARY_REAL_IMAG_RET_REAL.
3293         (carg): Likewise.
3294         Patch by Lev S Bishop <lev.bishop@yale.edu>.
3295
3296         * math/bug-tgmath1.c (main): Test fabs and carg as well.
3297
3298 2004-05-06  Richard Henderson  <rth@redhat.com>
3299
3300         * elf/elf.h (AT_L1I_CACHESHAPE, AT_L1D_CACHESHAPE,
3301         AT_L2_CACHESHAPE, AT_L3_CACHESHAPE): New.
3302         * sysdeps/unix/sysv/linux/alpha/Versions: Export
3303         __libc_alpha_cache_shape as a private symbol.
3304         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c: New file.
3305         * sysdeps/unix/sysv/linux/alpha/sysconf.c: New file.
3306
3307 2004-05-06  Richard Henderson  <rth@redhat.com>
3308
3309         * sysdeps/alpha/div_libc.h (_ITOFS, _ITOFT, _FTOIT, _ITOFT2): New.
3310         * sysdeps/alpha/divl.S: Use them.
3311         * sysdeps/alpha/divq.S: Likewise.
3312         * sysdeps/alpha/divqu.S: Likewise.
3313         * sysdeps/alpha/reml.S: Likewise.
3314         * sysdeps/alpha/remq.S: Likewise.
3315         * sysdeps/alpha/remqu.S: Likewise.
3316
3317 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
3318
3319         * math/tgmath.h (__TGMATH_UNARY_REAL_IMAG_RET_REAL):Define.
3320         (cimag): Use it.
3321         (creal): Likewise.
3322         * math/Makefile (tests): Add bug-tgmath1.
3323         * math/bug-tgmath1.c: New file.
3324
3325 2004-05-05  Jakub Jelinek  <jakub@redhat.com>
3326
3327         * sysdeps/alpha/atomicity.h: Remove.
3328         * sysdeps/generic/atomicity.h: Remove.
3329
3330 2004-05-05  H.J. Lu  <hongjiu.lu@intel.com>
3331
3332         * sysdeps/i386/i486/bits/string.h (strpbrk): Cast return to
3333         char *.
3334
3335 2004-04-22  David Mosberger  <davidm@hpl.hp.com>
3336
3337         * sysdeps/unix/sysv/linux/ia64/Makefile (librt-routines): Mention
3338           rt-sysdep.
3339         * sysdeps/unix/sysv/linux/ia64/rt-sysdep.S: New file.
3340
3341         * sysdeps/ia64/strcat.c: New file.
3342         * sysdeps/ia64/strcat.S: Delete.
3343
3344 2004-05-04  Jakub Jelinek  <jakub@redhat.com>
3345
3346         * sysdeps/unix/sysv/linux/ia64/sysdep.S (USE___THREAD): Remove
3347         defined.
3348
3349 2004-04-23  Jakub Jelinek  <jakub@redhat.com>
3350
3351         * sysdeps/ia64/fpu/libm_support.h (__libm_error_support): Add
3352         libc_hidden_proto.  Define to __GI___libm_error_support for
3353         assembly going into libc.so.
3354         * sysdeps/ia64/fpu/libc_libm_error.c (__libm_error_support): Add
3355         libc_hidden_def.
3356
3357         * include/libc-symbols.h (HIDDEN_BUILTIN_JUMPTARGET): Define.
3358         * sysdeps/ia64/bcopy.S (bcopy): Use it for jump to memmove.
3359
3360         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Access
3361         gprel errno if RTLD_PRIVATE_ERRNO or __thread __libc_errno/errno
3362         if USE___THREAD.
3363
3364 2004-05-03  Jakub Jelinek  <jakub@redhat.com>
3365
3366         * sysdeps/unix/bsd/bits/fcntl.h (F_SETOWN, F_GETOWN): Define if
3367         __USE_BSD or __USE_UNIX98.
3368         * sysdeps/unix/bsd/ultrix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3369         * sysdeps/unix/bsd/bsd4.4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3370         * sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h (F_SETOWN, F_GETOWN):
3371         Likewise.
3372         * sysdeps/unix/common/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3373         * sysdeps/unix/sysv/aix/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3374         * sysdeps/unix/sysv/irix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3375         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (F_SETOWN, F_GETOWN):
3376         Likewise.
3377         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (F_SETOWN, F_GETOWN):
3378         Likewise.
3379         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (F_SETOWN, F_GETOWN):
3380         Likewise.
3381         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (F_SETOWN, F_GETOWN):
3382         Likewise.
3383         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (F_SETOWN, F_GETOWN):
3384         Likewise.
3385         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (F_SETOWN, F_GETOWN):
3386         Likewise.
3387         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (F_SETOWN, F_GETOWN):
3388         Likewise.
3389         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (F_SETOWN, F_GETOWN):
3390         Likewise.
3391         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (F_SETOWN, F_GETOWN):
3392         Likewise.
3393         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (F_SETOWN, F_GETOWN):
3394         Likewise.
3395         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (F_SETOWN, F_GETOWN):
3396         Likewise.
3397         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (F_SETOWN, F_GETOWN):
3398         Likewise.
3399         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_SETOWN, F_GETOWN):
3400         Likewise.
3401         * sysdeps/generic/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3402         * sysdeps/mach/hurd/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3403         * io/sys/stat.h (S_ISSOCK, S_IFSOCK): Likewise.
3404
3405 2004-05-01  Jakub Jelinek  <jakub@redhat.com>
3406
3407         * posix/Versions (libc): Remove __libc_wait, __libc_waitpid,
3408         __libc_pause, __libc_nanosleep, __libc_pread, __libc_pread64,
3409         __libc_pwrite64, __waitid and __pselect @@GLIBC_PRIVATE.
3410         * stdlib/Versions (libc): Remove __on_exit@@GLIBC_PRIVATE.
3411         * sysdeps/unix/sysv/linux/Versions (libc): Remove
3412         __libc_sigaction@@GLIBC_PRIVATE.
3413         * sysdeps/unix/sysv/linux/x86_64/Versions (libc): Remove
3414         __modify_ldt@@GLIBC_PRIVATE.
3415         * socket/Versions (libc): Remove __libc_accept, __libc_send,
3416         __libc_recvfrom, __libc_recvmsg, __libc_sendmsg, __libc_recv,
3417         __libc_sendto and __libc_connect @@GLIBC_PRIVATE.
3418         * stdio-common/Versions (libc): Remove
3419         _itoa_upper_digits@@GLIBC_PRIVATE.
3420         * resolv/Versions (libresolv): Remove __ns_samename@@GLIBC_PRIVATE.
3421         * misc/Versions (libc): Remove __libc_fsync, __libc_msync,
3422         __libc_readv and __libc_writev @@GLIBC_PRIVATE.
3423         * termios/Versions (libc): Remove __libc_tcdrain@@GLIBC_PRIVATE.
3424         * io/Versions (libc): Remove __libc_open, __libc_close, __libc_read,
3425         __libc_write, __libc_lseek, __libc_fcntl, __libc_open64 and
3426         __libc_lseek64 @@GLIBC_PRIVATE.
3427
3428 2004-04-30  Jakub Jelinek  <jakub@redhat.com>
3429
3430         * elf/dl-load.c (open_verify): Move e_phentsize check after e_type
3431         check.
3432
3433 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
3434
3435         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: New file.
3436         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: New file.
3437         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: New file.
3438         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: New file.
3439         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: Removed.
3440         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: New file.
3441         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: Removed.
3442         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: New file.
3443         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: New file.
3444         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: New file.
3445         * sysdeps/powerpc/powerpc64/fpu/s_lround.S: New file.
3446         * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: New file.
3447         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: New file.
3448         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: New file.
3449         * sysdeps/powerpc/powerpc64/fpu/s_round.S: New file.
3450         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: New file.
3451         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: New file.
3452         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: New file.
3453
3454         * math/test-misc.c [LDBL_MANT_DIG == 106](main): Correct LDBL_MAX
3455         mantissa for AIX long double format.
3456         * misc/qefgcvt.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Define for AIX
3457         long double format.
3458         * misc/qefgcvt_r.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Likewise.
3459         * stdlib/fpioconst.c [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
3460         (_fpioconst_pow10): AIX long double format has same exponent range as
3461         double.
3462         * stdlib/fpioconst.h [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
3463         (LDBL_MAX_10_EXP_LOG): AIX long double format has same exponent range
3464         as double.
3465
3466 2004-04-23  Art Haas  <ahaas@airmail.net>
3467
3468         * sysdeps/unix/sysv/linux/kernel-features.h: Add 'defined'.
3469
3470 2004-04-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
3471
3472         * sysdeps/unix/sysv/linux/mq_getattr.c: Include <stddef.h>.
3473         * sysdeps/unix/sysv/linux/mq_notify.c: Likewise.
3474         * sysdeps/unix/sysv/linux/mq_open.c: Likewise.
3475         * sysdeps/unix/sysv/linux/mq_receive.c: Likewise.
3476         * sysdeps/unix/sysv/linux/mq_send.c: Likewise.
3477
3478 2004-04-29  Philip Blundell  <pb@nexus.co.uk>
3479
3480         * sysdeps/arm/dl-machine.h (RTLD_START): Avoid unnecessary GOT
3481         entries.
3482
3483 2004-04-29  Jakub Jelinek  <jakub@redhat.com>
3484
3485         * manual/resource.texi (sched_setaffinity, sched_getaffinity): Fix
3486         prototypes and description [BZ #131].
3487
3488         * string/bits/string2.h (strpbrk): Cast NULL to char * [BZ #130].
3489         Patch by Ed Catmur <ed@catmur.co.uk>.
3490         * string/tst-inlcall.c (main): Add test for strpbrk.
3491
3492         [BZ #140]
3493         * sysdeps/unix/sysv/linux/sys/sysctl.h: Remove linux/compiler.h
3494         include.
3495         (_LINUX_KERNEL_H, _LINUX_TYPES_H, _LINUX_LIST_H): Only define if not
3496         yet defined, #undef back after including linux/sysctl.h if defined
3497         here.
3498         (__LINUX_COMPILER_H, __user): Define if not yet defined, #undef
3499         back after including linux/sysctl.h if defined here.
3500
3501         * sysdeps/sparc/sparc64/soft-fp/qp_qtoi.c (_Qp_qtoi): Use %f31
3502         for single precision register, add it to __asm clobbers [BZ #139].
3503         * sysdeps/sparc/sparc64/soft-fp/qp_qtoui.c (_Qp_qtoui): Use %f31
3504         for single precision register, add it to __asm clobbers.
3505         * sysdeps/sparc/sparc64/soft-fp/qp_qtoux.c (_Qp_qtoux): Use fqtox
3506         instead of fqtoi in QP_HANDLE_EXCEPTIONS.
3507         * sysdeps/sparc/sparc64/soft-fp/qp_qtox.c (_Qp_qtox): Likewise.
3508         Reported by M. H. VanLeeuwen <vanl@megsinet.net>.
3509
3510 2004-04-23  Andreas Schwab  <schwab@suse.de>
3511
3512         * sysdeps/unix/sysv/linux/m68k/register-dump.h: Use
3513         __attribute_used__.
3514
3515 2004-04-22  Philip Blundell  <philb@gnu.org>
3516
3517         * sysdeps/arm/dl-machine.h (elf_machine_rela): Don't use INTUSE
3518         when calling _dl_signal_error.
3519         (elf_machine_rel): Likewise.
3520
3521 2004-04-21  Ulrich Drepper  <drepper@redhat.com>
3522
3523         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Define _GI___sigsetjmp
3524         and use it internally instead of __sigsetjmp.
3525         * sysdeps/ia64/fpu/s_frexpf.c (frexpf): Use _GI___libm_frexp_4f.
3526         * sysdeps/ia64/fpu/s_frexpl.c (frexpl): Use _GI___libm_frexp_4l.
3527         * sysdeps/ia64/fpu/libm_frexp4.S: Define _GI___libm_frexp_4.
3528         * sysdeps/ia64/fpu/libm_frexp4f.S: Define _GI___libm_frexp_4f.
3529         * sysdeps/ia64/fpu/libm_frexp4l.S: Define _GI___libm_frexp_4l.
3530         * sysdeps/ia64/fpu/s_frexp.c (frexp): Use _GI___libm_frexp_4.
3531         * sysdeps/ia64/fpu/libm_support.h: Declare _GI___libm_frexp_4,
3532         _GI___libm_frexp_4f, _GI___libm_frexp_4l.
3533         * sysdeps/ia64/fpu/bits/mathinline.h: New file.
3534         * sysdeps/unix/sysv/linux/ia64/__start_context.S: Use