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