007-06-29 Martin Schwidefsky <schwidefsky@de.ibm.com>
[glibc.git] / ChangeLog
blob863c0f78fa412e1ef701e9fc738d2efdd57b0baf
1 007-06-29  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3         * sysdeps/s390/dl-procinfo.c: New file.
4         * sysdeps/s390/dl-procinfo.h: New file.
5         * sysdeps/unix/sysv/linux/s390/dl-procinfo.h: New file.
7 2007-06-29  Jakub Jelinek  <jakub@redhat.com>
9         * elf/dl-load.c (open_verify): Find .note.ABI-tag notes even
10         in PT_NOTE segments with multiple notes.
11         * elf/readelflib.c (process_elf_file): Likewise.
13 2007-06-22  Ulrich Drepper  <drepper@redhat.com>
15         * nis/nis_domain_of.c (__nis_domain_of): Make the code a bit more
16         ISO C compliant.
18 2007-06-19  Ulrich Drepper  <drepper@redhat.com>
20         * elf/dl-close.c (free_mem): Free _dl_scope_free_list.
22 2007-06-13  Jakub Jelinek  <jakub@redhat.com>
24         * include/link.h: Don't include rtld-lowlevel.h.
25         (struct link_map): Remove l_scope_lock.
26         * sysdeps/generic/ldsodefs.h: Don't include rtld-lowlevel.h.
27         (_dl_scope_free_list): New field (variable) in _rtld_global.
28         (DL_LOOKUP_SCOPE_LOCK): Remove.
29         (_dl_scope_free): New prototype.
30         * elf/dl-runtime.c (_dl_fixup): Don't use __rtld_mrlock_*lock.
31         Don't pass DL_LOOKUP_SCOPE_LOCK to _dl_lookup_symbol_x.
32         (_dl_profile_fixup): Likewise.
33         * elf/dl-sym.c (do_sym): Likewise.  Use wrapped _dl_lookup_symbol_x
34         whenever !RTLD_SINGLE_THREAD_P, use THREAD_GSCOPE_SET_FLAG and
35         THREAD_GSCOPE_RESET_FLAG around it.
36         * elf/dl-close.c (_dl_close_worker): Don't use
37         __rtld_mrlock_{change,done}.  Call _dl_scope_free on the old
38         scope.  Make sure THREAD_GSCOPE_WAIT () happens if any old
39         scopes were queued or if l_scope_mem has been abandoned.
40         * elf/dl-open.c (_dl_scope_free): New function.
41         (dl_open_worker): Use it.  Don't use __rtld_mrlock_{change,done}.
42         * elf/dl-support.c (_dl_scope_free_list): New variable.
43         * elf/dl-lookup.c (add_dependency): Remove flags argument.
44         Remove DL_LOOKUP_SCOPE_LOCK handling.
45         (_dl_lookup_symbol_x): Adjust caller.  Remove DL_LOOKUP_SCOPE_LOCK
46         handling.
47         * elf/dl-object.c (_dl_new_object): Don't use
48         __rtld_mrlock_initialize.
50 2007-06-19  Ulrich Drepper  <drepper@redhat.com>
52         * sysdeps/generic/ldsodefs.h (rtld_global): Reorder some elements
53         to fill in holes
54         (rtld_global_ro): Likewise.
56 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
58         * elf/dl-addr.c (_dl_addr): Skip PT_LOAD checking if l_contiguous.
59         Move PT_LOAD checking to...
60         (_dl_addr_inside_object): ... here, new function.
61         * elf/dl-sym.c (do_sym): If not l_contiguous,
62         call _dl_addr_inside_object.
63         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise.
64         * dlfcn/dlinfo.c (dlinfo_doit): Likewise.
65         * elf/dl-open.c (dl_open_worker): Likewise.
66         (_dl_addr_inside_object): New function if IS_IN_rtld.
67         * elf/dl-load.c (_dl_map_object_from_fd): Set l_contiguous if no
68         holes are present or are PROT_NONE protected.
69         * include/link.h (struct link_map): Add l_contiguous field.
70         * sysdeps/generic/ldsodefs.h (_dl_addr_inside_object): New prototype.
72 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
73             Tomas Janousek  <tjanouse@redhat.com>
74             Ulrich Drepper  <drepper@redhat.com>
76         [BZ #4647]
77         * resolv/res_send.c (send_dg): Remove socket_pf.  Use ipv6_unavail
78         member in __res_state, only convaddr4to6 if nssocks[ns] is a PF_INET6
79         socket.
80         * resolv/resolv.h (__res_state): Add ipv6_unavail member.  Make
81         unused member a bitmap.
82         * resolv/res_init.c (__res_vinit): Reset ipv6_unavail if IPv6
83         servers are configured.
85 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
87         * elf/rtld.c (dl_main): Don't call init_tls more than once.
89 2007-06-17  Andreas Schwab  <schwab@suse.de>
91         * sysdeps/generic/initfini.c: Tell gcc about the nonstandard sections.
93 2007-06-16  Andreas Jaeger  <aj@suse.de>
95         [BZ #4125]
96         * sysdeps/unix/sysv/linux/sys/ptrace.h
97         (PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK,
98         PTRACE_O_TRACEVFORK, PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC,
99         PTRACE_O_TRACEVFORKDONE, PTRACE_O_TRACEEXIT, PTRACE_O_MASK,
100         PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK, PTRACE_EVENT_CLONE,
101         PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE, PTRACE_EVENT_EXIT):
102         Define.
103         * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise.
104         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Likewise.
105         * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise.
106         * sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise.
108 2007-06-16  Ulrich Drepper  <drepper@redhat.com>
110         [BZ #4599]
111         * sysdeps/unix/sysv/linux/check_pf.c (make_request): When
112         determining whether there are IPv4/IPv6 addresses, ignore loopback
113         addresses.
115 2007-06-14 Uros Bizjak <ubizjak@gmail.com>
117         * soft-fp/soft-fp.h (CMPtype): Define to "int" if undefined.
118         * soft-fp/eqdf2.c (__eqdf2): Use CMPtype instead of int
119         as the return type.  Change type of "r" variable to CMPtype.
120         * soft-fp/eqsf2.c (__eqsf2): Likewise.
121         * soft-fp/eqtf2.c (__eqtf2): Likewise.
122         * soft-fp/gedf2.c (__gedf2): Likewise.
123         * soft-fp/gesf2.c (__gesf2): Likewise.
124         * soft-fp/getf2.c (__getf2): Likewise.
125         * soft-fp/ledf2.c (__ledf2): Likewise.
126         * soft-fp/lesf2.c (__lesf2): Likewise.
127         * soft-fp/letf2.c (__letf2): Likewise.
128         * soft-fp/unorddf2 (__unorddf2): Likewise.
129         * soft-fp/unordsf2 (__unordsf2): Likewise.
130         * soft-fp/unordtf2 (__unordtf2): Likewise.
132 2007-06-09  Ulrich Drepper  <drepper@redhat.com>
134         * elf/do-lookup.h (do_lookup_x): Read r_nlist before r_list and
135         make sure gcc doesn't mess around with this.
137 2007-06-08  Ulrich Drepper  <drepper@redhat.com>
139         * elf/dl-lookup.c (_dl_lookup_symbol_x): Remove use of r_nlist.
141 2007-06-08  Jakub Jelinek  <jakub@redhat.com>
143         * elf/dl-close.c (_dl_close_worker): Remove all to be removed
144         libraries from the global scope at once and call THREAD_GSCOPE_WAIT
145         at most once per _dl_close_worker.
147 2007-06-08  Ulrich Drepper  <drepper@redhat.com>
149         * sysdeps/unix/sysv/linux/bits/sched.h: Make second parameter of
150         __sched_cpucount as const.
151         * posix/sched_cpucount.c: Adjust.
153         * posix/sched_cpucount.c (__sched_cpucount): Allow using special
154         instruction for counting bits.
155         * sysdeps/x86_64/sched_cpucount.c: New file.
157 2007-06-07  Ulrich Drepper  <drepper@redhat.com>
159         * configure.in: Avoid variable named BASH.
160         * config.make.in: Likewise.
161         Patch in part by Mike Frysinger.
163 2007-06-06  Jakub Jelinek  <jakub@redhat.com>
165         [BZ #4586]
166         * sysdeps/i386/ldbl2mpn.c (__mpn_extract_long_double): Treat
167         pseudo-zeros as zero.
168         * sysdeps/x86_64/ldbl2mpn.c: New file.
169         * sysdeps/ia64/ldbl2mpn.c: New file.
171 2007-06-04  Jakub Jelinek  <jakub@redhat.com>
173         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Remove
174         unused ily variable.  Fix nextafterl on +-__LDBL_MAX__ and +-Inf.
175         Remove unreachable code at the end.
177 2007-06-01  Steven Munroe  <sjmunroe@us.ibm.com>
179         * sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c: Correct description of
180         ldbl-128ibm in comment.
181         (fpclassifyl): Correct classification of denormals.
182         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Correct
183         return value for MIN denormal. Rewrite using long double math too
184         correctly handle denormals and canonicalize the results.
186 2007-06-05  Jakub Jelinek  <jakub@redhat.com>
188         * sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
189         (__mpn_construct_long_double): Fix conversion where result ought
190         to be smaller than __LDBL_MIN__, or the low double should be
191         denormal.  Fix decision where to negate low double - honor round
192         to even rules.
193         * stdio-common/tst-sprintf2.c: Include string.h.
194         (COMPARE_LDBL): Define.
195         (TEST): Also test whether a string hexadecimal float representation
196         can be parsed back to the number.
197         (main): Add a couple of further tests.
199 2007-06-04  Jakub Jelinek  <jakub@redhat.com>
201         * sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
202         (PRINT_FPHEX_LONG_DOUBLE): Fix printing numbers where lower double
203         is non-zero, but smaller than 2 * __DBL_MIN__.
204         * stdio-common/tst-sprintf2.c: New test.
205         * stdio-common/Makefile (tests): Add tst-sprintf2.
207         * math/test-misc.c (main): Don't run last batch of tests with
208         IBM long double format.
210 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
212         * sysdeps/powerpc/powerpc32/970/fpu/Implies: New file.
213         * sysdeps/powerpc/powerpc32/power5/fpu/Implies: New file.
214         * sysdeps/powerpc/powerpc32/power5+/fpu/Implies: New file.
215         * sysdeps/powerpc/powerpc32/power6/fpu/Implies: New file.
216         * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
217         * sysdeps/powerpc/powerpc64/970/fpu/Implies: New file.
218         * sysdeps/powerpc/powerpc64/power5/fpu/Implies: New file.
219         * sysdeps/powerpc/powerpc64/power5+/fpu/Implies: New file.
220         * sysdeps/powerpc/powerpc64/power6/fpu/Implies: New file.
221         * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
222         * sysdeps/unix/sysv/linux/powerpc/powerpc32/970/fpu/Implies: New file.
223         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/fpu/Implies:
224         New file.
225         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/fpu/Implies:
226         New file.
227         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/fpu/Implies:
228         New file.
229         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/Implies:
230         New file.
231         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/fpu/Implies:
232         New file.
233         * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/fpu/Implies: New file.
234         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/fpu/Implies:
235         New file.
236         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/fpu/Implies:
237         New file.
238         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/fpu/Implies:
239         New file.
240         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/Implies:
241         New file.
242         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/fpu/Implies:
243         New file.
245 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
247         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: Move.
248         * sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S: To here.
249         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: Move.
250         * sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S: To here.
251         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: Move.
252         * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S: To here.
253         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: Move.
254         * sysdeps/powerpc/powerpc32/power4/fpu/s_llroundf.S: To here.
256 2007-05-22  Steven Munroe  <sjmunroe@us.ibm.com>
258         * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S
259         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
260         * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S
261         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
262         * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S
263         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
264         * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S
265         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
267 2007-05-21  Steven Munroe  <sjmunroe@us.ibm.com>
269         * sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c: New file.
270         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c: New file.
271         * sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c: New file.
272         * sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c: New file.
274 2007-03-15  Steven Munroe  <sjmunroe@us.ibm.com>
276         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S
277         [LONG_DOUBLE_COMPAT]: Add compat_symbol for llrintl@@GLIBC_2_1.
279 2006-02-13  Steven Munroe  <sjmunroe@us.ibm.com>
281         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S: New File
282         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S: New File
283         * sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S: New File
284         * sysdeps/powerpc/powerpc32/power6/fpu/s_llroundf.S: New File
286 2006-10-20  Steven Munroe  <sjmunroe@us.ibm.com>
288         * sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c: New file.
289         * sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c: New file.
291 2006-10-03  Steven Munroe  <sjmunroe@us.ibm.com>
293         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: New file.
294         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: New file.
296         * sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: Moved.
297         * sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: Likewise.
298         * sysdeps/powerpc/powerpc32/power4/fpu/Makefile: To here.
299         * sysdeps/powerpc/powerpc32/power4/fpu/mpa.c: Likewise.
301 2006-09-29  Steven Munroe  <sjmunroe@us.ibm.com>
303         * sysdeps/powerpc/powerpc32/power6x/fpu/s_lrint.S: New file.
304         * sysdeps/powerpc/powerpc32/power6x/fpu/s_lround.S: New file.
305         * sysdeps/powerpc/powerpc64/power6x/fpu/s_llrint.S: New file.
306         * sysdeps/powerpc/powerpc64/power6x/fpu/s_llround.S: New file.
308 2006-09-28  Steven Munroe  <sjmunroe@us.ibm.com>
310         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S: New file.
311         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llroundf.S: New file.
312         * sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S: New file.
313         * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
314         * sysdeps/powerpc/powerpc64/power5+/fpu/s_llround.S: New file.
315         * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
317 2006-08-31  Steven Munroe  <sjmunroe@us.ibm.com>
319         * sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: New file.
320         * sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: New file.
321         * sysdeps/powerpc/powerpc64/power4/fpu/Makefile: New file.
322         * sysdeps/powerpc/powerpc64/power4/fpu/mpa.c: New file.
324 2006-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
326         * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceil.S: New file.
327         * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceilf.S: New file.
328         * sysdeps/powerpc/powerpc32/power5+/fpu/s_floor.S: New file.
329         * sysdeps/powerpc/powerpc32/power5+/fpu/s_floorf.S: New file.
330         * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S: New file.
331         * sysdeps/powerpc/powerpc32/power5+/fpu/s_roundf.S: New file.
332         * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S: New file.
333         * sysdeps/powerpc/powerpc32/power5+/fpu/s_truncf.S: New file.
334         * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S: New file.
335         * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceilf.S: New file.
336         * sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S: New file.
337         * sysdeps/powerpc/powerpc64/power5+/fpu/s_floorf.S: New file.
338         * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S: New file.
339         * sysdeps/powerpc/powerpc64/power5+/fpu/s_roundf.S: New file.
340         * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S: New file.
341         * sysdeps/powerpc/powerpc64/power5+/fpu/s_truncf.S: New file.
343 2006-03-20  Steven Munroe  <sjmunroe@us.ibm.com>
345         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: New file.
346         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: New file.
348 2007-06-01  Steven Munroe  <sjmunroe@us.ibm.com>
350         * sysdeps/powerpc/powerpc32/power6/memset.S: New file.
351         * sysdeps/powerpc/powerpc64/power6/memset.S: New file.
353 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
355         * sysdeps/powerpc/powerpc32/970/Implies: New file.
356         * sysdeps/powerpc/powerpc32/power5/Implies: New file.
357         * sysdeps/powerpc/powerpc32/power5+/Implies: New file.
358         * sysdeps/powerpc/powerpc32/power6/Implies: New file.
359         * sysdeps/powerpc/powerpc32/power6x/Implies: New file.
360         * sysdeps/powerpc/powerpc64/970/Implies: New file.
361         * sysdeps/powerpc/powerpc64/power5/Implies: New file.
362         * sysdeps/powerpc/powerpc64/power5+/Implies: New file.
363         * sysdeps/powerpc/powerpc64/power6/Implies: New file.
364         * sysdeps/powerpc/powerpc64/power6x/Implies: New file.
366 2007-05-21  Steven Munroe  <sjmunroe@us.ibm.com>
368         * sysdeps/powerpc/powerpc32/power4/memset.S: New file
370 2007-03-13  Steven Munroe  <sjmunroe@us.ibm.com>
372         * sysdeps/powerpc/powerpc64/memcpy.S: Improve aligned loop to minimize
373         branch miss-predicts. Ensure that cache line crossing does not impact
374         dispatch grouping.
376 2006-12-13  Steven Munroe  <sjmunroe@us.ibm.com>
378         * sysdeps/powerpc/powerpc64/power4/memcopy.h: Replace with include
379         "../../powerpc32/power4/memcopy.h".
380         * sysdeps/powerpc/powerpc64/power4/wordcopy.c: Replace with include
381         "../../powerpc32/power4/wordcopy.c".
383 2006-10-03  Steven Munroe  <sjmunroe@us.ibm.com>
385         * sysdeps/powerpc/powerpc32/powerpc64/Makefile: Moved.
386         * sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: Likewise.
387         * sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: Likewise.
388         * sysdeps/powerpc/powerpc32/power4/Makefile: To here.
389         * sysdeps/powerpc/powerpc32/power4/memcopy.h: Likewise.
390         * sysdeps/powerpc/powerpc32/power4/wordcopy.c: Likewise.
392 2006-09-10  Steven Munroe  <sjmunroe@us.ibm.com>
394         * sysdeps/powerpc/powerpc32/power6/memcpy.S: New file.
396 2006-08-31  Steven Munroe  <sjmunroe@us.ibm.com>
398         * sysdeps/powerpc/powerpc32/power6/wordcopy.c: New file.
399         * sysdeps/powerpc/powerpc32/powerpc64/Makefile: New file.
400         * sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: New file.
401         * sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: New file.
402         * sysdeps/powerpc/powerpc64/power4/Makefile: New file.
403         * sysdeps/powerpc/powerpc64/power4/memcopy.h: New file.
404         * sysdeps/powerpc/powerpc64/power4/wordcopy.c: New file.
405         * sysdeps/powerpc/powerpc64/power6/wordcopy.c: New file.
407 2006-07-06  Steven Munroe  <sjmunroe@us.ibm.com>
409         * sysdeps/powerpc/powerpc64/power6/memcpy.S: New file.
411 2006-03-20  Steven Munroe  <sjmunroe@us.ibm.com>
413         * sysdeps/powerpc/powerpc32/power4/memcmp.S: New file.
414         * sysdeps/powerpc/powerpc32/power4/memcpy.S: New file.
415         * sysdeps/powerpc/powerpc32/power4/memset.S: New file.
416         * sysdeps/powerpc/powerpc32/power4/strncmp.S: New file.
417         * sysdeps/powerpc/powerpc64/power4/memcmp.S: New file.
418         * sysdeps/powerpc/powerpc64/power4/memcpy.S: New file.
419         * sysdeps/powerpc/powerpc64/power4/strncmp.S: New file.
421 2007-05-29  Roland McGrath  <roland@redhat.com>
423         * po/Makefile (po-sed-cmd): New variable.
424         (libc.pot.files): Move sed command text in there, avoid \ inside ''.
426 2007-05-29  Ulrich Drepper  <drepper@redhat.com>
428         * crypt/md5-crypt.c: Fix comment.
430         * nscd/nscd_helper.c (get_mapping): Handle short replies instead
431         of crashing.  When this is the case or if the reply is malformed,
432         don't try to close the new file descriptor since it does not
433         exist.
434         Patch in part by Guillaume Chazarain <guichaz@yahoo.fr>.
436 2007-05-28  Jakub Jelinek  <jakub@redhat.com>
438         * sysdeps/unix/sysv/linux/futimes.c (miss_utimensat): Don't define
439         if __NR_utimensat is not defined.
441 2007-05-26  Ulrich Drepper  <drepper@redhat.com>
443         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Include <sysdep.h>.
445 2007-05-25  Jakub Jelinek  <jakub@redhat.com>
447         * io/bits/fcntl2.h (__open_2): Add nonnull attribute.
448         (open): Fix comment typos.  Don't call __open_2 if flags
449         is a compile time constant without O_CREAT.
450         (__open64_2): Add nonnull attribute.
451         (open64): Fix comment typos.  Don't call __open64_2 if flags
452         is a compile time constant without O_CREAT.
453         (__openat_2): Add nonnull attribute, fix nonnull attribute
454         on redirect.
455         (openat): Fix comment typos.  Don't call __openat_2 if flags
456         is a compile time constant without O_CREAT.
457         (__openat64_2): Add nonnull attribute, fix nonnull attribute
458         on redirect.
459         (openat64): Fix comment typos.  Don't call __openat64_2 if flags
460         is a compile time constant without O_CREAT.
462 2007-05-24  Ulrich Drepper  <drepper@redhat.com>
464         * Makerules (sysd-rules): Define PTW for ptw-* files.
465         * Versions: Define GLIBC_2.7 for libc.
466         * include/stdio.h: Declare __fortify_fail.
467         * debug/fortify_fail.c: New file.
468         * debug/Makefile (routines): Add fortify_fail.
469         * debug/chk_fail.c: Use __fortify_fail.
470         * debug/stack_chk_fail.c: Likewise.
471         * io/Versions: Export __open_2, __open64_2, __openat_2, and
472         __openat64_2 for GLIBC_2.7.
473         * io/fcntl.h: When compiling with fortification, include bits/fcntl2.h.
474         * io/open.c: Define *_2 variant of function which checks for O_CREAT
475         and fails if necessary.
476         * io/open64.c: Likewise.
477         * io/openat.c: Likewise.
478         * io/openat64.c: Likewise.
479         * sysdeps/unix/sysv/linux/open64.c: Likewise.
480         * sysdeps/unix/sysv/linux/openat.c: Likewise.
481         * sysdeps/unix/sysv/linux/openat64.c: Likewise.
482         * io/bits/fcntl2.h: New file.
483         * include/fcntl.h: Declare __open_2, __open64_2, __openat_2, and
484         __openat64_2.
485         * include/bits/fcntl2.h: New file.
486         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
487         Add open_2.
488         * sysdeps/unix/sysv/linux/open_2.c: New file.
490 2007-05-21  Ulrich Drepper  <drepper@redhat.com>
492         * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Pass correct value
493         as second parameter to handle_intel.
495         * nscd/aicache.c (addhstaiX): If reported TTL is zero don't cache
496         the entry.
498         * sysdeps/unix/sysv/linux/x86_64/sysconf.c: Move cache information
499         handling to ...
500         * sysdeps/x86_64/cacheinfo.c: ... here.  New file.
501         * sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add
502         cacheinfo.
503         * sysdeps/x86_64/memcpy.S: Complete rewrite.
504         * sysdeps/x86_64/mempcpy.S: Adjust appropriately.
505         Patch by Evandro Menezes <evandro.menezes@amd.com>.
507         * sysdeps/unix/sysv/linux/i386/epoll_pwait.S: New file.
509 2007-05-21  Jakub Jelinek  <jakub@redhat.com>
511         [BZ #4525]
512         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add epoll_pwait.
513         * sysdeps/unix/sysv/linux/epoll_pwait.c: New file.
514         * sysdeps/unix/sysv/linux/syscalls.list (epoll_pwait): Remove.
516         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (epoll_pwait): Declare.
518         [BZ #4514]
519         * stdio-common/vfprintf.c (vfprintf): Don't shadow workstart variable,
520         reinitialize workend at the start of each do_positional format spec
521         loop, free workstart before do_positional loops.
522         (printf_unknown): Fix size of work_buffer.
523         * stdio-common/tst-sprintf.c (main): Add 3 new testcases.
525         * malloc/hooks.c (MALLOC_STATE_VERSION): Bump.
526         (public_sET_STATe): If ms->version < 3, put all chunks into
527         unsorted chunks and clear {fd,bk}_nextsize fields of largebin
528         chunks.
530         * malloc/malloc.c [MALLOC_DEBUG]: Revert 2007-05-13 changes.
531         * malloc/hooks.c: Likewise.
532         * malloc/arena.c: Likewise.
533         * malloc/malloc.c (do_check_malloc_state): Don't assert
534         n_mmaps is not greater than n_mmaps_max.  This removes the need
535         for the previous change.
537         * malloc/Makefile (CFLAGS-malloc.c): Revert accidental
538         2007-05-07 commit.
540 2007-05-19  Ulrich Drepper  <drepper@redhat.com>
542         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PRIVATE_FUTEX):
543         Define for kernel >= 2.6.22.
545 2007-05-18  Ulrich Drepper  <drepper@redhat.com>
547         * elf/dl-close.c (_dl_close_worker): When removing object from
548         global scope, wait for all lookups to finish afterwards.
549         * elf/dl-open.c (add_to_global): When global scope array must
550         grow, allocate a new one and free old array only after all
551         lookups finish.
552         * elf/dl-runtime.c (_dl_fixup): Protect using global scope.
553         (_dl_lookup_symbol_x): Likewise.
554         * elf/dl-support.c: Define _dl_wait_lookup_done.
555         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add
556         _dl_wait_lookup_done.
558         * malloc/malloc.c (do_check_chunk): Correct check for mmaped block
559         not overlapping with arena.
561         * malloc/mcheck.c (reallochook): If size==0, free the block.
563         * rt/tst-shm.c: Use fstat64 instead of fstat.
565         * sysdeps/unix/sysv/linux/i386/sync_file_range.S: Fix case where
566         __NR_sync_file_range is not defined.
568 2007-05-17  Ulrich Drepper  <drepper@redhat.com>
570         Dummy files to prevent stub versions from being used.
571         * sysdeps/x86_64/fpu/k_cosl.c: New file.
572         * sysdeps/x86_64/fpu/k_rem_pio2l.c: New file.
573         * sysdeps/x86_64/fpu/k_sinl.c: New file.
574         * sysdeps/x86_64/fpu/k_tanl.c: New file.
576         * version.h (VERSION): Set to 2.6.90.
578 2007-05-14  Ulrich Drepper  <drepper@redhat.com>
580         * version.h (VERSION): Define to 2.6.
581         * include/features.h (__GLIBC_MINOR__): Define to 6.
583         * malloc/malloc.c: Use all small bin slots on 64-bit archs.
585         * malloc/malloc.c (largebin_index): Really have 32 buckets with 64
586         sizes.
588 2007-05-13  Ulrich Drepper  <drepper@redhat.com>
590         * malloc/malloc.c [MALLOC_DEBUG]: Keep track of current maximum
591         number of mmaps.  n_mmaps_max is the target.
592         * malloc/hooks.c: Likewise.
593         * malloc/arena.c: Likewise.
595 2007-05-12  Andreas Jaeger  <aj@suse.de>
597         * sysdeps/unix/sysv/linux/tst-getcpu.c: Include <unistd.h> for
598         getpid.
600 2007-05-11  Ulrich Drepper  <drepper@redhat.com>
602         * elf/dl-close.c (_dl_close_worker): Help gcc to optimize by
603         adding new variables.
605         * elf/dl-open.c (add_to_global): Introduce variable ns to help gcc
606         optimize.  Completely extend global scope array before making the
607         new entries visible.
609 2007-05-10  Ulrich Drepper  <drepper@redhat.com>
611         * sysdeps/unix/sysv/linux/tst-getcpu.c: New file.
612         * sysdeps/unix/sysv/linux/Makefile [subdir=posix] (tests): Add
613         tst-getcpu.
615         * include/link.h: Move l_version and l_nversion members around to
616         fill gaps.
618         * scripts/check-c++-types.sh: Don't use -fnu89-inline option.
620         * sysdeps/unix/sysv/linux/sched_setaffinity.c
621         (__sched_setaffinity_new): If syscall was successful and
622         RESET_VGETCPU_CACHE is defined, use it before returning.
623         * sysdeps/unix/sysv/linux/x86_64/sched_setaffinity.c: New file.
625         * io/sys/stat.h: Make sure struct timespec is defined for
626         __USE_ATFILE.
628         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Define UTIME_NOW and
629         UTIME_OMIT.
630         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
631         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
632         * sysdeps/unix/sysv/linux/alpha/bits/stat.h: Likewise.
633         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
634         * sysdeps/unix/sysv/linux/bits/stat.h: Likewise.
635         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
636         * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_UTIMENSAT.
637         * io/sys/stat.h: Declare utimensat, futimens.
638         * io/utimensat.c: New file.
639         * io/futimens.c: New file.
640         * sysdeps/unix/sysv/linux/utimensat.c: New file.
641         * sysdeps/unix/sysv/linux/futimens.c: New file.
642         * io/Makefile (routines): Add utimensat, futimens.
643         * io/Versions: Add utimensat, futimens to GLIBC_2.6.
644         * sysdeps/unix/sysv/linux/lutimes.c: New file.
645         * sysdeps/unix/sysv/linux/futimes.c: Use utimensat syscall if
646         available.
648         * include/sys/cdefs.h: Redefine __nonnull so that test for
649         incorrect parameters in the libc code itself are not omitted.
651 2007-05-09  Jakub Jelinek  <jakub@redhat.com>
653         * sysdeps/ia64/fpu/fraiseexcpt.c (feraiseexcept): Don't raise overflow
654         exception in addition to inexact when asked to raise only FE_INEXACT.
656         [BZ #3427]
657         * sysdeps/s390/fpu/feholdexcpt.c (feholdexcept): Don't clear exceptions
658         in *envp.
660 2007-05-07  Ulrich Drepper  <drepper@redhat.com>
662         [BZ #4403]
663         * string/strfry.c (strfry): Make result more random.
665 2007-05-07  Richard Henderson  <rth@redhat.com>
667         * sysdeps/alpha/fpu/bits/mathinline.h (__isnanl): Don't define
668         if __NO_LONG_DOUBLE_MATH.
669         * sysdeps/unix/sysv/linux/alpha/ioperm.c: If BWX insns not
670         available in the compiler, add .arch directive to the assembly.
672 2007-05-07  Jakub Jelinek  <jakub@redhat.com>
674         * sysdeps/alpha/fpu/s_nearbyint.c (nearbyintl): Fix version on
675         compat_symbol to GLIBC_2_1.
676         * sysdeps/alpha/fpu/s_fmin.S (fminl): Likewise.
677         * sysdeps/alpha/fpu/s_trunc.c (truncl): Likewise.
678         * sysdeps/alpha/fpu/s_fmax.S (fmaxl): Likewise.
679         * sysdeps/alpha/fpu/s_lrint.c (lrintl, llrintl): Likewise.
680         * sysdeps/alpha/fpu/s_lround.c (lroundl, llroundl): Likewise.
681         * sysdeps/alpha/fpu/s_round.c (roundl): Likewise.
682         * sysdeps/alpha/fpu/s_isnan.c (isnanl): Provide compat_symbol in
683         libc, not libm.
684         (__isnanl): New compat_symbol.
686 2007-05-07  Ulrich Drepper  <drepper@redhat.com>
687             Jakub Jelinek  <jakub@redhat.com>
689         * malloc/arena.c (heap_info): Add mprotect_size field, adjust pad.
690         (new_heap): Initialize mprotect_size.
691         (grow_heap): When growing, only mprotect from mprotect_size till
692         new_size if mprotect_size is smaller.  When shrinking, use PROT_NONE
693         MMAP for __libc_enable_secure only, otherwise use MADV_DONTNEED.
695 2007-04-30  Steven Munroe  <sjmunroe@us.ibm.com>
696             Peter Bergner  <bergner@us.ibm.com>
698         * sysdeps/powerpc/bits/fenv.h: Declare __fe_mask_env extern.
699         Define FE_NOMASK_ENV as FE_EANBLED_ENV.  Define FE_MASK_ENV.
700         * sysdeps/powerpc/fpu/Makefile: Add fe_mask to libm-support.
701         * sysdeps/powerpc/fpu/fe_mask.c: New file.
702         * sysdeps/powerpc/fpu/fe_nomask.c: Correct comment.
703         * sysdeps/powerpc/fpu/fedisblxcpt.c (fedisableexcept):
704         Call __fe_mask_env() if all FP exceptions disabled.
705         * sysdeps/powerpc/fpu/feholdexcpt.c (feholdexcept): Copy high 32-bits
706         from old FPSCR to new fenv to propagate DFP rounding modes.
707         Call __fe_mask_env() if FP exceptions previously enabled.
708         * sysdeps/powerpc/fpu/fesetenv.c (fesetenv): Change mask to merge
709         exceptions from env.  Use __fe_nomask_env() or __fe_mask_env() when
710         transitioning from all exceptions disabled to any exception enabled
711         or visa versa.
712         * sysdeps/powerpc/fpu/feupdateenv.c (__feupdateenv): Change mask to
713         merge exceptions from env.  Call __fe_nomask_env or __fe_mask_env
714         when transitioning from all exceptions disabled to any exception
715         enabled or visa versa.
716         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Moved to...
717         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c: ...here.
718         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: Moved to...
719         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c: ...here.
720         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_mask.c: New file.
721         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c: New file.
723 2007-05-06  Ulrich Drepper  <drepper@redhat.com>
725         [BZ #4465]
726         * posix/unistd.h: Remove __THROW from fdatasync.
728 2007-05-06  Mike Frysinger  <vapier@gentoo.org>
730         [BZ #4465]
731         * sysdeps/unix/sysv/linux/syscalls.list (fdatasync): Add "C" to args.
733 2007-05-06  Ulrich Drepper  <drepper@redhat.com>
735         * stdio-common/vfprintf.c (process_string_arg): Optimize
736         ridiculous precision in wide char code printing multi-byte string.
737         Reported by Jim Meyering <jim@meyering.net>.
739         [BZ #4131]
740         * elf/dl-addr.c (_dl_addr): Compare address with actual segment
741         boundaries to work around systems with overlapping binary loading.
742         Based on a patch by Suzuki <suzuki@in.ibm.com>.
744 2007-05-04  Ulrich Drepper  <drepper@redhat.com>
746         * stdio-common/vfprintf.c (process_string_arg): Adjust call to
747         __mbsnrtowcs after last change.
749         * locale/programs/linereader.c (get_symname): Fix adding final NUL.
750         (get_ident): Likewise.
752 2007-05-03  Jakub Jelinek  <jakub@redhat.com>
754         * soft-fp/op-common.h (FP_TRUNC): Replace raising of FP_EX_INEXACT
755         with setting the sticky bit.
756         * math/test-misc.c (main): Add more truncation tests.
758 2007-04-14  Uros Bizjak  <ubizjak@gmail.com>
760         * soft-fp/floatunsidf.c (__floatunsidf): Use DFtype instead of
761         double in the function declaration.
762         * soft-fp/floatundidf.c (__floatundidf): Use DFtype instead of
763         double in the function declaration.
764         * soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of
765         float in the function declaration.
766         * soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of
767         float in the function declaration.
769         * soft-fp/extended.h (FP_UNPACK_RAW_E): Do not increase X##_e for
770         denormal operands.  Do not generate FP_EX_DENORM exception.
771         (FP_UNPACK_RAW_EP): Ditto.
772         (FP_UNPACK_SEMIRAW_E): Use FP_UNPACK_RAW_E instead of
773         undefined _FP_UNPACK_RAW_E.
774         (FP_UNPACK_SEMIRAW_EP): Use FP_UNPACK_RAW_EP instead of
775         undefined _FP_UNPACK_RAW_EP.
776         (FP_PACK_SEMIRAW_E): Use FP_PACK_RAW_E instead of
777         undefined _FP_PACK_RAW_E.
778         (FP_PACK_SEMIRAW_EP): Use FP_PACK_RAW_EP instead of
779         undefined _FP_PACK_RAW_EP.
781         * soft-fp/op-2.h (_FP_FRAC_COPY_2_2): Define as alias to
782         _FP_FRAC_COPY_2.
783         * soft-fp/op-4.h (_FP_FRAC_COPY_2_2): Define as alias to
784         _FP_FRAC_COPY_4.
786 2007-04-16  Uros Bizjak  <ubizjak@gmail.com>
787             Jakub Jelinek  <jakub@redhat.com>
789         * soft-fp/op-common.h (FP_EXTEND): Do not abort when
790         _FP_EXPBIAS_##dfs == _FP_EXPBIAS_##sfs.  Handle denormals for
791         this case.
792         * soft-fp/op-common.h (FP_TRUNC): Ditto.
794 2007-05-03  Jakub Jelinek  <jakub@redhat.com>
796         * math/test-misc.c (main): Add tests for rounding long double
797         values close to smallest double denormalized value to double.
799 2007-04-30  Joseph Myers  <joseph@codesourcery.com>
801         * soft-fp/op-common.h (FP_TRUNC): Correct off-by-one error in
802         condition for truncating to 0.  Set sticky bit for such
803         truncation.
805 2007-05-02  Jakub Jelinek  <jakub@redhat.com>
807         * stdio-common/vfprintf.c (process_string_arg): Use a VLA rather than
808         fixed length array for ignore.
810 2007-04-30  Ulrich Drepper  <drepper@redhat.com>
812         [BZ #4438]
813         * stdio-common/vfprintf.c (process_string_arg): Don't overflow the
814         stack for large precisions.
815         * stdio-common/test-vfprintf.c (main): Add test for large
816         precision.
818 2007-04-30  Jakub Jelinek  <jakub@redhat.com>
820         * stdio-common/printf_fp.c (___printf_fp): Don't print negative sign
821         for exponent 0.
822         * stdio-common/tfformat.c (sprint_doubles): Add a new test.
824         [BZ #4439]
825         * resolv/inet_ntop.c (inet_ntop4): Take terminating '\0' into
826         account in the size check.
827         * resolv/tst-inet_ntop.c: New test.
828         * resolv/Makefile (tests): Add tst-inet_ntop.
830 2007-04-30  Ulrich Drepper  <drepper@redhat.com>
831             Jakub Jelinek  <jakub@redhat.com>
833         [BZ #4349]
834         * malloc/malloc.c: Keep separate list for first blocks on the bin
835         lists with a given size.  This helps skipping over list elements
836         we know won't fit in two places.
837         Inspired by a patch by Tomash Brechko <tomash.brechko@gmail.com>.
839 2007-04-28  Ulrich Drepper  <drepper@redhat.com>
841         [BZ #4102]
842         * sysdeps/posix/getaddrinfo.c (default_labels): Assign separate
843         label to Teredo tunnel addresses 2001://32.
845 2007-04-27  Ulrich Drepper  <drepper@redhat.com>
847         * locale/programs/ld-collate.c (collate_read): Allow order_start
848         after copy.
850         * locale/programs/ld-collate.c (collate_read): Fix printing of
851         error message.
853         [BZ #3213]
854         * locale/C-translit.h.in: Add entry for U2044.
856         [BZ #4342]
857         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Allow
858         hexa-decimal floats without exponent.
859         * stdio-common/tstscanf.c (main): Adjust Test 8 test for success.
861 2007-04-25  Ulrich Drepper  <drepper@redhat.com>
863         * sysdeps/unix/sysv/linux/bits/sched.h: Declare sched_getcpu.
864         * sysdeps/unix/sysv/linux/sched_getcpu.c: New file.
865         * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: New file.
866         * sysdeps/unix/sysv/linux/Versions: Export sched_getcpu for
867         GLIBC_2.6.
868         * sysdeps/unix/sysv/linux/Makefile [subdir=posix] (sysdep_routines):
869         Add sched_getcpu.
871 2007-04-25  Jakub Jelinek  <jakub@redhat.com>
873         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Return -1 instead
874         of 0 after the out_fail label.
876 2007-04-25  Ulrich Drepper  <drepper@redhat.com>
878         [BZ #4406]
879         * iconv/gconv_charset.h (strip): Allow ':'.
880         * iconv/iconv_open.c (iconv_open): Adjust comment.
882 2007-04-25  Jakub Jelinek  <jakub@redhat.com>
884         * libio/bits/stdio.h (fgetc_unlocked): Add extern inline optimized
885         version.
887 2007-04-23  Jakub Jelinek  <jakub@redhat.com>
889         [BZ #4381]
890         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Ensure sufficient
891         alignment of buffer and tmp_buffer.
892         * nis/nss_nis/nis-hosts.c (internal_nis_gethostent_r,
893         internal_gethostbyname2_r, _nss_nis_gethostbyaddr_r): Ensure sufficient
894         alignment of buffer.
895         * resolv/nss_dns/dns-hosts.c (getanswer_r): Likewise.  Handle buflen
896         bigger than INT_MAX.
897         * resolv/nss_dns/dns-network.c (getanswer_r): Likewise.  Add errnop and
898         h_errnop arguments.  Fail if buflen is too small.
899         (_nss_dns_getnetbyname_r, _nss_dns_getnetbyaddr_r): Adjust callers.
901 2007-04-23  Jakub Jelinek  <jakub@redhat.com>
903         [BZ #4405]
904         * iconvdata/gconv-modules (E13B): Add a missing slash to the alias
905         name.  Patch by Aurelien Jarno <aurelien@aurel32.net>.
907 2007-04-22  Roland McGrath  <roland@redhat.com>
909         * elf/elf.h (NT_PRXFPREG): New macro.
911 2007-04-19  Andreas Jaeger  <aj@suse.de>
913         [BZ #3905]
914         * bits/in.h (IPV6_ROUTER_ALERT, IPV6_MTU_DISCOVER, IPV6_MTU,
915         IPV6_RECVERR, IPV6_V6ONLY, IPV6_JOIN_ANYCAST, IPV6_LEAVE_ANYCAST):
916         Added.
918 2007-04-19  Ulrich Drepper  <drepper@redhat.com>
920         * include/sys/mman.h: Mark madvise hidden.
921         * misc/madvise.c: Add libc_hidden_def.
923 2007-04-06  Jakub Jelinek  <jakub@redhat.com>
925         * nis/nis_domain_of.c (__nis_domain_of): New function.
926         * include/rpcsvc/nislib.h (__nis_domain_of): New prototype.
927         * nis/nis_lookup.c (nis_lookup): Use __nis_domain_of.
928         * nis/nis_call.c (rec_dirsearch): Likewise.
929         (first_shoot): Likewise.  Remove search_parent_first argument.
930         (struct nis_server_cache): Rename search_parent_first field
931         to search_parent.
932         (nis_server_cache_search, nis_server_cache_add): Rename
933         search_parent_first argument to search_parent.
934         (__nisfind_server): Likewise.  If search_parent, call
935         __nis_domain_of.
937 2007-04-18  Ulrich Drepper  <drepper@redhat.com>
939         * sysdeps/posix/getaddrinfo.c: Remove commented-out code.
941 2007-04-17  Ulrich Drepper  <drepper@redhat.com>
943         [BZ #4368]
944         * stdlib/stdlib.h: Remove obsolete part of comment for realpath.
946 2007-04-16  Ulrich Drepper  <drepper@redhat.com>
948         [BZ #4364]
949         * posix/unistd.h (_XOPEN_VERSION): Define appropriately for SUSv3.
951 2007-04-15  Jakub Jelinek  <jakub@redhat.com>
953         * locale/programs/locarchive.c (INITIAL_NUM_NAMES,
954         INITIAL_SIZE_STRINGS, INITIAL_NUM_LOCREC): Update to accomodate
955         current number of locales in SUPPORTED.
956         (create_archive): Initialize serial.
957         (enlarge_archive): Preserve aliases rather than duplicating
958         their locrecs.
960 2007-04-13  Jakub Jelinek  <jakub@redhat.com>
962         * libio/genops.c (_IO_default_finish): Call _IO_lock_fini
963         after _IO_un_link, not before it.
965         * stdio-common/printf_fp.c (___printf_fp): Fix exponent -4
966         special case handling when wcp == wstartp + 1.  Fix a comment typo.
967         * stdio-common/tfformat.c (sprint_doubles): Add a new testcase.
969 2007-03-30  Jakub Jelinek  <jakub@redhat.com>
971         * libio/libio.h (__underflow, __uflow, __overflow, __wunderflow,
972         __wuflow, __woverflow, _IO_getc, _IO_putc, _IO_peekc_locked, _IO_padn,
973         _IO_sgetn, _IO_seekoff, _IO_seekpos, _IO_getwc, _IO_putwc, _IO_wpadn):
974         Remove __THROW.
975         * libio/fileops.c (new_do_write, _IO_file_xsgetn_mmap,
976         _IO_file_xsgetn_maybe_mmap): Likewise.
977         * libio/oldfileops.c (old_do_write): Likewise.
978         * libio/libioP.h (_IO_switch_to_get_mode, _IO_switch_to_wget_mode,
979         _IO_init_marker, _IO_init_wmarker, _IO_default_uflow,
980         _IO_wdefault_uflow, _IO_default_setbuf, _IO_default_seekpos,
981         _IO_do_write, _IO_new_do_write, _IO_old_do_write, _IO_wdo_write,
982         _IO_flush_all_lockp, _IO_flush_all, _IO_cleanup,
983         _IO_flush_all_linebuffered, _IO_new_fgetpos, _IO_old_fgetpos,
984         _IO_new_fsetpos, _IO_old_fsetpos, _IO_new_fgetpos64,
985         _IO_old_fgetpos64, _IO_new_fsetpos64, _IO_old_fsetpos64,
986         _IO_file_setbuf, _IO_file_seekoff, _IO_file_xsputn, _IO_file_xsgetn,
987         _IO_file_underflow, _IO_file_underflow_mmap,
988         _IO_file_underflow_maybe_mmap, _IO_file_overflow, _IO_file_attach,
989         _IO_file_open, _IO_file_fopen, _IO_file_write, _IO_file_read,
990         _IO_file_sync, _IO_file_close_it, _IO_file_finish,
991         _IO_new_file_attach, _IO_new_file_close_it, _IO_new_file_finish,
992         _IO_new_file_fopen, _IO_new_file_setbuf, _IO_file_setbuf_mmap,
993         _IO_new_file_sync, _IO_new_file_underflow, _IO_new_file_overflow,
994         _IO_new_file_seekoff, _IO_new_file_write, _IO_new_file_xsputn,
995         _IO_old_file_setbuf, _IO_old_file_seekoff, _IO_old_file_xsputn,
996         _IO_old_file_underflow, _IO_old_file_overflow, _IO_old_file_attach,
997         _IO_old_file_fopen, _IO_old_file_write, _IO_old_file_sync,
998         _IO_old_file_close_it, _IO_old_file_finish, _IO_wfile_xsputn,
999         _IO_wfile_setbuf, _IO_wfile_sync, _IO_wfile_underflow,
1000         _IO_wfile_overflow, _IO_wfile_seekoff, _IO_old_proc_open,
1001         _IO_old_proc_close, _IO_getdelim, _IO_flush_all_internal,
1002         _IO_adjust_column_internal, _IO_default_uflow_internal,
1003         _IO_default_xsgetn_internal, _IO_wdefault_xsputn_internal,
1004         _IO_wdefault_xsgetn_internal, _IO_wdefault_uflow_internal,
1005         _IO_file_setbuf_internal, _IO_file_seekoff_internal,
1006         _IO_file_xsputn_internal, _IO_file_xsgetn_internal,
1007         _IO_file_close_it_internal, _IO_file_underflow_internal,
1008         _IO_file_overflow_internal, _IO_file_attach_internal,
1009         _IO_file_fopen_internal, _IO_file_sync_internal,
1010         _IO_file_finish_internal, _IO_wfile_xsputn_internal,
1011         _IO_wfile_seekoff_internal, _IO_wfile_sync_internal,
1012         _IO_switch_to_wget_mode_internal, _IO_padn_internal,
1013         _IO_switch_to_get_mode_internal, _IO_seekoff_unlocked,
1014         _IO_seekpos_unlocked): Likewise.
1015         (_IO_strtod, _IO_dtoa, _IO_outfloat, _IO_read, _IO_write,
1016         _IO_lseek, _IO_close, _IO_fstat): Remove unused prototypes.
1018 2007-04-16  Jakub Jelinek  <jakub@redhat.com>
1020         * locale/programs/locarchive.c (show_archive_content): Fix sizeof
1021         argument in xmalloc size computation.
1023 2007-04-01  Jakub Jelinek  <jakub@redhat.com>
1025         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (__nextafterl): Use
1026         math_opt_barrier and math_force_eval macros.
1028 2007-03-27  Jakub Jelinek  <jakub@redhat.com>
1030         [BZ #3306]
1031         * math/math_private.h (math_opt_barrier, math_force_eval): Define.
1032         * sysdeps/i386/fpu/math_private.h: New file.
1033         * sysdeps/x86_64/fpu/math_private.h: New file.
1034         * math/s_nexttowardf.c (__nexttowardf): Use math_opt_barrier and
1035         math_force_eval macros.  Use "+m" constraint on asm rather than
1036         "=m" and "m".
1037         * math/s_nextafter.c (__nextafter): Likewise.
1038         * sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c (__nexttoward):
1039         Likewise.
1040         * sysdeps/ieee754/flt-32/s_nextafterf.c (__nextafterf): Likewise.
1041         * sysdeps/ieee754/ldbl-128/s_nexttoward.c (__nexttoward): Likewise.
1042         * sysdeps/ieee754/ldbl-96/s_nexttoward.c (__nexttoward): Likewise.
1043         * sysdeps/i386/fpu/s_nextafterl.c (__nextafterl): Use
1044         math_opt_barrier and math_force_eval macros.
1045         * sysdeps/ieee754/ldbl-128/s_nextafterl.c (__nextafterl): Likewise.
1046         * sysdeps/ieee754/ldbl-96/s_nextafterl.c (__nextafterl): Likewise.
1047         * sysdeps/i386/fpu/s_nexttoward.c: Include float.h.
1048         (__nexttoward): Use math_opt_barrier and
1049         math_force_eval macros.  Use "+m" constraint on asm rather than
1050         "=m" and "m".  Only use asm to force double result if
1051         FLT_EVAL_METHOD is 2.
1052         * sysdeps/i386/fpu/s_nexttowardf.c: Include float.h.
1053         (__nexttowardf): Use math_opt_barrier and
1054         math_force_eval macros.  Use "+m" constraint on asm rather than
1055         "=m" and "m".  Only use asm to force double result if
1056         FLT_EVAL_METHOD is not 0.
1057         * sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c: Include float.h.
1058         (__nexttowardf): Use math_opt_barrier and
1059         math_force_eval macros.  If FLT_EVAL_METHOD is not 0, force
1060         x to float using asm.
1061         * sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c: Include float.h.
1062         (__nldbl_nexttowardf): Use math_opt_barrier and
1063         math_force_eval macros.  If FLT_EVAL_METHOD is not 0, force
1064         x to float using asm.
1065         * sysdeps/ieee754/ldbl-96/s_nexttowardf.c: Include float.h.
1066         (__nexttowardf): Use math_opt_barrier and math_force_eval
1067         macros.  If FLT_EVAL_METHOD is not 0, force x to float using asm.
1068         * math/bug-nextafter.c (zero, inf): New variables.
1069         (main): Add new tests.
1070         * math/bug-nexttoward.c (zero, inf): New variables.
1071         (main): Add new tests.
1073 2007-03-22  Jakub Jelinek  <jakub@redhat.com>
1075         [BZ #3427]
1076         * sysdeps/x86_64/fpu/feholdexcpt.c (feholdexcept): Clear all
1077         exceptions both in SW and MXCSR.
1078         * sysdeps/x86_64/fpu/feupdateenv.c: New file.
1079         * sysdeps/x86_64/fpu/feenablxcpt.c (feenableexcept): Remove dead code.
1080         * sysdeps/x86_64/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
1081         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions
1082         in MXCSR if SSE is available.
1083         * sysdeps/i386/fpu/feupdateenv.c: Include unistd.h, dl-procinfo.h
1084         and ldsodefs.h.
1085         (__feupdateenv): Query exceptions also from MXCSR if SSE is available.
1086         Fix comment typo.
1087         * sysdeps/ia64/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions.
1088         Return 0 rather than 1.
1089         * sysdeps/ia64/fpu/feupdateenv.c (feupdateenv): Fix comment typo.
1090         Remove incorrect part of a comment.  Fix argument to feraiseexcept.
1091         * math/test-fenv.c (feholdexcept_tests): New function.
1092         (main): Call it.
1094 2007-01-05  Richard B. Kreckel  <kreckel@ginac.de>
1096         [BZ #3427]
1097         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions
1098         in SW.
1100 2007-04-13  Jakub Jelinek  <jakub@redhat.com>
1102         [BZ #4344]
1103         * elf/ldconfig.c (search_dir): Fix 2 off-by-2 errors.
1104         Reported by David Anderson <davea42@earthlink.net>.
1106 2007-04-07  Ulrich Drepper  <drepper@redhat.com>
1108         * posix/sys/wait.h: Remove unnecessary forward declaration.
1110 2007-04-05  Jakub Jelinek  <jakub@redhat.com>
1112         * nis/nis_call.c (__nisfind_server): Replace (*dir)->do_servers
1113         with obj->do_servers after first_shoot.
1115 2007-04-03  Ulrich Drepper  <drepper@redhat.com>
1117         * posix/Makefile (routines): Add sched_cpucount.
1118         (tests): Add tst-cpucount.
1119         * posix/sched_cpucount.c: New file.
1120         * posix/tst-cpucount.c: New file.
1121         * posix/Versions: Export __sched_cpucount with version GLIBC_2.6.
1122         * bits/sched.h: Define __CPU_COUNT.  Declare __sched_cpucount.
1123         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
1124         * posix/sched.h: Define CPU_COUNT.
1126 2007-03-27  Jakub Jelinek  <jakub@redhat.com>
1128         * posix/fnmatch.c (STRUCT): Define.
1129         (fnmatch): Pass NULL as last argument to internal_fn{,w}match.
1130         * posix/fnmatch_loop.c (struct STRUCT): New type.
1131         (FCT): Add ends argument.  If ends != NULL and normal * is
1132         seen in the pattern, store current pattern and string pointers
1133         and return.  Adjust recursive calls.
1134         (EXT): Adjust FCT callers.
1135         (STRUCT): Undef at the end of the file.
1136         * posix/Makefile (tests): Add tst-fnmatch2.
1137         * posix/tst-fnmatch2.c: New test.
1139 2007-04-01  Jakub Jelinek  <jakub@redhat.com>
1141         * sysdeps/ia64/fpu/fesetround.c (fesetround): Return 0 on success
1142         and 1 on failure.
1144         * sysdeps/unix/sysv/linux/sync_file_range.c (sync_file_range):
1145         Change last argument to unsigned int.
1147 2007-03-23  Jakub Jelinek  <jakub@redhat.com>
1149         * scripts/check-local-headers.sh: Filter out sys/capability.h.
1151 2007-03-22  Jakub Jelinek  <jakub@redhat.com>
1153         * config.h.in (HAVE_LIBCAP): Add.
1154         * nscd/selinux.h: Include sys/capability.h rather than non-existent
1155         sys/capabilities.h.
1156         * nscd/selinux.c (preserve_capabilities): Use cap_free instead of
1157         free_caps.  Cast away const from 4th cap_set_flag argument.
1159 2007-03-26  Ulrich Drepper  <drepper@redhat.com>
1161         * sysdeps/unix/sysv/linux/Versions: Move sync_file_range to
1162         GLIBC_2.6.
1163         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
1164         Add sync_file_range.
1165         Reported by Atsushi Nemoto <anemo@mba.ocn.ne.jp>.
1167 2007-03-19  Steven Munroe  <sjmunroe@us.ibm.com>
1169         * sysdeps/powerpc/bits/atomic.h
1170         [!MUTEX_HINT_ACQ]: Define MUTEX_HINT_ACQ.
1171         [!MUTEX_HINT_REL]: Define MUTEX_HINT_REL.
1172         (__arch_compare_and_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx.
1173         (__arch_compare_and_exchange_val_32_rel): Add MUTEX_HINT_REL to lwarx.
1174         (__arch_atomic_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx.
1175         (__arch_atomic_exchange_rel_32_rel): Add MUTEX_HINT_REL to lwarx.
1176         * sysdeps/powerpc/powerpc32/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6X]:
1177         Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0".
1178         (__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx.
1179         (__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx.
1180         * sysdeps/powerpc/powerpc64/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6D]:
1181         Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0".
1182         (__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx.
1183         (__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx.
1184         (__arch_compare_and_exchange_bool_64_acq): Add MUTEX_HINT_ACQ to lwarx.
1185         (__arch_compare_and_exchange_bool_64_rel): Add MUTEX_HINT_REL to lwarx.
1186         (__arch_compare_and_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx.
1187         (__arch_compare_and_exchange_val_64_rel): Add MUTEX_HINT_REL to lwarx.
1188         (__arch_atomic_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx.
1189         (__arch_atomic_exchange_rel_64_rel): Add MUTEX_HINT_REL to lwarx.
1191 2007-03-20  Jakub Jelinek  <jakub@redhat.com>
1193         * sysdeps/unix/sysv/linux/powerpc/libc-start.c
1194         (__cache_line_size): Define the variable here.  Add
1195         attribute_hidden, remove weak_extern.
1196         (__libc_start_main): Set __cache_line_size
1197         unconditionally.
1198         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c
1199         (__cache_line_size): Define the variable here.  Add
1200         attribute_hidden, remove weak_extern.
1201         (DL_PLATFORM_AUXV): Set __cache_line_size
1202         unconditionally.
1203         * sysdeps/powerpc/powerpc32/dl-machine.c (__cache_line_size): Remove
1204         weak_extern, add attribute_hidden.
1205         (__elf_machine_runtime_setup): Assume __cache_line_size is always
1206         defined in ld.so.
1207         * sysdeps/powerpc/powerpc32/memset.S (__cache_line_size): Remove
1208         definition.
1209         * sysdeps/powerpc/powerpc64/memset.S (__cache_line_size): Likewise.
1211 2007-03-26  Jakub Jelinek  <jakub@redhat.com>
1213         [BZ #4276]
1214         * timezone/africa: Update from tzdata2007d.
1215         * timezone/asia: Likewise.
1216         * timezone/australasia: Likewise.
1217         * timezone/backward: Likewise.
1218         * timezone/europe: Likewise.
1219         * timezone/iso3166.tab: Likewise.
1220         * timezone/leapseconds: Likewise.
1221         * timezone/northamerica: Likewise.
1222         * timezone/southamerica: Likewise.
1223         * timezone/zone.tab: Likewise.
1225         * timezone/private.h: Update from tzcode2007d.
1226         * timezone/zdump.c: Likewise.
1227         * timezone/zic.c: Likewise.
1229 2007-03-21  Jakub Jelinek  <jakub@redhat.com>
1231         * nis/nis_call.c: Include bits/libc-lock.h, sys/stat.h, unistd.h.
1232         (nis_server_cache, nis_server_cache_lock, nis_cold_start_mtime): New
1233         variables.
1234         (nis_server_cache_search, nis_server_cache_add): New functions.
1235         (__nisfind_server): Use them.  Add dbp and flags argument, if
1236         call __nisbind_create.
1237         (__nisbind_create): Add server_used and current_ep arguments,
1238         only call __nis_findfastest if server_used is ~0.
1239         (__do_niscall2, __prepare_niscall): Adjust callers.
1240         (ckey_cache, ckey_cache_size, ckey_cache_allocated, ckey_cache_pid,
1241         ckey_cache_euid, ckey_cache_lock): New variables.
1242         (get_ckey): New function.
1243         (__nisbind_connect): If not dbp->use_udp, pass IPPROTO_TCP to
1244         __pmap_getnisport.  Save __pmap_getnisport result in
1245         dbp->addr.sin_port if non-zero.  Use get_ckey to create conversation
1246         key.
1247         * nis/nis_lookup.c (nis_lookup): Likewise.
1248         * nis/nis_table.c (nis_list): Likewise.
1249         * nis/rpcsvc/nislib.h (__nisbind_create, __nisfind_server): Adjust
1250         prototypes.
1252         * nis/nss_nisplus/nisplus-pwd.c (_nss_nisplus_getpwnam_r,
1253         _nss_nisplus_getpwuid_r): Pass USE_DGRAM flag to nis_list.
1254         * nis/nss_nisplus/nisplus-service.c (_nss_nisplus_getservbyname_r,
1255         _nss_nisplus_getservbyport_r): Likewise.
1256         * nis/nss_nisplus/nisplus-network.c (_nss_nisplus_getnetbyname_r,
1257         _nss_nisplus_getnetbyaddr_r): Likewise.
1258         * nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_getspnam_r): Likewise.
1259         * nis/nss_nisplus/nisplus-ethers.c (_nss_nisplus_gethostton_r,
1260         _nss_nisplus_getntohost_r): Likewise.
1261         * nis/nss_nisplus/nisplus-rpc.c (_nss_nisplus_getrpcbyname_r,
1262         _nss_nisplus_getrpcbynumber_r): Likewise.
1264 2007-03-20  Jakub Jelinek  <jakub@redhat.com>
1266         * configure.in (libc_cv_gnu89_inline): Only do compile test.
1267         * configure: Rebuilt.
1269         * soft-fp/double.h (_FP_UNION_D): Use _FP_W_TYPE for frac
1270         bit-fields.
1271         * soft-fp/extended.h (_FP_UNION_E): Likewise.
1273 2006-06-07  Joseph Myers  <joseph@codesourcery.com>
1275         [BZ #2831]
1276         * soft-fp/quad.h (_FP_UNION_Q): Use _FP_W_TYPE for frac
1277         bit-fields.
1279 2007-03-18  Jakub Jelinek  <jakub@redhat.com>
1281         * nscd/gai.c: Include alloca.h.
1282         (__libc_use_alloca): Define.
1284 2007-03-16  Jakub Jelinek  <jakub@redhat.com>
1286         * elf/dl-open.c (dl_open_worker): Declare l in 2 different
1287         smaller scopes.
1288         * elf/dl-dst.h (DL_DST_REQ_STATIC): Add l as macro argument.
1289         (DL_DST_REQUIRED): Adjust user.
1291         * include/dlfcn.h (struct link_map): New forward decl.
1293         * inet/getnameinfo.c: Include stddef.h.
1294         (getnameinfo): Use offsetof.
1296         * time/tst-mktime2.c (do_test): Don't rely on signed wrap.
1298         * stdio-common/vfprintf.c (_itoa): Undef before redefining.
1300         * string/strerror_l.c: Include stdlib.h.
1302         * configure.in (libc_cv_gnu89_inline): Test for -fgnu89-inline.
1303         * config.make.in (gnu89-inline-CFLAGS): New variable.
1304         * Makeconfig (CFLAGS): Use $(gnu89-inline-CFLAGS) together with
1305         -std=gnu99.
1306         * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Define.
1307         * argp/argp.h: Use it.
1308         * bits/mathinline.h: Likewise.
1309         * bits/sigset.h: Likewise.
1310         * bits/string.h: Likewise.
1311         * ctype/ctype.h: Likewise.
1312         * hurd/hurd.h: Likewise.
1313         * hurd/hurd/fd.h: Likewise.
1314         * hurd/hurd/port.h: Likewise.
1315         * hurd/hurd/signal.h: Likewise.
1316         * hurd/hurd/threadvar.h: Likewise.
1317         * hurd/hurd/userlink.h: Likewise.
1318         * io/sys/stat.h: Likewise.
1319         * libio/bits/stdio.h: Likewise.
1320         * libio/bits/stdio2.h: Likewise.
1321         * mach/lock-intern.h: Likewise.
1322         * mach/mach/mig_support.h: Likewise.
1323         * math/bits/cmathcalls.h: Likewise.
1324         * posix/bits/unistd.h: Likewise.
1325         * socket/bits/socket2.h: Likewise.
1326         * stdlib/bits/stdlib.h: Likewise.
1327         * stdlib/stdlib.h: Likewise.
1328         * string/argz.h: Likewise.
1329         * string/bits/string2.h: Likewise.
1330         * string/bits/string3.h: Likewise.
1331         * sysdeps/alpha/fpu/bits/mathinline.h: Likewise.
1332         * sysdeps/generic/inttypes.h: Likewise.
1333         * sysdeps/generic/machine-lock.h: Likewise.
1334         * sysdeps/generic/machine-sp.h: Likewise.
1335         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
1336         * sysdeps/i386/i486/bits/string.h: Likewise.
1337         * sysdeps/ia64/fpu/bits/mathinline.h: Likewise.
1338         * sysdeps/mach/alpha/machine-lock.h: Likewise.
1339         * sysdeps/mach/alpha/machine-sp.h: Likewise.
1340         * sysdeps/mach/i386/machine-lock.h: Likewise.
1341         * sysdeps/mach/powerpc/machine-lock.h: Likewise.
1342         * sysdeps/mach/powerpc/machine-sp.h: Likewise.
1343         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
1344         * sysdeps/s390/bits/string.h: Likewise.
1345         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
1346         * sysdeps/sparc/fpu/bits/mathinline.h: Likewise.
1347         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
1348         * sysdeps/unix/sysv/linux/bits/sigset.h: Likewise.
1349         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
1350         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Likewise.
1351         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
1352         * wcsmbs/bits/wchar2.h: Likewise.
1353         * wcsmbs/wchar.h: Likewise.
1354         * stdlib/gmp.h: Likewise.  Include <features.h> to get
1355         __extern_inline definition.
1357 2007-03-15  Jakub Jelinek  <jakub@redhat.com>
1359         * locale/programs/ld-ctype.c (find_translit): Return NULL if ctype is
1360         NULL.
1362         [BZ #3919]
1363         * math/libm-test.inc (log_test): Test -Inf and NaN.
1364         (log10_test, log1p_test, log2_test): Test -Inf.
1365         * sysdeps/i386/fpu/e_log.S (__ieee754_log): Don't raise
1366         FE_INVALID when argument is qNaN.
1367         * sysdeps/i386/fpu/e_logl.S (__ieee754_logl): Likewise.
1368         * sysdeps/i386/fpu/e_logf.S (__ieee754_logf): Likewise.
1369         * sysdeps/x86_64/fpu/e_logl.S (__ieee754_logl): Likewise.
1370         * sysdeps/x86_64/fpu/e_log10l.S (__ieee754_log10l): Replace
1371         andb $1, %ah with testb $1, %ah, don't test for parity, instead
1372         testb $4, %ah and jump if non-zero.
1373         * sysdeps/x86_64/fpu/e_log2l.S (__ieee754_log2l): Likewise.
1374         * sysdeps/x86_64/fpu/s_log1pl.S (__log1pl): Likewise.
1376         [BZ #4101]
1377         * argp/argp-help.c (hol_cluster_cmp): Fix comparisons used to find
1378         ancestors with the same depths.
1379         Patch by Niels Moeller <nisse@lysator.liu.se>.
1380         (filter_doc): Don't crash if argp is NULL.
1381         * argp/Makefile (tests): Add tst-argp2.
1382         * argp/tst-argp2.c: New test.
1384         [BZ #4130]
1385         * login/utmp_file.c (setutent_file): Use O_LARGEFILE for
1386         open_not_cancel_2.
1387         (updwtmp_file): Likewise.
1389         [BZ #4181]
1390         * inet/inet6_opt.c (add_padding): Only insert padding if npad > 0.
1391         (inet6_opt_append): Don't check extlen is big enough if extbuf
1392         is NULL.
1393         (inet6_opt_finish): Likewise.
1394         * inet/Makefile (tests): Add test-inet6_opt.
1395         * inet/test-inet6_opt.c: New test.
1397         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Never
1398         reallocate the buffer, instead fail for MSG_TRUNC or for EBUSY
1399         NLMSG_ERR.  Instead use a page sized buffer.
1400         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Use page sized
1401         buffer.
1403 2007-03-14  Richard Henderson  <rth@redhat.com>
1405         * sysdeps/alpha/fpu/s_llround.c: New file.
1406         * sysdeps/alpha/fpu/s_llroundf.c: New file.
1407         * sysdeps/alpha/fpu/s_lround.c: New file.
1408         * sysdeps/alpha/fpu/s_lroundf.c: New file.
1409         * sysdeps/alpha/fpu/s_round.c: New file.
1410         * sysdeps/alpha/fpu/s_roundf.c: New file.
1411         * sysdeps/alpha/fpu/s_trunc.c: New file.
1412         * sysdeps/alpha/fpu/s_truncf.c: New file.
1414         * sysdeps/alpha/fpu/s_ceil.c: Rewrite without branches.
1415         * sysdeps/alpha/fpu/s_ceilf.c: Likewise.
1416         * sysdeps/alpha/fpu/s_floor.c: Likewise.
1417         * sysdeps/alpha/fpu/s_floorf.c: Likewise.
1418         * sysdeps/alpha/fpu/s_rint.c: Likewise.
1419         * sysdeps/alpha/fpu/s_rintf.c: Likewise.
1421         * sysdeps/alpha/fpu/s_fmax.S: New file.
1422         * sysdeps/alpha/fpu/s_fmaxf.S: New file.
1423         * sysdeps/alpha/fpu/s_fmin.S: New file.
1424         * sysdeps/alpha/fpu/s_fminf.S: New file.
1425         * sysdeps/alpha/fpu/s_isnan.c: New file.
1426         * sysdeps/alpha/fpu/s_isnanf.c: New file.
1427         * sysdeps/alpha/fpu/s_llrint.c: New file.
1428         * sysdeps/alpha/fpu/s_llrintf.c: New file.
1429         * sysdeps/alpha/fpu/s_lrint.c: New file.
1430         * sysdeps/alpha/fpu/s_lrintf.c: New file.
1431         * sysdeps/alpha/fpu/s_nearbyint.c: New file.
1432         * sysdeps/alpha/fpu/s_nearbyintf.c: New file.
1434         * sysdeps/alpha/fpu/bits/mathinline.h (__floorf, __floor): Remove.
1435         (__fdimf, fdimf, __fdim, fdim): Remove.
1436         (__signbitf, __signbit, __signbitl): Use gcc builtin if available.
1437         (__isnanf, __isnan, __isnanl): New.
1439 2007-03-13  Richard Henderson  <rth@redhat.com>
1441         * sysdeps/ieee754/ldbl-128/Makefile: New file.
1443 2007-03-13  Richard Henderson  <rth@redhat.com>
1445         * sysdeps/alpha/Makefile (sysdep-CFLAGS): Force dynamic rounding.
1446         * sysdeps/alpha/fpu/bits/mathinline.h (__signbitl): New.
1447         * sysdeps/alpha/fpu/libm-test-ulps: Regenerate.
1448         * sysdeps/unix/sysv/linux/alpha/alphaev6/fpu/Implies: New file.
1449         * sysdeps/unix/sysv/linux/alpha/alphaev67/fpu/Implies: New file.
1450         * sysdeps/unix/sysv/linux/alpha/fpu/Implies: New file.
1452 2007-03-13  Richard Henderson  <rth@redhat.com>
1454         * elf/dl-support.c (_dl_aux_init): Honor DL_PLATFORM_AUXV.
1455         * sysdeps/unix/sysv/linux/alpha/dl-auxv.h: New file.
1456         * sysdeps/unix/sysv/linux/alpha/dl-support.c: New file.
1457         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c (__libc_alpha_cache_shape):
1458         Move to dl-auxv.h; initialize instead of extern weak.
1459         (DL_PLATFORM_AUXV): Move to dl-auxv.h; don't test for undef
1460         weak symbol.
1461         * sysdeps/unix/sysv/linux/alpha/sysconf.c (__libc_alpha_cache_shape):
1462         Extern instead of initialized.
1464 2007-03-13  Richard Henderson  <rth@redhat.com>
1466         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add support for
1467         __sigsuspend_nocancel.
1469 2007-03-06  Ulrich Drepper  <drepper@redhat.com>
1471         * sysdeps/posix/getaddrinfo.c (get_scope): Correct test for
1472         172.16/12 address range.
1474 2007-03-02  Jakub Jelinek  <jakub@redhat.com>
1476         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Retry with
1477         a new netlink socket if NLMSG_ERR -EBUSY is seen after some MSG_TRUNC
1478         message.
1480 2007-03-01  Jakub Jelinek  <jakub@redhat.com>
1482         [BZ #4069]
1483         * sysdeps/ieee754/dbl-64/e_pow.c (__ieee754_pow): Check for NaN
1484         earlier.
1485         * math/libm-test.inc (pow_test): Add more tests involving NaNs.
1487         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Avoid invalid exception
1488         for x qNaN and y either +-inf or non-integer value.
1489         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Likewise.
1490         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
1491         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
1493 2007-02-10  Mike Frysinger  <vapier@gentoo.org>
1495         * sysdeps/unix/sysv/linux/sh/Makefile: Remove sys/io.h
1496         from sysdep_headers.
1498 2007-02-28  Jakub Jelinek  <jakub@redhat.com>
1500         * time/tzfile.c (find_transition): Instead of a linear search try to
1501         guess the transition index, use a linear search if the result is at
1502         most 10 transitions away from the guess or binary search otherwise.
1504 2007-02-27  Jakub Jelinek  <jakub@redhat.com>
1506         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Fix
1507         memory reallocation.
1509 2007-02-21  Ulrich Drepper  <drepper@redhat.com>
1511         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Add branch predictions
1512         and fix some typos.
1513         Optimize use of TOLOWER.
1515         [BZ #3325]
1516         * sysdeps/i386/fpu/e_fmodf.S: Revert last changes, keep using fprem.
1517         * sysdeps/i386/fpu/e_fmodl.c: Likewise.
1518         * sysdeps/i386/fpu/e_fmod.S: Likewise.
1520         [BZ #3458]
1521         * sysdeps/unix/sysv/linux/posix_madvise.c: New file.
1522         * sysdeps/unix/sysv/linux/syscalls.list: Remove posix_madvise entry.
1524         [BZ #4076]
1525         * io/ftw.c (ftw_startup): Handle special case of FTW_CHDIR in /.
1526         (open_dir_stream): Likewise.
1527         * io/Makefile (tests): Add bug-ftw5.
1528         * io/bug-ftw5.c: New file.
1530         * nscd/hstcache.c (cache_addhst): Remove unnecessary conditional.
1531         * nscd/servicescache.c (cache_addserv): Likewise.
1533         * nscd/grpcache.c (cache_addgr): In case a record changed on
1534         refresh, adjust key_copy.
1536         [BZ #4074]
1537         * nscd/pwdcache.c (cache_addpw): In case a record changed on
1538         refresh, adjust key_copy.
1540         [BZ #4070]
1541         * stdio-common/printf_fp.c (___printf_fp): Handle a few more
1542         special cases.
1543         * stdio-common/tfformat.c (sprint_doubles): Some more tests.
1545 2007-02-19  Ulrich Drepper  <drepper@redhat.com>
1547         * stdio-common/printf_fp.c (___printf_fp): Cleanups and minor
1548         optimization.
1550         * stdio-common/vfscanf.c: Small cleanups throughout.
1552 2007-02-18  Ulrich Drepper  <drepper@redhat.com>
1554         [BZ #3325]
1555         * sysdeps/i386/fpu/e_fmodf.S: Use fprem1 instead of fprem.
1556         * sysdeps/i386/fpu/e_fmodl.c: Likewise.
1557         * sysdeps/i386/fpu/e_fmod.S: Likewise.
1558         Patch by Jared Casper <jaredcasper@gmail.com>.
1560         * sysdeps/unix/closedir.c: Outside libc don't use locking.
1561         * sysdeps/unix/opendir.c: Likewise.
1562         * sysdeps/unix/readdir.c: Likewise.
1564         [BZ #2211]
1565         * stdio-common/vfscanf.c: Handle localized digits etc for floating
1566         point numbers.
1567         Patch mostly by Hamed Malek <hamed@farsiweb.info>.
1569         * stdio-common/vfscanf.c: Fix problems in width accounting.
1570         * stdio-common/tst-sscanf.c (double_tests): New tests.
1571         (main): Hook them up.
1573         * stdio-common/vfscanf.c: Remove unused WIDTH handling.
1574         More simplifications of floating-point reader.
1576         * stdio-common/Makefile (tests): Add tst-swscanf.
1577         * stdio-common/tst-sscanf.c: Make tests usable for swscanf
1578         testing.
1579         * stdio-common/tst-swscanf.c: New file.
1581 2007-02-17  Ulrich Drepper  <drepper@redhat.com>
1583         [BZ #2633]
1584         * libio/stdio.h: Define struct _IO_FILE in global namespace.
1585         * setjmp/setjmp.h: Define __jmp_buf_tag in global namespace.
1586         Remove using for __jmp_buf_tag.
1587         * locale/locale.h (struct lconv): Also define in std namespace.
1588         * wcsmbs/wchar.h: Move using declaration for tm out of namespace.
1590         [BZ #3842]
1591         * sysdeps/posix/euidaccess.c [_LIBC] (euidaccess): Remove shortcut
1592         using __libc_enable_secure.
1594         [BZ #3818]
1595         * sysdeps/unix/sysv/linux/sys/acct.h (struct acct_v3): Define.
1597         [BZ #3745]
1598         * locale/programs/ld-collate.c (handle_ellipsis): Fix generation
1599         of names for ellipsises.
1601         [BZ #3348]
1602         * malloc/memusage.sh: Cleanups.
1603         * debug/xtrace.sh: Quoting and trap changes.
1605 2007-02-16  Ulrich Drepper  <drepper@redhat.com>
1607         * locale/iso-3166.def: Add Jersey, Guernsey, and Isle Of Man entries.
1609         * locale/iso-3166.def: Update entry for Serbia.
1610         * locale/iso-4217.def: Define RSD, remove CSD.
1612         * sysdeps/x86_64/bits/atomic.h: One more change, this time for 16-
1613         and 64-bit operations.
1615         [BZ #4040]
1616         * sysdeps/i386/i486/bits/atomic.h: One more change, this time for
1617         16-bit operations.
1619         * nscd/nscd.c (parse_opt): One more conversion to use send instead
1620         of writev.
1622 2007-02-15  Ulrich Drepper  <drepper@redhat.com>
1624         [BZ #3991]
1625         * assert/assert.h (assert): Simplify.
1626         (assert_perror): Likewise.
1627         Patch by Israel G. Lugo <ilugo@bridonsecurity.com>.
1629         * nscd/nscd_helper.c (open_socket): Don't send padding bytes from
1630         reqdata.
1632         * sysdeps/unix/sysv/linux/x86_64/send.c (__libc_send): Cosmetic
1633         change: don't pass NULL in place of an integer.
1635 2007-02-02  Bruno Haible  <bruno@clisp.org>
1637         [BZ #3954]
1638         * iconvdata/ksc5601.c (__ksc5601_sym_to_ucs, __ksc5601_sym_from_ucs):
1639         Add mapping for U+327E.
1640         * iconvdata/ksc5601.h (KSC5601_SYMBOL): Increment.
1641         * iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable
1642         mapping of 0xD9 0xE8.
1643         * iconvdata/uhc.c (BODY for FROM_LOOP, BODY for TO_LOOP): Disable
1644         mapping of U+327E.
1645         Reported by Jungshik Shin <jungshik@google.com>.
1647         [BZ #3955]
1648         * iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable
1649         mapping of 0xD9 0xE6 and of 0xD9 0xE7.
1650         Reported by Jungshik Shin <jungshik@google.com>.
1652 2007-02-14  Ulrich Drepper  <drepper@redhat.com>
1654         * sysdeps/x86_64/bits/atomic;h: Fix asm parameters for some
1655         byte variants.
1657         [BZ #4040]
1658         * sysdeps/i386/i486/bits/atomic.h: Fix asm parameters for some
1659         byte variants.  Patch mostly be tom@tommay.net.
1661 2007-02-14  Jakub Jelinek  <jakub@redhat.com>
1663         [BZ #3996]
1664         * posix/glob.c (attribute_hidden): Define if not defined.
1665         (glob): Unescape dirname, filename or username when needed and not
1666         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
1667         is NULL.  Handle unescaped [ in pattern without closing ].
1668         Don't pass GLOB_CHECK down to recursive glob for directories.
1669         (__glob_pattern_type): New function.
1670         (__glob_pattern_p): Implement using __glob_pattern_type.
1671         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
1672         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
1673         Remove unreachable code.
1674         * posix/globtest.sh: Add a couple of new tests.
1676 2007-02-13  Ulrich Drepper  <drepper@redhat.com>
1678         * po/ru.po: Update from translation team.
1680 2007-02-12  Jakub Jelinek  <jakub@redhat.com>
1682         * sysdeps/i386/bits/byteswap.h (__bswap_32): Add __amdfam10__
1683         to the list of i486+ CPUs.
1684         * sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise.
1686 2007-02-12  Ulrich Drepper  <drepper@redhat.com>
1688         * elf/rtld.c (RESOLVE_MAP): Always return bootstrap_map reference.
1689         * elf/Makefile ($(objpfx)ld.so): Check that ld.so has no undefined
1690         references.
1692 2007-02-09  Ulrich Drepper  <drepper@redhat.com>
1694         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Remove incorrect comment.
1696         * resolv/res_init.c (res_setoptions): Recognize edns0 option.
1697         * resolv/res_mkquery.c: Define __res_nopt.
1698         * resolv/res_query.c (__libc_res_nquery): If RES_USE_EDNS0 is set
1699         try adding EDNS0 record.
1700         * resolv/res_send.c (send_dg): If request failed with FORMERR and
1701         EDNS0 record was send make sure we don't try it again.
1702         * resolv/resolv.h: Define RES_F_EDNS0ERR and RES_USE_EDNS0.
1703         * include/resolv.h: Declare __res_nopt.
1705 2007-02-08  Jakub Jelinek  <jakub@redhat.com>
1707         [BZ #3944]
1708         * time/strptime_l.c (__strptime_internal): Set have_mon for
1709         %b/%B/%h.  Set have_mon and have_mday if tm_mon and tm_mday
1710         have been computed from tm_yday and tm_year.  Don't crash
1711         in day_of_the_week or day_of_the_year if not have_mon
1712         and tm_mon contains bogus value.
1713         * time/Makefile (tests): Add tst-strptime3.
1714         * time/tst-strptime3.c: New test.
1716 2007-02-05  Jakub Jelinek  <jakub@redhat.com>
1718         [BZ #3957]
1719         * posix/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
1720         bit for RE_HAT_LISTS_NOT_NEWLINE.
1721         (build_charclass_op): Remove bogus comment.
1722         * posix/Makefile (tests): Add bug-regex27 and bug-regex28.
1723         * posix/bug-regex27.c: New test.
1724         * posix/bug-regex28.c: New test.
1726 2007-02-03  Ulrich Drepper  <drepper@redhat.com>
1728         * po/sv.po: Update from translation team.
1730 2007-02-02  Ulrich Drepper  <drepper@redhat.com>
1732         * nscd/nscd_helper.c (open_socket): Minor size optimization.
1734 2007-02-02  Jakub Jelinek  <jakub@redhat.com>
1736         * include/locale.h (__uselocale): Add libc_hidden_proto.
1737         * locale/uselocale.c (__uselocale): Add libc_hidden_def.
1739         * nscd/nscd_helper.c (open_socket): Use __gettimeofday instead of
1740         gettimeofday.
1742 2007-02-01  Ulrich Drepper  <drepper@redhat.com>
1744         * sysdeps/unix/sysv/linux/i386/sysdep.h (PTR_MANGLE): Roll value before
1745         returning.
1746         (PTR_DEMANGLE): Real definition now that it's not the same as
1747         PRT_MANGLE anymore.
1748         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
1750         * string/strerror_l.c: New file.
1751         * string/Makefile (routines): Add strerror_l.
1752         * string/string.h: Declare strerror_l.
1753         * string/Versions: Export strerror_l for GLIBC_2.6.
1755 2007-01-31  Ulrich Drepper  <drepper@redhat.com>
1757         * nscd/nscd_helper.c (open_socket): Now takes request type and key
1758         as parameter.  Construct request record.  Try sending request
1759         before the first poll use, it usually succeeds.  Adjust all
1760         callers.
1761         * nscd/nscd-client.h: Define MAXKEYLEN.
1762         * nscd/connections.c (nscd_run): Don't define MAXKEYLEN here.
1764 2007-01-31  Jakub Jelinek  <jakub@redhat.com>
1766         * nscd/nscd-client.h (__nscd_cache_search): Remove const qualifier
1767         from return value.
1768         * nscd/nscd_helper.c: Include string.h.
1769         (__nscd_cache_search): Remove const qualifier from return value.
1770         On strict alignment architectures check hash entry and data head
1771         alignment.
1772         * nscd/nscd_getpw_r.c (nscd_getpw_r): Don't crash or fail because
1773         mmapped data during GC cycle contains garbage.  If
1774         __nscd_drop_map_ref fails, decrement mapped->counter when returning
1775         error or if retrying with NO_MAPPING, only __nscd_unmap if counter
1776         dropped to 0.
1777         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
1778         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Likewise.
1779         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
1780         * nscd/nscd_getai.c (__nscd_getai): Likewise.
1781         * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
1783 2007-01-30  Ulrich Drepper  <drepper@redhat.com>
1785         * misc/hsearch_r.c (hdestroy_r): Remove unnecessary test.
1787 2007-01-26  Ulrich Drepper  <drepper@redhat.com>
1789         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Use register
1790         names not numbers in cfi_*.
1792 2007-01-26  Andreas Jaeger  <aj@suse.de>
1794         * sysdeps/unix/sysv/linux/sys/personality.h (ADDR_NO_RANDOMIZE,
1795         ADDR_LIMIT_3GB, PER_LINUX_32BIT, PER_LINUX32_3GB): Add.
1796         Correct values of PER_HPUX and PER_OSF4.
1798 2007-01-24  Ulrich Drepper  <drepper@redhat.com>
1800         * elf/dl-minimal.c: Undefine _itoa first.
1801         * stdio-common/_itoa.h: Define _itoa and _fitoa for 64-bit platforms.
1802         * malloc/mtrace.c: Revert last change.
1803         * posix/wordexp.c: Likewise.
1805 2007-01-24  Jakub Jelinek  <jakub@redhat.com>
1807         * sysdeps/i386/bits/byteswap.h (__bswap_32): Add __nocona__, __core2__
1808         and __geode__ to the list of i486+ CPUs.
1809         * sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise.
1811 2007-01-23  Ulrich Drepper  <drepper@redhat.com>
1813         * stdio-common/_itoa.c: Include <limits.h>.
1814         * stdio-common/_itowa.c: Likewise.
1816 2007-01-22  Ulrich Drepper  <drepper@redhat.com>
1818         * stdio-common/_itowa.c: Don't compile _itowa for 64-bit
1819         platforms.
1820         * stdio-common/_itoa.c: Don't compile in _itoa and _fitoa for
1821         64-bit platforms.
1822         * malloc/mtrace.c (tr_where): Use _fitoa_word instead of _fitoa if
1823         possible.
1824         * posix/wordexp.c (parse_arith): Use _itoa_word instead of _itoa
1825         if possible.
1827         [BZ #3902]
1828         * stdio-common/_itoa.c (_itoa): Make sure at least a zero is emitted.
1829         * stdio-common/Makefile (tests): Add bug17.
1830         * stdio-common/bug17.c: New file.
1832 2007-01-19  Ulrich Drepper  <drepper@redhat.com>
1834         * iconvdata/brf.c: New file.
1835         * iconvdata/testdata/BRF: New file.
1836         * iconvdata/testdata/BRF..UTF8: New file.
1837         Contributed by Samuel Thibault <samuel.thibault@ens-lyon.org>.
1838         * iconvdata/Makefile: Add rules to build BRF.
1839         * iconvdata/TESTS: Add BRF entry.
1840         * iconvdata/gconv-modules: Likewise.
1841         * iconvdata/tst-tables.sh: Likewise.
1843 2007-01-18  Anton Nikishaev  <anton.nik@gmail.com>
1845         * wcsmbs/wchar.h (wcstoll): Fix comment, function returns value of
1846         type `long long int', not `long int'.
1847         (wcstoq): Likewise.
1849 2007-01-18  Ulrich Drepper  <drepper@redhat.com>
1851         * scripts/gen-as-const.awk: Add cast to long to avoid int promotion
1852         of values on 64-bit platforms which are too large.
1854 2007-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
1855             Joe Kerian  <jkerian@us.us.ibm.com>
1857         [BZ #2749]
1858         * sysdeps/ieee754/ldbl-128ibm/s_copysignl.c: Include
1859         <math_ldbl_opt.h>.  Remove weak_alias.  Use long_double_symbol macro.
1860         (__copysignl): Use signbit() for comparison.
1861         * sysdeps/ieee754/ldbl-128ibm/s_fabsl.c (__fabsl): Correct parms for
1862         SET_LDOUBLE_WORDS64.
1864         [BZ #2423, #2749]
1865         * sysdeps/ieee754/ldbl-128ibm/s_ceill.c: Don't include <fenv_libc.h>.
1866         (__ceill): Remove calls to fegetround(), fesetround().
1867         * sysdeps/ieee754/ldbl-128ibm/s_floorl.c: Likewise.
1868         * sysdeps/ieee754/ldbl-128ibm/s_roundl.c: Likewise.
1869         * sysdeps/ieee754/ldbl-128ibm/s_truncl.c: Likewise.
1871 2007-01-17  Jakub Jelinek  <jakub@redhat.com>
1873         * nscd/nscd_getserv_r.c (nscd_getserv_r): Fix pastos.
1875         * sysdeps/unix/sysv/linux/getdents.c (offsetof): Remove.
1877 2007-01-17  Ulrich Drepper  <drepper@redhat.com>
1879         * sysdeps/unix/sysv/linux/fatal-prepare.h: Use PTHFCT_CALL to
1880         demangle pointer.
1881         * csu/libc-start.c: Likewise.
1883 2007-01-16  Ulrich Drepper  <drepper@redhat.com>
1885         * sysdeps/posix/system.c: Remove NO_WAITPID support, it cannot
1886         really work anyway.
1888 2007-01-15  Ulrich Drepper  <drepper@redhat.com>
1890         * nscd/connections.c (servinfo): Renamed to reqinfo.  Change all
1891         users.
1892         (handle_request): Remove unnecessary tests.
1894         * nscd/cache.c (cache_add): Record the failure to add to the cache.
1896 2007-01-15  Jakub Jelinek  <jakub@redhat.com>
1898         * soft-fp/op-common.h (FP_TRUNC): When truncating a NaN, clear
1899         workbits in semi-raw fraction.
1901         * math/test-misc.c: Add new tests.
1903 2007-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
1905         * math/basic-test.c: Include test-skeleton.c.
1906         (TEST_TRUNC): Define.
1907         (truncdfsf_test, trunctfsf_test, trunctfdf_test): New.
1908         (main): Rename to ...
1909         (do_test): ...this.  Run new tests.
1910         (TEST_FUNCTION): Define.
1912 2006-10-05  Steven Munroe  <sjmunroe@us.ibm.com>
1913             Joe Kerian  <jkerian@us.us.ibm.com>
1915         [BZ #2749]
1916         * soft-fp/op-4.h (__FP_FRAC_SUB_3, __FP_FRAC_SUB_4): Correct borrow
1917         handling for high words.
1918         * soft-fp/op-common.h (_FP_OVERFLOW_SEMIRAW): Always set inexact
1919         and overflow for infinity.
1921 2007-01-15  Ulrich Drepper  <drepper@redhat.com>
1923         * nscd/connections.c (handle_request): Add a __builtin_expect.
1925         * nscd/connections.c (serv2db): Change type into structure which
1926         also says whether this is a request for data.  Renamed to
1927         servinfo.  All users changed.
1928         (handle_request): Much simpler test whether we should search the cache.
1930         * nscd/connections.c (handle_request): Fix thinko in selinux test
1931         invocation.
1933         * sysdeps/generic/ldsodefs.h: Define DL_LOOKUP_SCOPE_LOCK.
1934         * elf/dl-lookup.c (add_dependency): If scope map is locked, unlock
1935         it before getting dl_load_lock and then relock.
1936         (_dl_lookup_symbol_x): Pass flags to add_dependency.
1937         When rerunning _dl_lookup_symbol_x, compute symbol_scope again in
1938         case we unlocked the scope.
1939         * elf/dl-runtime.c (_dl_fixup): Pass DL_LOOKUP_SCOPE_LOCK to
1940         _dl_lookup_symbol_x in case we locked the scope.
1941         (_dl_profile_fixup): Likewise.
1942         * elf/dl-sym.c (do_sym): In flags passed to call_dl_lookup, also
1943         set DL_LOOKUP_SCOPE_LOCK.
1945 2007-01-13  Ulrich Drepper  <drepper@redhat.com>
1947         * inet/Makefile: Define CFLAGS-getsrvbynm_r.c and
1948         CFLAGS-getsrvbynpt_r.c.
1949         * nscd/getsrvbynm_r.c: New file.
1950         * nscd/getsrvbypt_r.c: New file.
1951         * nscd/nscd_getserv_r.c: New file.
1952         * nscd/servicescache.c: New file.
1953         * nscd/Makefile (routines): Add nscd_getserv_r.
1954         (nscd-modules): Add getsrvbynm_r, getsrvbypt_r, and servicescache.
1955         Define CFLAGS-servicescache.c, CFLAGS-getsrvbynm_r.c, and
1956         CFLAGS-getsrvbypt_r.c.
1957         * nscd/cache.c (prune_cache): Rewrite to get re-add function from
1958         table.  Add entries for services database.
1959         * nscd/connections.c (serv2str): Mark as const.  Add entries for
1960         services database.
1961         (dbs): Add .reset_res and servdb initialization.
1962         (serv2db): Add entries for services database.
1963         (verify_persistent_db): Accept dbnr == servdb.
1964         (invalidate_cache): Rewrite database name recognition to use a table.
1965         Call res_init() if .reset_res is set for database.
1966         (handle_request): Add code to handle services database.
1967         * nscd/gai.c: Don't define __getservbyname_r.
1968         * nscd/nscd-client.h (request_type): Remove LASTDBREQ, add
1969         GETSERVBYNAME, GETSERVBYPORT, GETFDSERV.
1970         (serv_response_header): Define.
1971         (struct datahead): Add serv_response_header member.
1972         * nscd/nscd.c (parse_opt): Rewrite parsing of -i parameter value
1973         using table.
1974         * nscd/nscd.conf: Add entries for services database.
1975         * nscd/nscd.h: Adjust declaration of dbnames and serv2str.
1976         Declare serv_iov_disabled.
1977         Declare addservbyname, readdservbyname, addservbyport, and
1978         readdservbyport.
1979         * nscd/nscd_conf.c (dbnames): Mark as const.  Add services entry.
1980         (find_db): Fix error message.
1981         * nscd/nscd_proto.h: Declare __nss_not_use_nscd_services,
1982         __nscd_getservbyname_r, and __nscd_getservbyport_r.
1983         * nscd/selinux.c (perms): Add entries for services database.
1984         * nss/Versions: Export __nss_services_lookup with GLIBC_PRIVATE.
1985         * nss/nsswitch.c (__nss_disable_nscd): Also disable services database.
1987         * nscd/grpcache.c: Remove obsolete code.  Cleanups.
1988         * nscd/hstcache.c: Likewise.
1989         * nscd/pwdcache.c: Likewise.
1991         * nis/nss_nis/nis-service.c (_nss_nis_getservbyname_r): Correct
1992         computation of keylen.
1994         * include/string.h: Only redefine strndupa if this is really for
1995         libc code.
1997 2007-01-12  Ulrich Drepper  <drepper@redhat.com>
1999         * nscd/nscd_gethst_r.c: Minor cleanups.
2001         * nscd/connections.c (handle_request): Check selinux permissions
2002         for all non-admin commands.
2004         * sysdeps/i386/i486/bits/atomic.h: Define
2005         atomic_compare_and_exchange_val_acq,
2006         atomic_compare_and_exchange_bool_acq, and atomic_exchange_and_add
2007         using __sync_* built-ins for gcc >= 4.1.
2008         * sysdeps/x86_64/bits/atomic.h: Likewise.
2010         [BZ #3840]
2011         * scripts/check-local-headers.sh: Restrict to testing .o.d, .os.d,
2012         and .oS.d files.
2014 2007-01-05  Steven Munroe  <sjmunroe@us.ibm.com>
2016         * stdlib/tst-makecontext.c: Include errno.h.  Change main()
2017         to do_test().  Define TEST_FUNCTION. Include test-skeleton.c.
2018         (do_test): Check errno and exit(0) if ENOSYS.
2020 2007-01-11  Jakub Jelinek  <jakub@redhat.com>
2022         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix handling of multi-byte
2023         thousands separators.
2024         * stdlib/Makefile: Add rules to build and run tst-strtod4.
2025         * stdlib/tst-strtod4.c: New test.
2027         [BZ #3855]
2028         * stdlib/strtod_l.c (____STRTOF_INTERNAL): 0x. not followed by
2029         hexadecimal digit should accept just the initial 0.
2030         * stdlib/tst-strtod2.c (tests): New variable.
2031         (do_test): Run several tests rather than just one.
2033 2007-01-11  Jakub Jelinek  <jakub@redhat.com>
2035         * sysdeps/i386/soft-fp/sfp-machine.h: Remove.
2036         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
2038 2007-01-10  Ulrich Drepper  <drepper@redhat.com>
2040         * io/fts.c: Make sure fts_cur is always valid after return from
2041         fts_read.
2042         Patch by Miloslav Trmac <mitr@redhat.com>.
2044 2006-10-27  Richard Sandiford  <richard@codesourcery.com>
2046         * elf/elf.h (R_MIPS_GLOB_DAT): Define.
2047         (R_MIPS_NUM): Bump by 1.
2049 2007-01-03  Jakub Jelinek  <jakub@redhat.com>
2051         * posix/execvp.c: Include alloca.h.
2052         (allocate_scripts_argv): Renamed to...
2053         (scripts_argv): ... this.  Don't allocate buffer here nor count
2054         arguments.
2055         (execvp): Use alloca if possible.
2056         * posix/Makefile: Add rules to build and run tst-vfork3 test.
2057         * posix/tst-vfork3.c: New test.
2059 2007-01-03  Ulrich Drepper  <drepper@redhat.com>
2061         * string/Makefile (tst-strxfrm2-ENV): Define.
2062         * stdlib/Makefile (tst-strtod3-ENV): Define.
2064 2007-01-02  Ulrich Drepper  <drepper@redhat.com>
2066         * posix/getconf.c: Update copyright year.
2067         * nss/getent.c: Likewise.
2068         * iconv/iconvconfig.c: Likewise.
2069         * iconv/iconv_prog.c: Likewise.
2070         * elf/ldconfig.c: Likewise.
2071         * catgets/gencat.c: Likewise.
2072         * csu/version.c: Likewise.
2073         * elf/ldd.bash.in: Likewise.
2074         * elf/sprof.c (print_version): Likewise.
2075         * locale/programs/locale.c: Likewise.
2076         * locale/programs/localedef.c: Likewise.
2077         * nscd/nscd.c (print_version): Likewise.
2078         * debug/xtrace.sh: Likewise.
2079         * malloc/memusage.sh: Likewise.
2080         * malloc/mtrace.pl: Likewise.
2081         * debug/catchsegv.sh: Likewise.
2083 2006-12-24  Ulrich Drepper  <drepper@redhat.com>
2085         * malloc/malloc.c (sYSMALLOc): Remove some unnecessary alignment
2086         attempts.
2088 2006-12-23  Ulrich Drepper  <drepper@redhat.com>
2090         * posix/wordexp.c: Remove some unnecessary tests.
2092 2006-12-22  Gavin Romig-Koch  <gavin@redhat.com>
2094         * nis/nss_compat/compat-grp.c (internal_getgrgid_r): Don't
2095         blacklist the group till after we look it up.
2097 2006-12-21  Ulrich Drepper  <drepper@redhat.com>
2099         * include/atomic.h (atomic_forced_read): New macro.
2101 2006-12-20  SUGIOKA Toshinobu  <sugioka@itonet.co.jp>
2103         * sysdeps/unix/sysv/linux/sh/bits/shm.h: New file.
2105 2006-12-19  Jakub Jelinek  <jakub@redhat.com>
2107         * nss/getXXbyYY_r.c: Include atomic.h.
2108         (INTERNAL (REENTRANT_NAME)): Write startp after start_fct,
2109         add atomic_write_barrier () in between.
2111         * stdlib/Makefile (tests): Add tst-makecontext.
2112         * stdlib/tst-makecontext.c: New test.
2114         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
2115         (__makecontext): Don't realign uc_mcontext.uc_regs.
2117 2006-11-28  Jakub Jelinek  <jakub@redhat.com>
2119         * elf/dl-support.c: Include dl-procinfo.h.
2120         * sysdeps/powerpc/dl-procinfo.h (PPC_PLATFORM_POWER4,
2121         PPC_PLATFORM_PPC970, PPC_PLATFORM_POWER5, PPC_PLATFORM_POWER5_PLUS,
2122         PPC_PLATFORM_POWER6, PPC_PLATFORM_CELL_BE, PPC_PLATFORM_POWER6X):
2123         Define.
2124         (_dl_string_platform): Use PPC_PLATFORM_* macros instead of
2125         hardcoded constants.
2126         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_platform): Use
2127         PPC_PLATFORM_* macros for array designators.
2129 2006-11-11  Steven Munroe  <sjmunroe@us.ibm.com>
2131         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 3 new cap
2132         names to the beginning.
2133         (_dl_powerpc_platforms): Add "power6x".
2134         * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
2135         (HWCAP_IMPORTANT): Add PPC_FEATURE_HAS_DFP.
2136         (_DL_PLATFORMS_COUNT): Increase.
2137         (_dl_string_platform): Handle power6x case.
2138         * sysdeps/powerpc/sysdep.h (PPC_FEATURE_PA6T, PPC_FEATURE_HAS_DFP,
2139         PPC_FEATURE_POWER6_EXT): Define.
2140         (PPC_FEATURE_POWER5, PPC_FEATURE_POWER5_PLUS): Correct Comment.
2142 2006-12-18  Jakub Jelinek  <jakub@redhat.com>
2144         [BZ #3747]
2145         * stdlib/jrand48_r.c (__jrand48_r): Make sure result is in the
2146         [-2^31 .. 2^31) range.
2147         * stdlib/tst-rand48.c (main): Fix expected values for 64-bit
2148         targets.
2149         * stdlib/tst-rand48-2.c: New test.
2150         * stdlib/Makefile (tests): Add tst-rand48-2.
2152 2006-12-14  Jakub Jelinek  <jakub@redhat.com>
2154         * misc/tst-pselect.c (do_test): Fix sigblock argument.
2156 2006-12-14  Ulrich Drepper  <drepper@redhat.com>
2158         * misc/tst-pselect.c (do_test): Make sure the helper process is
2159         terminating when the test is aborted.
2161 2006-12-13  Ulrich Drepper  <drepper@redhat.com>
2163         * sysdeps/unix/sysv/linux/bits/statvfs.h: Define ST_RELATIME.
2164         * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags):
2165         Handle relatime mount option.
2167         [BZ #2337]
2168         * libio/Makefile (tests): Add tst-setvbuf1.
2169         * libio/tst-setvbuf1.c: New file.
2171 2006-12-08  Jakub Jelinek  <jakub@redhat.com>
2173         [BZ #2337]
2174         * libio/genops.c (__uflow): Fix a typo.
2175         * libio/wfiledoalloc.c (_IO_wfile_doallocate): Don't stat
2176         nor set _IO_LINE_BUF bit here.  Size the wide buffer based on
2177         the narrow buffer size.
2179 2006-11-24  Jakub Jelinek  <jakub@redhat.com>
2181         [BZ #2337]
2182         * libio/libio.h (_IO_FLAGS2_USER_WBUF): Define.
2183         * libio/wgenops.c (_IO_wsetb, _IO_wdefault_finish): Test and set
2184         _IO_FLAGS2_USER_WBUF bit in _flags2 instead of _IO_USER_BUF bit
2185         in _flags.
2186         * libio/wstrops.c (_IO_wstr_overflow, enlarge_userbuf,
2187         _IO_wstr_finish): Likewise.
2188         * libio/wmemstream.c (open_wmemstream): Likewise.
2189         * libio/fileops.c (_IO_new_file_close_it): Call _IO_set[bgp]
2190         even for wide streams.
2192 2006-12-13  Jakub Jelinek  <jakub@redhat.com>
2194         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Include
2195         kernel-features.h.
2197 2006-12-11  Ulrich Drepper  <drepper@redhat.com>
2199         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Parse thousand
2200         separators also if no non-zero digits found.
2201         * stdlib/Makefile (tests): Add tst-strtod3.
2203 2006-12-09  Ulrich Drepper  <drepper@redhat.com>
2205         [BZ #3632]
2206         * include/features.h: Fix comment about default value for
2207         _POSIX_C_SOURCE.
2209         [BZ #3664]
2210         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix test to recognize
2211         empty parsed strings.
2212         * stdlib/Makefile (tests): Add tst-strtod2.
2213         * stdlib/tst-strtod2.c: New file.
2215         [BZ #3673]
2216         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix exp_limit
2217         computation.
2218         * stdlib/Makefile (tests): Add tst-atof2.
2219         * stdlib/tst-atof2.c: New file.
2221         [BZ #3674]
2222         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Adjust exponent value
2223         correctly if removing trailing zero of hex-float.
2224         * stdlib/Makefile (tests): Add tst-atof1.
2225         * stdlib/tst-atof1.c: New file.
2227 2006-12-09  Jakub Jelinek  <jakub@redhat.com>
2229         * misc/mntent_r.c (__hasmntopt): Check p[optlen] even when p == rest.
2230         Start searching for next comma at p rather than rest.
2231         * misc/Makefile (tests): Add tst-mntent2.
2232         * misc/tst-mntent2.c: New test.
2234         * misc/getusershell.c (initshells): Check for integer overflows.
2235         Make strings buffer one bigger as fgets always succeeds when second
2236         argument is 1.  Don't use calloc for shells array.  Disallow
2237         / as shell.
2239 2006-12-08  Ulrich Drepper  <drepper@redhat.com>
2241         * malloc/memusage.c: Handle realloc with new size of zero and
2242         non-NULL pointer correctly.
2243         (me): Really write first record twice.
2244         (struct entry): Make format bi-arch safe.
2245         (dest): Write out more realloc statistics.
2246         * malloc/memusagestat.c (struct entry): Make format bi-arch safe.
2248 2006-12-05  Jakub Jelinek  <jakub@redhat.com>
2250         * nis/nis_subr.c (nis_getnames): Revert last change.
2252 2006-12-04  Jakub Jelinek  <jakub@redhat.com>
2254         * sysdeps/unix/sysv/linux/ttyname.c: Include termios.h.
2255         (ttyname): Use tcgetattr instead of isatty, don't set errno to ENOTTY.
2256         * sysdeps/unix/sysv/linux/ttyname_r.c: Include termios.h.
2257         (__ttyname_r): Use tcgetattr instead of isatty, don't set errno to
2258         ENOTTY.
2259         * io/Makefile: Add rules to build and run tst-ttyname_r test.
2260         * io/tst-ttyname_r.c: New test.
2262 2006-12-03  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2264         * sysdeps/unix/sysv/linux/sh/sys/io.h: Removed.
2266 2006-11-30  H.J. Lu  <hongjiu.lu@intel.com>
2268         * sysdeps/i386/i686/memcmp.S: Use jump table as the base of
2269         jump table entries.
2271 2006-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
2273         * sysdeps/unix/sysv/linux/i386/clone.S: Provide CFI for the outermost
2274         `clone' function to ensure proper unwinding stop of gdb.
2275         * sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise.
2277 2006-12-01  Ulrich Drepper  <drepper@redhat.com>
2279         * nscd/nscd.init: Remove obsolete and commented-out -S option
2280         handling.
2282 2006-11-23  Jakub Jelinek  <jakub@redhat.com>
2284         [BZ #3514]
2285         * manual/string.texi (strncmp): Fix pastos from wcscmp description.
2287         [BZ #3515]
2288         * manual/string.texi (strtok): Remove duplicate paragraph.
2290 2006-12-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
2292         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Fix compatibility with
2293         libgcc not supporting `rflags' unwinding (register # >= 17).
2295 2006-11-30  Jakub Jelinek  <jakub@redhat.com>
2297         * sunrpc/svc_run.c (svc_run): Set my_pollfd to new_pollfd if realloc
2298         succeeded.
2300 2006-11-29  Daniel Jacobowitz  <dan@codesourcery.com>
2301             Jakub Jelinek  <jakub@redhat.com>
2302             Jan Kratochvil  <jan.kratochvil@redhat.com>
2304         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (restore_rt): Add correct
2305         unwind information.
2306         * sysdeps/unix/sysv/linux/x86_64/Makefile: Provide symbols for
2307         'restore_rt' even in the 'signal' directory.
2308         * sysdeps/unix/sysv/linux/x86_64/ucontext_i.sym: Extend the regs list.
2310 2006-11-27  Jakub Jelinek  <jakub@redhat.com>
2312         [BZ #3559]
2313         * sunrpc/svc_run.c (svc_run): Fail instead of segfaulting if
2314         malloc crashed.  Don't allocate memory unnecessarily in each
2315         loop.
2317 2006-10-21  Jakub Jelinek  <jakub@redhat.com>
2319         * resolv/mapv4v6addr.h (map_v4v6_address): Fix last change.
2321 2006-11-20  Ulrich Drepper  <drepper@redhat.com>
2323         * resolv/mapv4v6addr.h (map_v4v6_address): Optimize a bit.
2325 2006-11-18  Bruno Haible  <bruno@clisp.org>
2327         * sysdeps/unix/sysv/linux/i386/getgroups.c (__getgroups): Invoke
2328         __sysconf only after having tried to call getgroups32.
2330 2006-11-19  Ulrich Drepper  <drepper@redhat.com>
2332         * nss/nss_files/files-hosts.c (LINE_PARSER): Support IPv6-style
2333         addresses for IPv4 queries if they can be mapped.
2335 2006-11-16  Jakub Jelinek  <jakub@redhat.com>
2337         * sysdeps/x86_64/fpu/s_copysignf.S (__copysignf): Switch to .text.
2338         * sysdeps/x86_64/fpu/s_copysign.S (__copysign): Likewise.
2339         (signmask): Add .size directive.
2340         (othermask): Add .type directive.
2342 2006-11-14  Ulrich Drepper  <drepper@redhat.com>
2344         * po/nl.po: Update from translation team.
2346         * timezone/zdump.c: Redo fix for BZ #3137.
2348 2006-11-14  Jakub Jelinek  <jakub@redhat.com>
2350         * nss/nss_files/files-alias.c (get_next_alias): Set line back
2351         to first_unused after parsing :include: file.
2353 2006-11-10  Ulrich Drepper  <drepper@redhat.com>
2355         * timezone/africa: Update from tzdata2006o.
2356         * timezone/antarctica: Likewise.
2357         * timezone/asia: Likewise.
2358         * timezone/australasia: Likewise.
2359         * timezone/backward: Likewise.
2360         * timezone/europe: Likewise.
2361         * timezone/iso3166.tab: Likewise.
2362         * timezone/northamerica: Likewise.
2363         * timezone/southamerica: Likewise.
2364         * timezone/zone.tab: Likewise.
2366         * time/tzfile.c (__tzfile_read): Extend to handle new file format
2367         on machines with 64-bit time_t.
2369         * timezone/checktab.awk: Update from tzcode2006o.
2370         * timezone/ialloc.c: Likewise.
2371         * timezone/private.h: Likewise.
2372         * timezone/scheck.c: Likewise.
2373         * timezone/tzfile.h: Likewise.
2374         * timezone/tzselect.ksh: Likewise.
2375         * timezone/zdump.c: Likewise.
2376         * timezone/zic.c: Likewise.
2378         [BZ #3483]
2379         * elf/ldconfig.c (main): Call setlocale and textdomain.
2380         Patch mostly by Benno Schulenberg <bensberg@justemail.net>.
2382         [BZ #3480]
2383         * manual/argp.texi: Fix typos.
2384         * manual/charset.texi: Likewise.
2385         * manual/errno.texi: Likewise.
2386         * manual/filesys.texi: Likewise.
2387         * manual/lang.texi: Likewise.
2388         * manual/maint.texi: Likewise.
2389         * manual/memory.texi: Likewise.
2390         * manual/message.texi: Likewise.
2391         * manual/resource.texi: Likewise.
2392         * manual/search.texi: Likewise.
2393         * manual/signal.texi: Likewise.
2394         * manual/startup.texi: Likewise.
2395         * manual/stdio.texi: Likewise.
2396         * manual/sysinfo.texi: Likewise.
2397         * manual/syslog.texi: Likewise.
2398         * manual/time.texi: Likewise.
2399         Patch by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
2401         [BZ #3465]
2402         * sunrpc/clnt_raw.c: Minimal message improvements.
2403         * sunrpc/pm_getmaps.c: Likewise.
2404         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
2405         * nis/nis_print_group_entry.c: Likewise.
2406         * locale/programs/repertoire.c: Likewise.
2407         * locale/programs/charmap.c: Likewise.
2408         * malloc/memusage.sh: Likewise.
2409         * elf/dl-deps.c: Likewise.
2410         * locale/programs/ld-collate.c: Likewise.
2411         * libio/vswprintf.c: Likewise.
2412         * malloc/memusagestat.c: Likewise.
2413         * sunrpc/auth_unix.c: Likewise.
2414         * sunrpc/rpc_main.c: Likewise.
2415         * nscd/cache.c: Likewise.
2416         * locale/programs/repertoire.c: Unify output messages.
2417         * locale/programs/charmap.c: Likewise.
2418         * locale/programs/ld-ctype.c: Likewise.
2419         * locale/programs/ld-monetary.c: Likewise.
2420         * locale/programs/ld-numeric.c: Likewise.
2421         * locale/programs/ld-time.c: Likewise.
2422         * elf/ldconfig.c: Likewise.
2423         * nscd/selinux.c: Likewise.
2424         * elf/cache.c: Likewise.
2425         Patch mostly by Benno Schulenberg <bensberg@justemail.net>.
2427         [BZ #3451]
2428         * sysdeps/i386/fpu/bits/mathinline.h (floor): Make rounding mode
2429         change atomic.
2430         (ceil): Likewise.
2432 2006-11-10  Jakub Jelinek  <jakub@redhat.com>
2434         * string/strxfrm_l.c (STRXFRM): Fix trailing \1 optimization
2435         if N is one bigger than return value.
2436         * string/tst-strxfrm2.c (do_test): Also test strxfrm with l1 + 1
2437         and l1 last arguments, if buf is defined, verify the return value
2438         equals to strlen (buf) and verify no byte beyond passed length
2439         is modified.
2441 2006-11-10  Ulrich Drepper  <drepper@redhat.com>
2443         * po/sv.po: Update from translation team.
2445 2006-11-09  Ulrich Drepper  <drepper@redhat.com>
2447         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word): Add
2448         noinline attribute.
2450 2006-11-10  Jakub Jelinek  <jakub@redhat.com>
2452         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): Add
2453         noinline attribute.
2455         * sysdeps/gnu/siglist.c (__old_sys_siglist, __old_sys_sigabbrev):
2456         Use __new_sys_siglist instead of _sys_siglist_internal as
2457         second macro argument.
2458         (_old_sys_siglist): Use declare_symbol_alias macro instead of
2459         strong_alias.
2461 2006-11-09  Ulrich Drepper  <drepper@redhat.com>
2463         [BZ #3493]
2464         * posix/unistd.h (sysconf): Remove const attribute.
2466         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Fix test for
2467         temporary or deprecated addresses.
2468         Patch by Sridhar Samudrala <sri@us.ibm.com>.
2470         * string/Makefile (tests): Add tst-strxfrm2.
2471         * string/tst-strxfrm2.c: New file.
2473 2006-10-09  Jakub Jelinek  <jakub@redhat.com>
2475         * elf/dl-debug.c (_dl_debug_initialize): Check r->r_map for 0
2476         rather than r->r_brk.
2478 2006-11-08  Jakub Jelinek  <jakub@redhat.com>
2480         * string/strxfrm_l.c (STRXFRM): Do the trailing \1 removal
2481         optimization even if needed > n.
2483         * elf/dl-load.c (decompose_rpath): Return bool rather than void.
2484         If l->l_name is on inhibit_rpath list, set sps->dirs to -1 and
2485         return false, otherwise return true.
2486         (cache_rpath): Return decompose_rpath return value.
2488 2006-11-07  Jakub Jelinek  <jakub@redhat.com>
2490         * include/libc-symbols.h (declare_symbol): Rename to...
2491         (declare_symbol_alias): ... this.  Add ORIGINAL argument, imply
2492         strong_alias (ORIGINAL, SYMBOL) in asm to make sure it preceedes
2493         .size directive.
2494         * sysdeps/gnu/errlist-compat.awk: Adjust for declare_symbol_alias
2495         changes.
2496         * sysdeps/gnu/siglist.c: Likewise.
2498 2006-11-03  Steven Munroe  <sjmunroe@us.ibm.com>
2500         * sysdeps/powerpc/fpu/bits/mathinline.h
2501         [__LIBC_INTERNAL_MATH_INLINES]: Moved to ...
2502         * sysdeps/powerpc/fpu/math_private.h: ...here.  New file.
2504 2006-11-05  Ulrich Drepper  <drepper@redhat.com>
2506         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word):
2507         Update handling of cache descriptor 0x49 for new models.
2508         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word):
2509         Likewise.
2511 2006-11-02  Jakub Jelinek  <jakub@redhat.com>
2513         * malloc/memusage.c (dest): Reset not_me back to false after
2514         printing statistics.
2516 2006-11-02  Ulrich Drepper  <drepper@redhat.com>
2518         * configure.in: Work around ld --help change and avoid -z relro
2519         test completely if the architecture doesn't care about security.
2521 2006-11-01  Ulrich Drepper  <drepper@redhat.com>
2523         * po/sv.po: Update from translation team.
2525 2006-10-31  Ulrich Drepper  <drepper@redhat.com>
2527         * stdlib/atexit.c (atexit): Don't mark as hidden when used to
2528         generate compatibility version.
2530 2006-10-29  Ulrich Drepper  <drepper@redhat.com>
2532         * configure.in: Relax -z relro requirement a bit.
2534         * po/sv.po: Update from translation team.
2536 2006-10-29  Jakub Jelinek  <jakub@redhat.com>
2538         * elf/dl-sym.c (do_sym): Use RTLD_SINGLE_THREAD_P.
2539         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Likewise.
2540         * elf/dl-close.c (_dl_close_worker): Likewise.
2541         * elf/dl-open.c (_dl_open_worker): Likewise.
2542         * sysdeps/generic/sysdep-cancel.h (RTLD_SINGLE_THREAD_P): Define.
2544 2006-10-27  Ulrich Drepper  <drepper@redhat.com>
2546         * configure.in: Require assembler support for visibility, compiler
2547         support for visibility and aliases, linker support for various -z
2548         options.
2549         * Makeconfig: Remove conditional code which now is unnecessary.
2550         * config.h.in: Likewise.
2551         * config.make.in: Likewise.
2552         * dlfcn/Makefile: Likewise.
2553         * elf/Makefile: Likewise.
2554         * elf/dl-load.c: Likewise.
2555         * elf/rtld.c: Likewise.
2556         * include/libc-symbols.h: Likewise.
2557         * include/stdio.h: Likewise.
2558         * io/Makefile: Likewise.
2559         * io/fstat.c: Likewise.
2560         * io/fstat64.c: Likewise.
2561         * io/fstatat.c: Likewise.
2562         * io/fstatat64.c: Likewise.
2563         * io/lstat.c: Likewise.
2564         * io/lstat64.c: Likewise.
2565         * io/mknod.c: Likewise.
2566         * io/mknodat.c: Likewise.
2567         * io/stat.c: Likewise.
2568         * io/stat64.c: Likewise.
2569         * libio/stdio.c: Likewise.
2570         * nscd/Makefile: Likewise.
2571         * stdlib/Makefile: Likewise.
2572         * stdlib/atexit.c: Likewise.
2573         * sysdeps/generic/ldsodefs.h: Likewise.
2574         * sysdeps/i386/dl-machine.h: Likewise.
2575         * sysdeps/i386/sysdep.h: Likewise.
2576         * sysdeps/i386/i686/memcmp.S: Likewise.
2577         * sysdeps/powerpc/powerpc32/sysdep.h: Likewise.
2578         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
2579         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
2581         * Makerules: USE_TLS support is now default.
2582         * tls.make.c: Likewise.
2583         * csu/Versions: Likewise.
2584         * csu/libc-start.c: Likewise.
2585         * csu/libc-tls.c: Likewise.
2586         * csu/version.c: Likewise.
2587         * dlfcn/dlinfo.c: Likewise.
2588         * elf/dl-addr.c: Likewise.
2589         * elf/dl-cache.c: Likewise.
2590         * elf/dl-close.c: Likewise.
2591         * elf/dl-iteratephdr.c: Likewise.
2592         * elf/dl-load.c: Likewise.
2593         * elf/dl-lookup.c: Likewise.
2594         * elf/dl-object.c: Likewise.
2595         * elf/dl-open.c: Likewise.
2596         * elf/dl-reloc.c: Likewise.
2597         * elf/dl-support.c: Likewise.
2598         * elf/dl-sym.c: Likewise.
2599         * elf/dl-sysdep.c: Likewise.
2600         * elf/dl-tls.c: Likewise.
2601         * elf/ldconfig.c: Likewise.
2602         * elf/rtld.c: Likewise.
2603         * elf/tst-tls-dlinfo.c: Likewise.
2604         * elf/tst-tls1.c: Likewise.
2605         * elf/tst-tls10.h: Likewise.
2606         * elf/tst-tls14.c: Likewise.
2607         * elf/tst-tls2.c: Likewise.
2608         * elf/tst-tls3.c: Likewise.
2609         * elf/tst-tls4.c: Likewise.
2610         * elf/tst-tls5.c: Likewise.
2611         * elf/tst-tls6.c: Likewise.
2612         * elf/tst-tls7.c: Likewise.
2613         * elf/tst-tls8.c: Likewise.
2614         * elf/tst-tls9.c: Likewise.
2615         * elf/tst-tlsmod1.c: Likewise.
2616         * elf/tst-tlsmod13.c: Likewise.
2617         * elf/tst-tlsmod13a.c: Likewise.
2618         * elf/tst-tlsmod14a.c: Likewise.
2619         * elf/tst-tlsmod2.c: Likewise.
2620         * elf/tst-tlsmod3.c: Likewise.
2621         * elf/tst-tlsmod4.c: Likewise.
2622         * elf/tst-tlsmod5.c: Likewise.
2623         * elf/tst-tlsmod6.c: Likewise.
2624         * include/errno.h: Likewise.
2625         * include/link.h: Likewise.
2626         * include/tls.h: Likewise.
2627         * locale/global-locale.c: Likewise.
2628         * locale/localeinfo.h: Likewise.
2629         * malloc/arena.c: Likewise.
2630         * malloc/hooks.c: Likewise.
2631         * malloc/malloc.c: Likewise.
2632         * resolv/Versions: Likewise.
2633         * sysdeps/alpha/dl-machine.h: Likewise.
2634         * sysdeps/alpha/libc-tls.c: Likewise.
2635         * sysdeps/generic/ldsodefs.h: Likewise.
2636         * sysdeps/generic/tls.h: Likewise.
2637         * sysdeps/i386/dl-machine.h: Likewise.
2638         * sysdeps/ia64/dl-machine.h: Likewise.
2639         * sysdeps/ia64/libc-tls.c: Likewise.
2640         * sysdeps/mach/hurd/fork.c: Likewise.
2641         * sysdeps/mach/hurd/i386/tls.h: Likewise.
2642         * sysdeps/powerpc/powerpc32/dl-machine.c: Likwise.
2643         * sysdeps/powerpc/powerpc32/dl-machine.h: Likewise.
2644         * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
2645         * sysdeps/s390/libc-tls.c: Likewise.
2646         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
2647         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
2648         * sysdeps/sh/dl-machine.h: Likewise.
2649         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
2650         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
2651         * sysdeps/x86_64/dl-machine.h: Likewise.
2653         * elf/dl-close.c (_dl_close_worker): Renamed from _dl_close and
2654         split out locking and parameter checking.
2655         (_dl_close): Call _dl_close_worker after locking and checking.
2656         * elf/dl-open.c (_dl_open): Call _dl_close_worker instead of
2657         _dl_close.
2658         * elf/Makefile: Add rules to build and run tst-thrlock.
2659         * elf/tst-thrlock.c:  New file.
2661         [BZ #3426]
2662         * stdlib/stdlib.h: Adjust comment for canonicalize_file_name to
2663         reality.
2665         [BZ #3429]
2666         * elf/dl-open.c (dl_open_worker): Keep holding dl_load_lock until
2667         we are sure we do not need it anymore for _dl_close.  Also move
2668         the asserts inside the lock region.
2669         Patch mostly by Suzuki <suzuki@in.ibm.com>.
2671 2006-10-27  Jakub Jelinek  <jakub@redhat.com>
2673         * elf/dl-lookup.c (_dl_debug_bindings): Remove unused symbol_scope
2674         argument.
2675         (_dl_lookup_symbol_x): Adjust caller.
2677         * sysdeps/generic/ldsodefs.h (struct link_namespaces): Remove
2678         _ns_global_scope.
2679         * elf/rtld.c (dl_main): Don't initialize _ns_global_scope.
2681         * elf/dl-libc.c: Revert l_scope name changes.
2682         * elf/dl-load.c: Likewise.
2683         * elf/dl-object.c: Likewise.
2684         * elf/rtld.c: Likewise.
2685         * elf/dl-close.c (_dl_close): Likewise.
2686         * elf/dl-open.c (dl_open_worker): Likewise.  If not SINGLE_THREAD_P,
2687         always use __rtld_mrlock_{change,done}.  Always free old scope list
2688         here if not l_scope_mem.
2689         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Revert l_scope name
2690         change.  Never free scope list here.  Just __rtld_mrlock_lock before
2691         the lookup and __rtld_mrlock_unlock it after the lookup.
2692         * elf/dl-sym.c: Likewise.
2693         * include/link.h (struct r_scoperec): Remove.
2694         (struct link_map): Replace l_scoperec with l_scope, l_scoperec_mem
2695         with l_scope_mem and l_scoperec_lock with l_scope_lock.
2697 2006-10-25  Ulrich Drepper  <drepper@redhat.com>
2699         * sysdeps/gnu/netinet/tcp.h: Define TCP_CONGESTION.
2701 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
2703         * configure.in: Disable building profile libraries by default.
2705 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
2707         * sunrpc/xdr_mem.c (xdrmem_setpos): Don't compare addresses
2708         as signed longs, check for x_base + pos overflow.
2709         * sunrpc/Makefile (tests): Add tst-xdrmem2.
2710         * sunrpc/tst-xdrmem2.c: New test.
2712 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
2714         * elf/dl-lookup.c (_dl_lookup_symbol_x): Add warning to
2715         _dl_lookup_symbol_x code.
2717 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
2719         * elf/dl-runtime.c: Include sysdep-cancel.h.
2720         (_dl_fixup, _dl_profile_fixup): Use __rtld_mrlock_* and
2721         scoperec->nusers only if !SINGLE_THREAD_P.  Use atomic_*
2722         instead of catomic_* macros.
2723         * elf/dl-sym.c: Include sysdep-cancel.h.
2724         (do_sym): Use __rtld_mrlock_* and scoperec->nusers only
2725         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
2726         * elf/dl-close.c: Include sysdep-cancel.h.
2727         (_dl_close): Use __rtld_mrlock_* and scoperec->nusers only
2728         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
2729         * elf/dl-open.c: Include sysdep-cancel.h.
2730         (dl_open_worker): Use __rtld_mrlock_* and scoperec->nusers only
2731         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
2733 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
2735         [BZ #3313]
2736         * malloc/malloc.c (malloc_consolidate): Set maxfb to address of last
2737         fastbin rather than end of fastbin array.
2739 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
2741         * sysdeps/i386/i486/bits/atomic.h (catomic_decrement): Use correct
2742         body macro.
2743         * sysdeps/x86_64/bits/atomic.h
2744         (__arch_c_compare_and_exchange_val_64_acq): Add missing casts.
2745         (catomic_decrement): Use correct body macro.
2747 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
2749         * include/atomic.h: Add a unique prefix to all local variables
2750         in macros.
2751         * csu/tst-atomic.c (do_test): Test also catomic_* macros.
2753 2006-10-16  Ulrich Drepper  <drepper@redhat.com>
2755         [BZ #3369]
2756         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Fix typos in rules 4
2757         and 7.
2759 2006-10-14  Ulrich Drepper  <drepper@redhat.com>
2761         * resolv/arpa/nameser.h: Document that ns_t_a6 is deprecated.
2763 2006-10-13  Ulrich Drepper  <drepper@redhat.com>
2765         [BZ #3313]
2766         * malloc/malloc.c (malloc_consolidate): Don't use get_fast_max to
2767         determine highest fast bin to consolidate, always look into all of
2768         them.
2769         (do_check_malloc_state): Only require for empty bins for large
2770         sizes in main arena.
2772         * libio/stdio.h: Add more __wur attributes.
2774         * elf/dl-minimal.c (realloc): Optimize last patch.
2776 2006-10-12  Richard Sandiford  <richard@codesourcery.com>
2778         [BZ #3352]
2779         * elf/dl-minimal.c (realloc): Let malloc() return a new pointer,
2780         and use memcpy() if it does.
2782 2006-11-12  Andreas Jaeger  <aj@suse.de>
2784         [BZ #2510]
2785         * manual/search.texi (Hash Search Function): Clarify.
2786         (Array Search Function): Clarify.
2788 2006-11-12  Joseph Myers  <joseph@codesourcery.com>
2790         [BZ #2830]
2791         * math/atest-exp.c (main): Cast hex value to mp_limb_t before
2792         shifting.
2793         * math/atest-exp2.c (read_mpn_hex): Likewise.
2794         * math/atest-sincos.c (main): Likewise.
2796 2006-10-11  Ulrich Drepper  <drepper@redhat.com>
2798         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_pwait.
2799         * sysdeps/unix/sysv/linux/sys/epoll.h: Declare epoll_pwait.
2800         * sysdeps/unix/sysv/linux/Versions (libc): Add epoll_pwait for
2801         version GLIBC_2.6.
2802         * Versions.def: Add GLIBC_2.6 for libc.
2804         * sysdeps/unix/sysv/linux/i386/sysdep.h (DOARGS_6): Fix offset.
2806         * sysdeps/i386/i486/bits/atomic.h: Add catomic_* support.
2808 2006-10-11  Jakub Jelinek  <jakub@redhat.com>
2810         * malloc/malloc.c (_int_malloc): Remove unused any_larger variable.
2812         * nis/nis_defaults.c (__nis_default_access): Don't call getenv twice.
2814         * nis/nis_subr.c (nis_getnames): Use __secure_getenv instead of getenv.
2815         * sysdeps/generic/unsecvars.h: Add NIS_PATH.
2817 2006-10-11  Ulrich Drepper  <drepper@redhat.com>
2819         * include/atomic.c: Define catomic_* operations.
2820         * sysdeps/x86_64/bits/atomic.h: Likewise.  Fix a few minor problems.
2821         * stdlib/cxa_finalize.c: Use catomic_* operations instead of atomic_*.
2822         * malloc/memusage.c: Likewise.
2823         * gmon/mcount.c: Likewise.
2824         * elf/dl-close.c: Likewise.
2825         * elf/dl-open.c: Likewise.
2826         * elf/dl-profile.c: Likewise.
2827         * elf/dl-sym.c: Likewise.
2828         * elf/dl-runtime.c: Likewise.
2829         * elf/dl-fptr.c: Likewise.
2830         * resolv/res_libc.c: Likewise.
2832 2006-10-10  Ulrich Drepper  <drepper@redhat.com>
2834         * nis/nis_subr.c (nis_getnames): Add trailing dot to NIS_PATH
2835         components which lack them.
2837         * nis/nis_subr.c (nis_getnames): Make sure that we always return
2838         at least one entry consisting of the parameter concatenated with
2839         the domain.
2841 2006-10-10  Roland McGrath  <roland@frob.com>
2843         * sysdeps/mach/hurd/utimes.c: Use a union to avoid an improper cast.
2844         * sysdeps/mach/hurd/futimes.c: Likewise.
2845         * sysdeps/mach/hurd/lutimes.c: Likewise.
2847 2006-10-09  Ulrich Drepper  <drepper@redhat.com>
2848             Jakub Jelinek  <jakub@redhat.com>
2850         Implement reference counting of scope records.
2851         * elf/dl-close.c (_dl_close): Remove all scopes from removed objects
2852         from the list in objects which remain.  Always allocate new scope
2853         record.
2854         * elf/dl-open.c (dl_open_worker): When growing array for scopes,
2855         don't resize, allocate a new one.
2856         * elf/dl-runtime.c: Update reference counters before using a scope
2857         array.
2858         * elf/dl-sym.c: Likewise.
2859         * elf/dl-libc.c: Adjust for l_scope name change.
2860         * elf/dl-load.c: Likewise.
2861         * elf/dl-object.c: Likewise.
2862         * elf/rtld.c: Likewise.
2863         * include/link.h: Include <rtld-lowlevel.h>.  Define struct
2864         r_scoperec.  Replace r_scope with pointer to r_scoperec structure.
2865         Add l_scoperec_lock.
2866         * sysdeps/generic/ldsodefs.h: Include <rtld-lowlevel.h>.
2867         * sysdeps/generic/rtld-lowlevel.h: New file.
2869         * include/atomic.h: Rename atomic_and to atomic_and_val and
2870         atomic_or to atomic_or_val.  Define new macros atomic_and and
2871         atomic_or which do not return values.
2872         * sysdeps/x86_64/bits/atomic.h: Define atomic_and and atomic_or.
2873         Various cleanups.
2874         * sysdeps/i386/i486/bits/atomic.h: Likewise.
2876         * po/sv.po: Update from translation team.
2878 2006-10-07  Ulrich Drepper  <drepper@redhat.com>
2880         * Versions.def: Add GLIBC_2.6 to libpthread.
2882         * include/shlib-compat.h (SHLIB_COMPAT): Expand parameters before use.
2883         (versioned_symbol): Likewise.
2884         (compat_symbol): Likewise.
2886         * po/tr.po: Update from translation team.
2888 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
2890         * nis/Banner: Removed.  It's been integral part forever and the
2891         author info is incomplete anyway.
2892         * libio/Banner: Likewise.
2894         * nis/nis_table.c (nis_list): If __follow_path fails in the new
2895         code, make sure the nis_freeresult call doesn't crash and that the
2896         result is reported correctly.
2898 2006-09-27  Jakub Jelinek  <jakub@redhat.com>
2900         * nis/nis_table.c (nis_list): Handle FOLLOW_PATH | ALL_RESULTS
2901         when callback is NULL.
2903         * nis/Versions (libnss_nisplus): Add
2904         _nss_nisplus_initgroups_dyn@@GLIBC_PRIVATE.
2905         * nis/Makefile (libnss_nisplus-routines): Add nisplus-initgroups.
2906         * nis/nss_nisplus/nisplus-grp.c (tablename_val, tablename_len,
2907         _nss_create_tablename): Rename to...
2908         (grp_tablename_val, grp_tablename_len, _nss_grp_create_tablename):
2909         ... these.  No longer static.
2910         (internal_setgrent): Adjust users.
2911         (_nss_nisplus_getgrnam_r, _nss_nisplus_getgrgid_r): Likewise.
2912         Don't use locking around _nss_grp_create_tablename call.
2913         * nis/nss_nisplus/nisplus-initgroups.c: New file.
2915 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
2917         * version.h (VERSION): Bump to 2.5.90 for new development tree.
2919 2006-10-06  Andreas Jaeger  <aj@suse.de>
2921         * include/features.h (__GLIBC_MINOR__): It's glibc 2.5 now.
2923 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
2925         * po/pl.po: Update from translation team.
2927         * nscd/nscd.c (main): Fix typo in message.
2928         Patch by Jakub Bogsz <qboosh@pld-linux.org>.
2930 2006-10-02  Jakub Jelinek  <jakub@redhat.com>
2932         [BZ #3291]
2933         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
2934         errno.h, signal.h, unistd.h and sysdep-cancel.h.
2935         (__sigprocmask): Define.
2937 2006-10-02  Ulrich Drepper  <drepper@redhat.com>
2939         * elf/rtld.c (dl_main): Don't use prelinking if LD_DYNAMIC_WEAK is
2940         used.
2942 2006-10-02  Jakub Jelinek  <jakub@redhat.com>
2944         * nscd/mem.c (mempool_alloc): Round array size to 16 bytes
2945         in oldtotal and newtotal calculation.
2946         * nscd/nscd-client.h (struct mapped_database): Add datasize
2947         field.
2948         * nscd/nscd_helper.c (get_mapping): Initialize datasize field.
2949         (__nscd_get_map_ref): Get a new mapping even if mapping's data_size
2950         increased.
2951         (__nscd_cache_search): Add checks to make sure we never reference
2952         data beyond the current mapping.
2954 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
2956         * sysdeps/posix/getaddrinfo.c (match_prefix): Make mask and val
2957         variables const to avoid compiler warnings.
2959         * io/fts.c (fts_close): Remove redundant checks.
2960         (fts_build): Likewise.
2961         (fts_palloc): Likewise.
2963         * manual/message.texi (Advanced gettext functions,
2964         Using gettextized software): Fix typos.
2966 2006-09-30  Ulrich Drepper  <drepper@redhat.com>
2968         * posix/glob.c (glob_in_dir): Add some comments and asserts to
2969         explain why there are no leaks.
2971 2006-09-29  Ulrich Drepper  <drepper@redhat.com>
2973         * libio/wmemstream.c: Include <wchar.h>.
2974         * libio/bug-wmemstream1.c: Likewise.
2975         * libio/tst-wmemstream1.c: Likewise.
2976         * libio/tst-wmemstream2.c: Likewise.
2978         * version.h (RELEASE): Bump to 2.5.
2979         * README: Regenerated.
2981         * locale/iso-3166.def: Add Aaland Islands and Montenegro.
2983         [BZ #3273]
2984         * nscd/nscd_initgroups.c (__nscd_getgrouplist): It is OK to have
2985         found no group members.
2986         Patch by Petr Baudis.
2988 2006-09-29  Jakub Jelinek  <jakub@redhat.com>
2990         * elf/rtld.c (_dl_start_final): If not USE___THREAD, don't
2991         assert bootstrap_map.l_tls_modid is zero.
2992         (_dl_start): Initialize bootstrap_map.l_tls_modid to 0
2993         if USE___THREAD.
2995 2006-09-27  Ulrich Drepper  <drepper@redhat.com>
2997         * libio/stdio.h: Move open_wmemstream prototype to ...
2998         * wcsmbs/wchar.h: ... here.
3000 2006-09-25  Jakub Jelinek  <jakub@redhat.com>
3002         [BZ #3252]
3003         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Handle only
3004         fchownat syscall and __ASSUME_LCHOWN_SYSCALL case inline, call
3005         __{,l}chown to handle the rest.
3006         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Handle only
3007         fchownat syscall and __ASSUME_32BITUIDS case inline, call
3008         __{,l}chown to handle the rest.
3009         * sysdeps/unix/sysv/linux/sparc/sparc32/fchownat.c: Include
3010         i386/fchownat.c.
3011         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c: Likewise.
3012         * sysdeps/unix/sysv/linux/sh/fchownat.c: Likewise.
3014         [BZ #3253]
3015         * posix/glob.c (glob_in_dir): Don't alloca one struct globlink at a
3016         time, rather allocate increasingly bigger arrays of pointers, if
3017         possible with alloca, if too large with malloc.
3019 2006-09-24  Jakub Jelinek  <jakub@redhat.com>
3021         * sysdeps/powerpc/fpu/libm-test-ulps: Updated.
3023         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Fix 2 typos.
3025 2006-09-24  Ulrich Drepper  <drepper@redhat.com>
3027         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Implement rule 4,
3028         home addresses.
3029         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Recognize
3030         IFA_F_HOMEADDRESS flag for interfaces.
3031         * include/ifaddrs.h (struct in6addrinfo): Define
3032         in6ai_homeaddress.
3034 2006-09-21  Jakub Jelinek  <jakub@redhat.com>
3036         [BZ #3225]
3037         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (PTR_MANGLE3,
3038         PTR_DEMANGLE3): Define.
3039         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (PTR_MANGLE3,
3040         PTR_DEMANGLE3): Likewise.
3041         * sysdeps/powerpc/powerpc32/__longjmp-common.S (__longjmp): Use them.
3042         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp):
3043         Likewise.
3044         * sysdeps/powerpc/powerpc64/__longjmp-common.S (__longjmp): Likewise.
3046 2006-09-20  Jakub Jelinek  <jakub@redhat.com>
3048         * po/libc.pot: Regenerated.
3049         * po/be.po: Updated.
3050         * po/ca.po: Likewise.
3051         * po/cs.po: Likewise.
3052         * po/da.po: Likewise.
3053         * po/de.po: Likewise.
3054         * po/el.po: Likewise.
3055         * po/en_GB.po: Likewise.
3056         * po/es.po: Likewise.
3057         * po/fi.po: Likewise.
3058         * po/fr.po: Likewise.
3059         * po/gl.po: Likewise.
3060         * po/hr.po: Likewise.
3061         * po/hu.po: Likewise.
3062         * po/ja.po: Likewise.
3063         * po/ko.po: Likewise.
3064         * po/nb.po: Likewise.
3065         * po/nl.po: Likewise.
3066         * po/pl.po: Likewise.
3067         * po/pt_BR.po: Likewise.
3068         * po/ru.po: Likewise.
3069         * po/rw.po: Likewise.
3070         * po/sk.po: Likewise.
3071         * po/sv.po: Likewise.
3072         * po/tr.po: Likewise.
3073         * po/zh_CN.po: Likewise.
3074         * po/zh_TW.po: Likewise.
3076         [BZ #3137]
3077         * iconv/iconv_prog.c (main): Fix spelling in error message.
3078         * iconv/iconvconfig.c (main): Likewise.
3079         * locale/programs/ld-collate.c (handle_ellipsis): Likewise.
3080         * locale/programs/ld-ctype.c (charclass_symbolic_ellipsis): Likewise.
3081         * locale/programs/localedef.c (main): Likewise.
3082         * locale/programs/repertoire.c (repertoire_read): Likewise.
3083         * timezone/zdump.c (main): Likewise.
3084         * nscd/connections.c (handle_request): Fix spelling in log message.
3085         Patch by Malcolm Parsons <malcolm.parsons@gmail.com>.
3087 2006-09-20  Ulrich Drepper  <drepper@redhat.com>
3089         * inet/inet6_option.c: Also emit linker warnings for the RFC 2292
3090         interfaces.
3092 2006-09-20  Andreas Jaeger  <aj@suse.de>
3094         * math/libm-test.inc (lrint_test_upward): Fix typo.
3096 2006-06-17  Joseph S. Myers  <joseph@codesourcery.com>
3098         [BZ #2592]
3099         * math/libm-test.inc (lrint_test_tonearest): New function.
3100         (lrint_test_towardzero): New function.
3101         (lrint_test_downward): New function.
3102         (lrint_test_upward): New function.
3103         (main): Run these new tests.
3104         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Correct rounding
3105         of values near to 0.
3106         (two52): Use double not long double.
3107         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
3108         * sysdeps/ieee754/flt-32/s_llrintf.c (__llrintf): Likewise.
3109         (two23): Use float not double.
3110         * sysdeps/ieee754/flt-32/s_lrintf.c (__lrintf): Likewise.
3111         (two23): Use float not double.
3112         * sysdeps/ieee754/ldbl-128/s_llrintl.c (__llrintl): Likewise.
3113         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
3114         * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Likewise.
3115         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
3117 2006-09-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3119         * sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c (__makecontext):
3120         Cast sp to unsigned long to avoid compiler warning.
3121         Use __makecontext_ret function instead of a trampoline on the stack.
3122         (__makecontext_ret): New function.
3123         * sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c: Likewise.
3125 2006-09-19  Jakub Jelinek  <jakub@redhat.com>
3127         * elf/dl-cache.c (HWCAP_CHECK): If _DL_PLATFORMS_COUNT, but
3128         platform == -1, reject any libs with non-zero _DL_HWCAP_PLATFORM
3129         bits.
3131 2006-09-19  Ulrich Drepper  <drepper@redhat.com>
3133         * elf/dl-close.c (_dl_close): If dependency is not unloaded make
3134         sure no reference to the unloaded map's search list remains in the
3135         dependency's scope.
3137 2006-09-16  Jakub Jelinek  <jakub@redhat.com>
3139         * elf/Makefile: Add rules to build and run unload7 test.
3140         * elf/unload7.c: New test.
3141         * elf/unload7mod1.c: New file.
3142         * elf/unload7mod2.c: New file.
3144 2006-09-18  Jakub Jelinek  <jakub@redhat.com>
3146         * sysdeps/unix/sysv/linux/sys/ptrace.h (PT_GETEVENTMSG): Fix pasto.
3147         * sysdeps/unix/sysv/linux/s390/sys/ptrace.h (PTRACE_SETOPTIONS,
3148         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
3149         * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h (PTRACE_SETOPTIONS,
3150         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
3151         * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h (PTRACE_SETOPTIONS,
3152         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
3153         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h (PTRACE_SETOPTIONS,
3154         PTRACE_GETEVENTMSG): Likewise.
3155         (PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Change to the arch independent
3156         values.
3158 2006-09-17  Mike Frysinger  <vapier@gentoo.org>
3160         * sysdeps/unix/sysv/linux/sys/ptrace.h (PTRACE_SETOPTIONS,
3161         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
3162         * sysdeps/unix/sysv/linux/ptrace.c (ptrace): Check PTRACE_SETOPTIONS,
3163         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO and PTRACE_SETSIGINFO.
3165 2006-09-16  Jakub Jelinek  <jakub@redhat.com>
3167         * sysdeps/powerpc/powerpc32/register-dump.h (register_dump): Don't
3168         write '\0' to the fd.
3169         * sysdeps/mach/hurd/powerpc/register-dump.h (register_dump): Likewise.
3170         * sysdeps/powerpc/powerpc64/register-dump.h (register_dump): Likewise.
3171         Change regs to unsigned long pointer from unsigned int, fix fscr
3172         offset.
3174 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
3176         * io/Makefile (CFLAGS-fstatat.c): Set.
3177         (CFLAGS-fstatat64.c): Likewise.
3178         (CFLAGS-mknodat.c): Likewise.
3180         * sysdeps/ieee754/ldbl-128ibm/s_llrintl.c: Comment fixes.
3181         * sysdeps/ieee754/ldbl-128ibm/s_llroundl.c: Likewise.
3182         * sysdeps/ieee754/ldbl-128ibm/s_lrintl.c: Rewritten.
3183         * sysdeps/ieee754/ldbl-128ibm/s_lroundl.c: Rewritten.
3185 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
3186             Steven Munroe  <sjmunroe@us.ibm.com>
3188         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 4 new cap
3189         names to the beginning.  Rename "cell" to "cellbe".
3190         (_dl_powerpc_platforms): New.
3191         * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
3192         (HWCAP_IMPORTANT): Remove power{4,5,5+} and cell.
3193         (_DL_PLATFORMS_COUNT, _DL_FIRST_PLATFORM): Define.
3194         (_DL_HWCAP_PLATFORM): Define to new mask.
3195         (_dl_platform_string, _dl_string_platform): New functions.
3196         * sysdeps/powerpc/sysdep.h (PPC_FEATURE_BOOKE, PPC_FEATURE_SMT,
3197         PPC_FEATURE_ICACHE_SNOOP, PPC_FEATURE_ARCH_2_05): Define.
3199 2006-09-12  Jakub Jelinek  <jakub@redhat.com>
3201         [BZ #2526]
3202         * README.libm: Fix a thinko in sqrt algorithm description.
3204         [BZ #3143]
3205         * manual/string.texi (argz_delete): Fix prototype.
3206         Patch by <alpt@freaknet.org>.
3208 2006-08-26  Joseph Myers  <joseph@codesourcery.com>
3210         [BZ #3138]
3211         * io/test-lfs.c (do_prepare): Give name_len type size_t.
3212         * io/tst-fcntl.c (do_prepare): Likewise.
3213         * posix/tst-exec.c (do_prepare): Likewise.
3214         * posix/tst-preadwrite.c (do_prepare): Likewise.
3215         * posix/tst-spawn.c (do_prepare): Likewise.
3216         * posix/tst-truncate.c (do_prepare): Likewise.
3217         * rt/tst-aio.c (do_prepare): Likewise.
3218         * rt/tst-aio64.c (do_prepare): Likewise.
3219         * stdlib/test-canon2.c (do_prepare): Give test_dir_len type
3220         size_t.
3222 2006-09-09  Ulrich Drepper  <drepper@redhat.com>
3224         [BZ #2821]
3225         * time/mktime.c (guess_time_tm): Fix overflow detection.
3226         * time/Makefile (tests): Add bug-mktime1.
3227         * time/bug-mktime1.c: New file.
3229         [BZ #3189, #3188]
3230         * misc/sys/mman.h (remap_file_pages): Make available for _GNU_SOURCE.
3231         (mremap): Likewise.
3233 2006-09-07  Jakub Jelinek  <jakub@redhat.com>
3235         [BZ #1006]
3236         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela):
3237         Ensure relocation doesn't clobber any bits outside of the
3238         immediate field for R_SPARC_TLS_LE_HIX22, R_SPARC_WDISP30,
3239         R_SPARC_HI22 and R_SPARC_H44.
3241         [BZ #2775]
3242         * malloc/malloc.c (sYSMALLOc): Only call grow_heap if
3243         (long) (MINSIZE + nb - old_size) is positive.
3245         * malloc/arena.c (grow_heap): When growing bail even if new_size
3246         is negative.
3248         [BZ #3155]
3249         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S (__lrint): Don't access
3250         stack below r1.
3252 2006-09-06  Jakub Jelinek  <jakub@redhat.com>
3254         * posix/regex_internal.c (re_string_reconstruct): Handle
3255         offset < pstr->valid_raw_len && pstr->offsets_needed case.
3256         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
3257         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
3258         re_string_context_at.
3259         * posix/Makefile: Add rules to build and run bug-regex26 test.
3260         * posix/bug-regex26.c: New test.
3262         * locale/programs/ld-collate.c (collate_read): Goto sym_equiv_free
3263         rather than col_sym_free.  Move seqp declaration earlier.
3265         * resolv/gai_suspend.c (gai_suspend): Make sure result is initialized.
3267 2006-09-05  Jakub Jelinek  <jakub@redhat.com>
3269         * nscd/initgrcache.c (addinitgroupsX): Move any_success
3270         decl before first goto out.
3272 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
3274         * Makerules (shlib.lds): If have-hash-style, put .hash section
3275         at the end of the RO segment.
3277 2006-09-04  Ulrich Drepper  <drepper@redhat.com>
3279         * elf/do-lookup.h (do_lookup_x): Initialize symidx in case the new
3280         style hash table format is used.
3282 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
3284         * resolv/res_mkquery.c (res_nmkquery): Set hp->id to statp->id after
3285         randomization rather than before.
3286         * resolv/res_init.c (res_randomid): Don't call gettimeofday here.
3288 2006-08-31  Jakub Jelinek  <jakub@redhat.com>
3290         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Add ld.so.
3292         * malloc/malloc.c (_int_malloc): Use full list insert and not
3293         shortcut which assumes the list is empty for large requests
3294         too.
3296         * elf/tst-addr1.c (do_test): Allow i.dli_sname "_IO_printf".
3298 2006-08-30  Jakub Jelinek  <jakub@redhat.com>
3300         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (splice): Add offin
3301         and offout arguments to the prototype.
3302         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (splice): Likewise.
3303         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (splice): Likewise.
3304         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (splice): Likewise.
3305         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (splice): Likewise.
3306         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (splice): Likewise.
3307         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (splice): Likewise.
3308         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (splice): Likewise.
3309         * sysdeps/unix/sysv/linux/syscalls.list (splice): Adjust args string.
3311 2006-08-28  Ulrich Drepper  <drepper@redhat.com>
3313         * elf/dl-load.c (_dl_init_paths): Expand DSTs.
3315         * elf/dl-open.c (dl_open_worker): Allow $LIB and $PLATFORM in
3316         dlopen parameters.
3318 2006-08-28  Jakub Jelinek  <jakub@redhat.com>
3320         * inet/getnameinfo.c (getnameinfo): For AF_INET, check errno
3321         only if herrno is NETDB_INTERNAL.  Handle errors other than
3322         ERANGE outside of the loops, handle TRY_AGAIN.
3324         * locale/programs/ld-ctype.c (translit_flatten): Issue error
3325         if other's ctype category was missing.
3326         * locale/programs/ld-collate.c (collate_read): Return if
3327         copy_locale's collate category is missing.
3329 2006-08-27  Ulrich Drepper  <drepper@redhat.com>
3331         [BZ #2684]
3332         * malloc/malloc.c (public_rEALLOc): Try harder by using other
3333         arenas if allocation failed.
3334         Patch mostly by Jan Edler <jan.edler@indexengines.com>.
3336 2006-08-26  Ulrich Drepper  <drepper@redhat.com>
3338         * malloc/malloc.c (bin_at): Rewrite to be more clear and to not
3339         waste bins[0..1].
3340         (malloc_state): Reduce bins size by 2.
3341         (_int_malloc): Fix test for large enough buffer for early termination.
3342         When no unsorted block matches perfectly and an exiting block has
3343         to be split, use full list insert and not shortcut which assumes
3344         the list is empty.
3346         * locale/programs/ld-ctype.c (ctype_read): Better patch for read
3347         failure.
3349 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
3351         * locale/programs/ld-ctype.c (ctype_read): If CTYPE is NULL, don't
3352         do anything.
3354         * sysdeps/generic/ldsodefs.h (DL_ADDR_SYM_MATCH): For undefined
3355         symbol require exact match (these are PLTs).
3356         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
3357         (_dl_ppc64_addr_sym_match): Likewise.
3359         [BZ #2683]
3360         * elf/dl-addr.c (_dl_addr): Don't ignore all undefined symbols.
3361         If symbol has a value use it.
3362         * elf/tst-dladdr1.c: New file.
3363         * elf/Makefile: Add rules to build and run tst-addr1.
3365 2006-08-24  Jakub Jelinek  <jakub@redhat.com>
3367         * malloc/malloc.c (sYSMALLOc): Avoid infinite loop if MMAP
3368         keeps failing and heap growth or new heap creation isn't
3369         successful either.
3370         * malloc/tst-malloc.c (main): Add new tests.
3372 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
3374         [BZ #2734]
3375         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use same conditions
3376         as in the x86-64 code to use bswap.
3378 2006-05-21  Joseph S. Myers  <joseph@codesourcery.com>
3380         [BZ #2680]
3381         * posix/unistd.h (getlogin_r): Condition on __USE_POSIX199506, not
3382         __USE_UNIX98.
3383         * posix/bits/unistd.h: Likewise.
3385 2006-05-15  Mike Frysinger  <vapier@gentoo.org>
3387         [BZ #2751]
3388         * string/strchr.c: Add cast to avoid warning.
3390 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
3392         * malloc/malloc.c (DEFAULT_MMAP_THRESHOLD_MAX): For 32-bit
3393         platforms define as 512K.  For 64-bit platforms as 32MB.  The lower
3394         limit is needed to avoid the exploding of the address space
3395         requirement for secondary heaps.
3396         * malloc/arena.c (HEAP_MAX_SIZE): Define using
3397         DEFAULT_MMAP_THRESHOLD_MAX if it is defined.
3399 2006-07-30  Joseph S. Myers  <joseph@codesourcery.com>
3401         [BZ #3018]
3402         * Makerules (depfiles): Handle extra-test-objs the same as
3403         extra-objs.
3404         (common-mostlyclean): Likewise.
3405         * dlfcn/Makefile (extra-objs): Add modules to extra-test-objs
3406         instead.
3407         * elf/Makefile (extra-objs): Likewise.
3408         * stdlib/Makefile (extra-objs): Likewise.
3410 2006-08-14  Eric Blake  <ebb9@byu.net>
3412         [BZ #3044]
3413         * misc/error.h: Assume C89 or better.
3414         * misc/error.c: Likewise.
3416 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
3418         [BZ #3040]
3419         * sysdeps/unix/sysv/linux/openat.c: Fix compilation if
3420         __ASSUME_ATFCTS is defined.
3422 2006-08-19  Ulrich Drepper  <drepper@redhat.com>
3424         * malloc/malloc.c (_int_malloc): Limit number of unsorted blocks
3425         to sort in each call.
3427         * nis/nss_nis/nis-service.c (internal_nis_getservent_r): . If map
3428         is empty simply return and use next service.
3429         * nis/nss_nis/nis-rpc.c (internal_nis_getrpcent_r): Likewise.
3431         * locale/programs/charmap.c (charmap_read): Add new parameter.  It
3432         tells us when not finding a charmap file is an error.
3433         * locale/programs/charmap.h: Adjust charmap_read prototype.
3434         * iconv/iconv_prog.c (main): Tell charmap_read it's no error if we
3435         cannot find a charmap.
3436         * locale/programs/localedef.c (main): Adjust charmap_read call.
3438 2006-08-15  Jakub Jelinek  <jakub@redhat.com>
3440         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Use
3441         sysdeps/posix/pause.c implementation instead.
3443 2006-08-09  Jakub Jelinek  <jakub@redhat.com>
3445         * sysdeps/unix/nice.c (nice): Transform EACCES errno from setpriority
3446         to EPERM.
3448 2006-08-13  Andreas Schwab  <schwab@suse.de>
3450         * sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_runtime_resolve):
3451         Don't clobber caller's LRSAVE.
3452         (_dl_prof_resolve): Likewise.
3454 2006-08-14  Ulrich Drepper  <drepper@redhat.com>
3456         [BZ #1996]
3457         * libio/memstream.c (open_memstream): Allocate initial buffer with
3458         calloc.
3459         * libio/wmemstream.c (open_wmemstream): Likewise.
3460         * libio/strops.c: Pretty printing.
3461         (_IO_str_overflow): Clear uninitialized part of the new buffer.
3462         (enlarge_userbuf): New function.
3463         (_IO_str_seekoff): Call it if seek position is larger than current
3464         buffer.
3465         * libio/wstrops.c: Likewise.
3466         * libio/vasprintf.c: Add comment as to why we do not have to use
3467         calloc instead of malloc to allocate initial buffer.
3468         * libio/Makefile (tests): Add bug-memstream1 and bug-wmemstream1.
3469         * libio/bug-memstream1.c: New file.
3470         * libio/bug-wmemstream1.c: New file.
3472 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
3474         * libio/wstrops.c: Remove dead macro definitions and comments.
3475         * libio/strops.c: Likewise.
3477         [BZ #2764]
3478         * login/utmpname.c (__utmpname): Remove unnecessary test.
3480 2006-06-08  Joseph Myers  <jsm28@gcc.gnu.org>
3482         [BZ #2832]
3483         * math/gen-libm-test.pl (clean_up_number): Do not remove trailing
3484         0s from integers.
3486 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
3488         [BZ #2987]
3489         * sysdeps/unix/sysv/linux/clock_settime.c: Add code to use syscall
3490         for CPU clocks.
3491         * sysdeps/unix/clock_settime.c: Add support for platform-specific
3492         setting of CPU clocks.
3494 2006-06-23  Paul Eggert  <eggert@cs.ucla.edu>
3496         [BZ #2841]
3497         * sysdeps/generic/stdint.h (UINT8_C, UINT16_C): Don't append 'U',
3498         since C99 requires the result to promote to 'int' when uint_least8_t
3499         and uint_least16_t promote to 'int'.
3501 2006-08-12  Ulrich Drepper  <drepper@redhat.com>
3503         [BZ #3013]
3504         * locale/programs/ld-ctype.c (ctype_output): Adjust alignments, fix
3505         lenght of one output field, correct bitmask creation.
3506         * locale/programs/ld-time.c: Add alignment.
3508         [BZ #2997]
3509         * misc/error.c: Add space between program name and message if file
3510         name is missing.
3512 2006-08-03  Eric Blake  <ebb9@byu.net>
3514         [BZ #2998]
3515         * misc/error.c (error_tail) [_LIBC]: Avoid invalid free.
3517 2006-08-09  Ulrich Drepper  <drepper@redhat.com>
3519         * malloc/memusagestat.c: Silence warnings.
3521         * malloc/malloc.c: Dynamically size mmap treshold if the program
3522         frees mmaped blocks.
3523         Patch by Valerie Henson and Arjan van de Ven.
3525 2006-08-08  Jakub Jelinek  <jakub@redhat.com>
3527         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_DIRECT): Protect with
3528         __USE_GNU.
3530         * stdlib/strtol_l.c (__strtol_ul_max_tab, __strtol_ul_rem_tab,
3531         __strtol_ull_max_tab, __strtol_ull_rem_tab): Declare.
3532         (DEF): Don't put the var into .gnu.linkonce.r.* section.
3533         Only provide var definitions in strtol_l (or for *ull*
3534         in strtoll_l).
3536         * stdio-common/bug16.c (tests): New array.
3537         (do_tests): Allow the first hexadecimal digit
3538         to be 1, 2, 4 or 8.  Do 3 additional tests.
3540         * sysdeps/s390/fpu/libm-test-ulps: Update.
3542         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c (fchownat): Use
3543         fchownat syscall if available.
3544         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Likewise.
3545         * sysdeps/unix/sysv/linux/sh/fchownat.c (fchownat): Likewise.
3546         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Likewise.
3548 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
3550         * nis/nis_xdr.c: Avoid some function calls.
3552 2006-08-07  Jakub Jelinek  <jakub@redhat.com>
3553             Ulrich Drepper  <drepper@redhat.com>
3555         * nis/nis_call.c (rec_dirsearch) [case LOWER_NAME]: Don't take
3556         short cut if only one name component is stripped away.
3558 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
3560         * nis/nis_call.c: Minor cleanups throughout.
3561         (rec_dirsearch) [case HIGHER_NAME]: Correctly size ndomain array.
3562         (first_shoot): Add search_parent_first parameter.  Only if it is set
3563         search parent server first.
3564         If directory for table found through cold start cache is not the same
3565         as referenced in the cache, don't use it.
3566         (__nisfind_server): Take additional parameter.  Pass it on to
3567         first_shoot.
3568         (__prepare_niscall): Adjust __nisfind_server call.
3569         * nis/rpcsvc/nislib.h: Adjust __nisfind_server prototype.
3570         * nis/nis_table.c: Adjust __nisfind_server call.
3571         * nis/nis_lookup.c: Likewise.
3572         (nis_lookup): Don't loop endlessly if name is reduced to ".".
3574 2006-08-03  Ulrich Drepper  <drepper@redhat.com>
3576         [BZ #2182]
3577         * math/s_cacosh.c: Return values from positive branch.
3578         * math/s_cacoshf.c: Likewise.
3579         * math/s_cacoshl.c: Likewise.
3581         [BZ #2883]
3582         * sysvipc/sys/msg.h: Change return value to ssize_t.
3583         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
3584         * sysvipc/msgrcv.c: Likewise.
3585         * include/sys/msg.h: Likewise.
3587         * grp/initgroups.c (internal_getgrouplist): Remove unnecessary
3588         test introduced in patch for bz #661.
3589         (getgrouplist): Simplify code a bit.  Don't allocate one additional
3590         element for NEWGROUPS.
3592         [BZ #2908]
3593         * stdio-common/printf_fphex.c (__printf_fphex): When rounding up
3594         'f', use '1' as leading digit not '\1'.
3595         * stdio-common/Makefile (tests): Add bug16.
3596         * stdio-common/bug16.c: New file.
3598         [BZ #2914]
3599         * sysdeps/unix/sysv/linux/gethostid.c: Don't define OLD_HOSTIDFILE
3600         and don't try to open it.  The patch introducing the macro
3601         contained a bug and used the same file name as the new file
3602         instead of using /var/adm/hostid.  Nobody complaint so I'm taking
3603         this out completely.
3605         [BZ #2926]
3606         * assert/assert.h: Move cast to void inside ?: to quiet gcc.
3607         Patch by Jerry James <Jerry.James@usu.edu>.
3609         * rt/Makefile (tests): Add tst-clock2.
3610         * rt/tst-clock2.c: New file.
3612         [BZ #2978]
3613         * resolv/gai_notify.c (__gai_notify_only): Copy memory for thread
3614         function and its parameters and pass it to new thread.
3615         (__gai_notify): Add support for alternative waiting for completion.
3616         * resolv/gai_suspend.c (gai_suspend): Add support for alternative
3617         waiting for completion.
3618         * resolv/getaddrinfo_a.c: Likewise.
3619         * resolv/gai_misc.h (struct waitlist): Don't add cond if alternative
3620         waiting for completion is used.
3621         * resolv/gai_misc.c: Allow overwriting code to start helper thread.
3622         * resolv/gai_cancel.c: Include <gai_misc.h> not "gai_misc.h".
3623         * resolv/gai_error.c: Likewise.
3624         * resolv/gai_sigqueue.c: Likewise.
3626 2006-08-02  Thomas Schwinge  <tschwinge@gnu.org>
3628         * hurd/getdport.c (__getdport): Don't return EBADF; instead set
3629         errno to EBADF and return MACH_PORT_NULL.
3631 2006-06-23  Joseph Myers  <joseph@codesourcery.com>
3633         [BZ #2980]
3634         * posix/Makefile (CFLAGS-waitid.c): Add -fasynchronous-unwind-tables.
3636 2006-08-02  Ulrich Drepper  <drepper@redhat.com>
3638         * elf/dl-addr.c (_dl_addr): If GNU-style hash tables are present,
3639         walk them instead of the symbol table.
3641 2006-08-01  Ulrich Drepper  <drepper@redhat.com>
3643         [BZ #2098]
3644         * nscd/initgrcache.c (addinitgroupsX): Judge successful lookups by
3645         status of NSS calls, not the number of returned entries.
3647         * sysdeps/unix/sysv/linux/syscalls.list: Remove add_key,
3648         request_key, keyctl.
3650 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
3652         * sysdeps/unix/sysv/linux/dl-osinfo.h: Remove unnecessary include.
3654 2006-07-16  Jeff Bailey  <jbailey@ubuntu.com>
3656         * elf/tst-auditmod1.c: Fix typo in #error.
3658 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
3660         * elf/tst-auditmod1.c: Remove code for unsupported architectures.
3662         * iconvdata/run-iconv-test.sh: Run cmp in C locale.
3664 2006-07-20  Adam Nemet  <anemet@caviumnetworks.com>
3666         * stdlib/test-canon.c (do_test): Close fd before unlinking file so
3667         that the directory is empty even on non-POSIX filesystems.
3669 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
3671         * elf/dl-open.c (dl_open_worker): Add branch prediction.
3673         * nis/nss_compat/compat-grp.c: Avoid unnecessary setgrent calls into
3674         the backend NSS module.  If backend setgrent call failed, don't have
3675         internal_setgrent fail.  Just remember this until it is needed.
3676         * nis/nss_compat/compat-pwd.c: Likewise.
3677         * nis/nss_compat/compat-spwd.c: Likewise.
3679 2006-07-30  Roland McGrath  <roland@redhat.com>
3681         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: File removed.
3682         * sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: File removed.
3683         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: File removed.
3684         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: File removed.
3686         * sysdeps/unix/sysv/linux/not-cancel.h (pause_not_cancel): New macro.
3687         (nanosleep_not_cancel): New macro.
3688         (sigsuspend_not_cancel): new macro.
3689         * sysdeps/unix/sysv/linux/sigsuspend.c [__ASSUME_REALTIME_SIGNALS]
3690         (do_sigsuspend): Define as inline.
3691         (__sigsuspend): Always use do_sigsuspend.
3692         [! NO_CANCELLATION] (__sigsuspend_nocancel): New function.
3693         * include/signal.h: Declare __sigsuspend_nocancel.
3694         * sysdeps/posix/pause.c
3695         [! NO_CANCELLATION] (__pause_nocancel): New function.
3697         * include/unistd.h (__pause_nocancel): Add attribute_hidden.
3698         * include/time.h (__nanosleep_nocancel): Likewise.
3700 2006-07-30  Ulrich Drepper  <drepper@redhat.com>
3702         * locale/programs/localedef.c (add_to_readlist): Rename local
3703         variables to avoid confusion.
3705         * locale/programs/charmap.c (charmap_read): Emit error message if
3706         charmap couldn't be found or read.
3708 2006-07-28  Ulrich Drepper  <drepper@redhat.com>
3710         * sysdeps/unix/sysv/linux/kernel-features.h: Define
3711         __ASSUME_FUTEX_LOCK_PI.
3712         * include/time.h: Declare __nanosleep_nocancel.
3713         * include/unistd.h: Declare __pause_nocancel.
3715         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Use this instead of
3716         LDFLAGS.  Add -lgcc_eh and libc_nonshared (again) to make sure we
3717         get the __stack_chk_fail_local definition when it's needed.
3719 2006-07-26  Ulrich Drepper  <drepper@redhat.com>
3721         * dlfcn/Makefile: Add rules to build and run bug-atexit3.
3722         * dlfcn/bug-atexit3.c: New file.
3723         * dlfcn/bug-atexit3-lib.cc: New file.
3725         * dlfcn/dlmopen.c (dlmopen_doit): Don't allow RTLD_GLOBAL to be
3726         used when the namespace is not the base namespace.
3728 2006-07-26  Gavin Romig-Koch  <gavin@redhat.com>
3730         * stdlib/cxa_atexit.c (__new_exitfn_called): New variable.
3731         (__new_exitfn): Bump it in every successful call.
3732         * stdlib/cxa_finalize.c (__cxa_finalize): If destructor registered
3733         more exit handlers, call them right away.
3734         * stdlib/exit.h: Declare __new_exitfn_called.
3736 2006-07-25  Ulrich Drepper  <drepper@redhat.com>
3738         * stdlib/cxa_finalize.c (__cxa_finalize): Fix race condition when
3739         calling registered handler.
3741         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Fix comment.
3742         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
3743         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
3744         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
3745         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
3746         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
3747         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
3748         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
3750 2006-07-10  Ulrich Drepper  <drepper@redhat.com>
3752         * elf/dl-lookup.c (dl_new_hash): New functions.
3753         (_dl_lookup_symbol_x): Rename hash to old_hash and don't compute
3754         value here.  Compute new-style hash value.  Pass new hash value
3755         and reference to variable with the old value to do_lookup_x.
3756         (_dl_setup_hash): If DT_GNU_HASH is defined, use it and not
3757         old-style hash table.
3758         (_dl_debug_bindings): Pass new hash value and reference to variable
3759         with the old value to do_lookup_x.
3760         * elf/do-lookup.h (do_lookup_x): Accept additional parameter with
3761         new-style hash value and change old-style hash value parameter to
3762         be a reference.  Reoganize functions to determine whether
3763         new-style hash table is available.  Only fall back on old-style
3764         table.  If old-style hash value is needed, compute it here.
3765         * elf/dynamic-link.h (elf_get_dynamic_info): Relocate DT_GNU_HASH
3766         entry.
3767         * elf/elf.h: Define SHT_GNU_HASH, DT_GNU_HASH, DT_TLSDEC_PLT,
3768         DT_TLSDEC_GOT.  Adjust DT_ADDRNUM.
3769         * include/link.h (struct link_map): Add l_gnu_bitmask_idxbits,
3770         l_gnu_shift, l_gnu_bitmask, l_gnu_buckets and l_gnu_chain_zero.
3771         * Makeconfig: If linker supports --hash-style option add it to all
3772         linker command lines to build DSOs.
3773         * config.make.in: Define have-hash-style.
3774         * configure.in: Test whether linker supports --hash-style option.
3776         * elf/dl-misc.c (_dl_name_match_p): Make MAP parameter const.
3777         * sysdeps/generic/ldsodefs.h: Adjust prototype.
3779 2006-06-27  Ulrich Drepper  <drepper@redhat.com>
3781         * elf/dl-load.c (open_path): Fix test to determine whether DSO is
3782         auditing.
3784         * elf/dl-load.c (_dl_map_object): Try harder to avoid looking at
3785         RPATH of main map twice.
3787 2006-06-22  Ulrich Drepper  <drepper@redhat.com>
3789         * intl/dcigettext.c (DCIGETTEXT): If _nl_find_msg returns -1 don't
3790         look further, return original strings.
3791         (_nl_find_msg): Do not return found translation if the conversion
3792         failed.  Either signal the string is unusable or that something went
3793         wrong and the original should be used.
3795 2006-06-21  Ulrich Drepper  <drepper@redhat.com>
3797         * string/_strerror.c (__strerror_r): Add __builtin_expect.
3799 2006-06-14  Jakub Jelinek  <jakub@redhat.com>
3801         [BZ #2766]
3802         * misc/insremque.c (insque): Handle prev == NULL.
3803         * misc/Makefile (tests): Add tst-insremque.
3804         * misc/tst-insremque.c: New test.
3806 2006-06-17  Ulrich Drepper  <drepper@redhat.com>
3808         [BZ #2792]
3809         * elf/dl-deps.c (expand_dst): Rename __cnt variable to not
3810         conflict with DL_DST_REQUIRED.
3812 2006-06-16  Ulrich Drepper  <drepper@redhat.com>
3814         * nis/nis_subr.c (nis_getnames): Fix the implementation to better
3815         match what Solaris does.
3817 2006-06-04  Ulrich Drepper  <drepper@redhat.com>
3819         * sysdeps/posix/spawni.c (__spawni): Use local_seteuid and
3820         local_setegid instead of seteuid and setegid.
3821         * sysdeps/generic/local-setxid.h: New file.
3822         * sysdeps/unix/sysv/linux/local-setxid.h: New file.
3824         * sysdeps/posix/spawni.c (__spawni): Use non-cancelable interfaces.
3826         * string/Makefile (tests): Add bug-envz1.
3827         * string/bug-envz1.c: New file.
3829 2006-06-02  Jakub Jelinek  <jakub@redhat.com>
3831         * posix/regex_internal.c (re_string_skip_chars): If no character has
3832         been converted at all, set *last_wc to WEOF.  If mbrtowc failed, set wc
3833         to the byte which couldn't be converted.
3834         (re_string_reconstruct): Don't clear valid_raw_len before calling
3835         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
3836         tip_context using re_string_context_at.
3837         * posix/Makefile: Add rules to build and run bug-regex25 test.
3838         * posix/bug-regex25.c: New test.
3840 2006-06-02  Ryan S. Arnold  <rsa@us.ibm.com>
3842         [BZ #2703]
3843         * string/envz.c (envz_strip): Correct erroneously reversed src
3844         and dest parameters to memmove() invocation.
3846 2006-05-30  Jakub Jelinek  <jakub@redhat.com>
3848         * nscd/nscd.h (prune_cache): Add fd argument to prototype.
3849         * nscd/nscd.c (parse_opt): Read response from INVALIDATE request
3850         to make sure the database has been already invalidated.
3851         * nscd/cache.c (prune_cache): Add fd argument.  Write response to fd
3852         after the cache has been invalidated.  Use pthread_mutex_lock rather
3853         than pthread_mutex_trylock if fd != -1.
3854         * nscd/connections.c (invalidate_cache): Add fd argument, write
3855         response to fd if not calling prune_cache, pass fd to prune_cache.
3856         (handle_request): Adjust invalidate_cache caller.
3857         (nscd_run): Pass -1 as fd to prune_cache.
3859 2006-05-30  Ulrich Drepper  <drepper@redhat.com>
3861         * sysdeps/posix/getaddrinfo.c (gaiconf_init): Initialize bits in
3862         the correct place.
3864 2006-05-29  Ulrich Drepper  <drepper@redhat.com>
3866         * nscd/nscd.h (struct database_dyn): Add prunelock field.
3867         * nscd/cache.c (prune_cache): Take prunelock before starting the
3868         work.  Just return in case it is already taken.
3869         * nscd/connections.c (dbs): Initialize .prunelock.
3871 2006-05-25  Ulrich Drepper  <drepper@redhat.com>
3873         * nis/nis_removemember.c (nis_removemember): Avoid unnecessary
3874         copying.  No need to allocate new array for group members.  Just
3875         move the pointers and update the size.
3877         * nis/nis_addmember.c (nis_addmember): Avoid unnecessary copying.
3878         Avoid memory leak in case realloc fails.  Simplification for
3879         better code generation.
3881         Avoid deprecation warning because of libc_hidden_proto for
3882         inet6_option_alloc.
3883         * inet/inet6_option.c (option_alloc): Renamed from
3884         inet6_option_alloc.  Made static.
3885         (inet6_option_alloc): Now a simple wrapper around option_alloc.
3886         (inet6_option_append): Call option_alloc.
3887         * include/netinet/in.h: Remove libc_hidden_proto for
3888         inet6_option_alloc.
3890         * nis/nis_callback.c (__nis_create_callback): Always call xdr_free
3891         for cleanup when cb!=NULL [Coverity CID 233].
3893 2006-05-24  Ulrich Drepper  <drepper@redhat.com>
3895         [BZ #2693]
3896         * inet/Makefile (routines): Add inet6_opt and inet6_rth.
3897         * inet/Versions (libc, GLIBC_2.5): Add inet6_opt_init,
3898         inet6_opt_append, inet6_opt_finish, inet6_opt_set_val, inet6_opt_next,
3899         inet6_opt_find, inet6_opt_get_val, inet6_rth_space, inet6_rth_init,
3900         inet6_rth_add, inet6_rth_reverse, inet6_rth_segments,
3901         and inet6_rth_getaddr.
3902         * inet/netinet/ip6.h (struct ip6_rthdr0): Make ip6r0_addr a flexible
3903         array.
3904         * inet/netinet/in.h (struct ip6_mtuinfo): Define.
3905         Mark inet6_option_* interfaces as deprecated.
3906         Declare inet6_opt_init, inet6_opt_append, inet6_opt_finish,
3907         inet6_opt_set_val, inet6_opt_next, inet6_opt_find, inet6_opt_get_val,
3908         inet6_rth_space, inet6_rth_init, inet6_rth_add, inet6_rth_reverse,
3909         inet6_rth_segments, and inet6_rth_getaddr.
3910         * inet/inet6_opt.c: New file.
3911         * inet/inet6_rth.c: New file.
3913         * inet/netinet/icmp6.h: Pretty printing.
3915         [BZ #2683]
3916         * elf/dl-addr.c (_dl_addr): Don't match undefined references.
3918 2006-05-23  Ulrich Drepper  <drepper@redhat.com>
3920         * nis/nis_lookup.c (nis_lookup): Use __prepare_niscall instead of
3921         doing it all here.  When server does not know the answer do not
3922         fail immediate, try parent first.
3924         * nis/nis_domain_of_r.c (nis_domain_of_r): Add missing buffer
3925         overflow test.
3927 2006-05-20  Ulrich Drepper  <drepper@redhat.com>
3929         * nis/nis_call.c (__prepare_niscall): New function.  Split out
3930         from __do_niscall.
3931         * nis/nis_table.c (__create_ib_request): Renamed from create_ib_request
3932         and exported.
3933         (__follow_path): New function.  Split out from nis_list.
3934         * nis/nis_xdr.h: Add libnsl_hidden_proto for _xdr_ib_request and
3935         _xdr_nis_result.
3936         * nis/nis_xdr.c: Add libnsl_hidden_def for _xdr_ib_request and
3937         _xdr_nis_result.
3938         * nis/libnsl.h: Declare __prepare_niscall, __create_ib_request,
3939         and __follow_path.
3940         * nis/Versions: Export __prepare_niscall, __create_ib_request,
3941         __follow_path, __do_niscall3, _xdr_ib_request, and _xdr_nis_result
3942         from libnsl for version GLIBC_PRIVATE.
3943         * nis/nisplus-parser.h: Remove _nss_nisplus_parse_pwent_chk.
3944         Remove entry parameter from _nss_nisplus_parse_pwent and
3945         _nss_nisplus_parse_grent.
3946         * nis/nss_nisplus/nisplus-parser.c: Likewise.
3947         * nis/nss_nisplus/nisplus-pwd.c: Remove support for SETENT_BATCH_READ
3948         again.  Rewrite getpwent handling to not use nis_first_entry and
3949         nis_next_entry.  Roll out own niscall handling.
3950         * nis/nss_nisplus/nisplus-grp.c: Likewise.
3952         * sunrpc/xdr_rec.c: Fix typo in comment.
3954 2006-05-19  Ulrich Drepper  <drepper@redhat.com>
3956         * nis/nis_call.c (__do_niscall3): Avoid code duplication in error
3957         handling.
3959         * nis/nis_callback.c (internal_nis_do_callback): Don't use malloc
3960         to allocate memory for my_pollfd.  Better initialization of
3961         cb_is_running.  Use TEMP_FAILURE_RETRY.
3963         * malloc/memusage.sh (memusageso): Add quotes.
3964         (memusagestat): Likewise.
3965         * debug/xtrace.sh (pcprofileso): Likewise.
3966         (pcprofiledump): Likewise.
3967         * debug/Makefile ($(objpfx)xtrace): Use $LIB in SLIBDIR
3968         replacement.
3969         * malloc/Makefile ($(objpfx)memusage): Likewise.
3971         * nis/nis_callback.c (__nis_create_callback): Calls to
3972         svcudp_bufcreate and svctcp_create can fail.  Free ->xprt if
3973         asprintf call fails.
3975         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_sendreq): Make sure
3976         no uninitialized memory is passed to sendto.
3978 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
3980         * nis/nis_callback.c (__nis_create_callback): Use asprinf instead
3981         of snprintf+strdup.  Handle OOM.
3982         * nis/nis_callback.c (__nis_create_callback): Allocate cb and
3983         cb->serv together.  Remove now obsolete free calls.
3984         (__nis_destroy_callback): Remove now obsolete free call.
3986 2006-05-18  David Woodhouse  <dwmw2@redhat.com>
3988         * sysdeps/posix/getaddrinfo.c: Add unique labels to the default
3989         RFC3484 precedence table for fec0::/10 and fc00::/7 (site-local
3990         and ULA respectively). Set precedence for IPv4 address to 10 as
3991         defined in RFC3484 for preferring IPv6.
3992         * posix/gai.conf: Update to match the new default tables.
3994 2006-05-18  Jakub Jelinek  <jakub@redhat.com>
3996         * nis/nss_compat/compat-pwd.c (internal_setpwent): If nss_set*ent
3997         returned NSS_STATUS_UNAVAIL, still return NSS_STATUS_SUCCESS.
3998         * nis/nss_compat/compat-spwd.c (internal_setspent): Likewise.
3999         * nis/nss_compat/compat-grp.c (internal_setgrent): Likewise.
4001         * nis/nss_compat/compat-initgroups.c (nss_setgrent, nss_endgrent):
4002         Removed.
4003         (init_nss_interface): Remove initialization of these variables.
4005 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
4007         * nis/nis_call.c (rec_dirsearch): Little optimization: pull
4008         nis_free_directory forward to avoid duplication.
4010 2006-05-17  Ulrich Drepper  <drepper@redhat.com>
4012         * nis/nis_call.c (rec_dirsearch): Handle __nis_finddirectory and
4013         rec_dirsearch returning NULL.
4014         (first_shoot): Handle __nis_finddirectory returning NULL.
4015         (__nisfind_server): Fix leak when rec_dirsearch returns NULL.
4017         * sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOSE, IN_MOVE,
4018         IN_ONLYDIR, IN_DONT_FOLLOW, and IN_MASK_ADD.
4020 2006-05-17  Jakub Jelinek  <jakub@redhat.com>
4022         * sunrpc/key_call.c (getkeyserv_handle): Call auth_destroy if
4023         pid changed.
4025 2006-05-15  Ulrich Drepper  <drepper@redhat.com>
4027         * include/rpc/pmap_prot.h: Mark all functions as hidden.
4029         * nscd/nscd_initgroups.c: Mark __gr_map_handle as hidden.
4030         * nscd/nscd_getgr_r.c: Likewise.
4032         * include/rpc/pmap_rmt.h: Mark all functions as hidden.
4034         * nscd/nscd_getai.c (__hst_map_handle): Mark as hidden.
4035         * nscd/nscd_gethst_r.c (__hst_map_handle): Likewise.
4037         * stdlib/longlong.h (__clz_tab): Mark as hidden.
4039         * iconv/gconv_int.h: Mark __gconv_lock as hidden.
4041         * include/rpc/key_prot.h: Mark all _internal functions as hidden.
4043         * include/rpc/auth.h: Mark xdr_des_block_internal and
4044         xdr_opaque_auth_internal as hidden.
4046         * sysdeps/unix/sysv/linux/getdents.c: Mark __have_no_getdents64 as
4047         hidden.
4049         * include/rpc/xdr.h: Mark all _internal functions as hidden.
4051         * misc/getusershell.c (okshells): Don't use static initializers,
4052         do it dynamically.
4054         * stdlib/fmtmsg.c (keywords): Change type of len element to
4055         uint32_t to not waste space on 64bit machines.
4057         * locale/setlocale.c: Change _nl_category_names into a string.
4058         Add new _nl_category_name_idxs.  Change all users.
4059         * locale/localeinfo.h: Adjust declaration of _nl_category_names.
4060         Declare _nl_category_name_idxs.
4061         * locale/findlocale.c: Adjust for _nl_category_names change.
4062         * locale/loadlocale.c: Likewise.
4063         * locale/newlocale.c: Likewise.
4064         * intl/dcigettext.c: Likewise.
4066         * iconv/gconv_conf.c (add_alias): Move actual alias handling to...
4067         (add_alias2): ...here.  New function.
4068         (__gconv_read_conf): Simplify builtin alias handling.
4069         (builtin_aliases): Convert to string to avoid relocations.
4070         * iconv/gconv_builtin.h: Add comment about correct formatting.
4072 2006-05-15  Jakub Jelinek  <jakub@redhat.com>
4074         * resolv/res_debug.c (loc_ntoa): Make error const.
4076 2006-05-14  Andreas Schwab  <schwab@suse.de>
4078         * math/complex.h [__LDBL_COMPAT]: Use __REDIRECT_NTH.
4080 2006-05-12  Jakub Jelinek  <jakub@redhat.com>
4082         * sysdeps/unix/sysv/linux/sched_getaffinity.c: Include sys/param.h.
4083         (__sched_getaffinity_new): Don't crash if cpusetsize is smaller than
4084         sizeof (cpu_set_t).
4086 2006-05-11  Ulrich Drepper  <drepper@redhat.com>
4088         * resolv/res_debug.c (loc_ntoa): Define error as array, not pointer.
4090         * include/arpa/nameser.h: Declare _ns_flagdata as hidden.
4092         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_master.
4093         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_master.
4095         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypbind_resp.
4096         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypbind_resp.
4098         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_cback_data.
4099         * include/rpcsvc/nis_callback.h: Add libnsl_hidden_proto for
4100         xdr_cback_data.
4102         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypupdate_args.
4103         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
4104         xdr_ypupdate_args.
4106         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_order.
4107         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_order.
4109         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_maplist.
4110         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_maplist.
4112         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_obj_p.
4113         * include/rpcsvc/nis_callback.h: New file.
4115         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_val.
4116         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_val.
4118         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
4119         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
4121         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypmaplist.
4122         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypmaplist.
4124         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
4125         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
4127         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypdelete_args.
4128         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
4129         xdr_ypdelete_args.
4131         * nis/nis_xdr.h: Mark all functions as hidden.  Remove
4132         __BEGIN_DECLS and __END_DECLS, the header is not installed.
4134         * nis/nis_error.c: Remove table of strings.  Use position
4135         independent mechanism.
4136         * nis/nis_error.h: New file.
4138 2006-05-11  Jakub Jelinek  <jakub@redhat.com>
4140         * locale/programs/ld-time.c (time_finish): If wide era name or
4141         format aren't provided, set both wname and wformat to L"".
4143 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
4145         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Only store
4146         results if the call was succesful.
4148         * nis/nss-nis.h: Mark __yperr2nss_tab and __yperr2nss_count as hidden.
4150         * nis/nss-nisplus.h: Mark __niserr2nss_tab and __niserr2nss_count
4151         as hidden.
4153 2006-05-10  Jakub Jelinek  <jakub@redhat.com>
4155         * misc/sys/queue.h: Remove uses of all QUEUEDEBUG_* macros.
4157 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
4159         * posix/wordexp.c (parse_glob): No need to check ifs for NULL, the
4160         caller makes sure this is not the case.
4161         (wordexp): Simplify ifs_white creation.  [Coverity CID 231]
4163 2006-05-09  Ulrich Drepper  <drepper@redhat.com>
4165         * posix/wordexp.c: Remove numerous NULL pointer tests before FREE
4166         calls.
4168         * io/ftw.c (open_dir_stream): Return right away if REALLOC fails.
4169         [Coverity CID 229, 230]
4171         * argp/argp-help.c (hol_entry_help): Handle STATE==NULL in ARG and
4172         DGETTEXT calls.
4173         (hol_help): Likewise.  [Coverity CID 226, 227]
4175         * string/argz-replace.c (__argz_replace): Unconditionally call
4176         free on SRC.  [Coverity CID 225]
4178         * nis/nis_creategroup.c (nis_creategroup): No need to duplicate
4179         the return value of __nis_default_owner and __nis_default_group,
4180         it has been especially allocated.  [Coverity CID 224]
4182         * nis/nis_defaults.c (searchXYX): New functions.  Used by both
4183         searchgroup and searchowner.  Significantly simplified.
4184         (__nis_default_owner): Remove duplication.  Do not locally copy the
4185         string before duplicating it.
4186         (__nis_default_group): Likewise.
4188         * nis/nis_lookup.c (nis_lookup): After calling nis_free_directory,
4189         we must clear the variable before calling __nisfind_server.
4191         * nis/nis_lookup.c (nis_lookup): Always free memory allocated with
4192         nis_getnames.  [Coverity CID 223]
4194         * locale/programs/locfile.c (locfile_read): Use alloca instead of
4195         xmalloc to allocate local repertoire name.  [Coverity CID 222]
4197         * iconv/iconv_charmap.c (use_to_charmap): No need to dynamically
4198         allocate memory for the input to add_bytes.  [Coverity CID 221]
4200         * posix/wordexp.c (w_addword): Free word if realloc fails and it
4201         was allocated here.  [Coverity CID 219, 220]
4203         * posix/getconf.c (print_all): Free confstr data after printing.
4204         [Coverity CID 218]
4206         * sysdeps/posix/getaddrinfo.c (gaih_inet): Free canon string if
4207         list allocation fails.  [Coverity CID 215]
4209         * nss/nsswitch.c (__nss_configure_lookup): Fix loop end condition.
4210         [Coverity CID 213]
4212         * argp/argp-help.c (hol_entry_cmp): Don't call canon_doc_option if
4213         string is NULL.  [Coverity CID 212]
4214         * argp/Makefile: Add rules to build and run bug-argp1.
4215         * argp/bug-argp1.c: New file.
4217         * io/ftw.c (ftw_dir): Use __rawmemchr instead of strchr to find
4218         end of string.
4219         * stdlib/canonicalize.c (__realpath): Likewise.
4221         * locale/programs/ld-time.c (time_finish): Don't dereference NULL
4222         pointer.  [Coverity CID 206]
4224         * elf/dl-dst.h (DL_DST_REQUIRED): Be prepared for missing link map
4225         in statically linked code.
4226         * elf/dl-load.c (_dl_dst_substitute): When replacing ORIGIN in
4227         statically built code, be prepared to have no link map.
4228         [Coverity CID 205]
4230         * argp/argp-help.c (fill_in_uparams): Handle STATE==NULL in
4231         dgettext calls. [Coverity CID 204]
4233         * argp/argp-help.c (struct uparams): Remove valid member.  Change
4234         the one user.
4235         (uparam_names): Reduce size.  Avoid relative relocations.
4236         Moved to read-only segment.
4237         (fill_in_uparams): Update for new layout.
4239         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Parameter can be
4240         assumed to always be != NULL. [Coverity CID 202]
4242         * argp/argp-help.c (hol_entry_help): Remove some dead code
4243         [Coverity CID 200].
4245         * nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Optimize
4246         away a few more unconditional yperr2nss calls.
4247         (_nss_nis_getservbyname_r): Likewise.
4249 2006-05-06  Ulrich Drepper  <drepper@redhat.com>
4251         * sysdeps/generic/ldsodefs.h: Remove support for non-core
4252         architectures.
4254         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Make sure
4255         that unused memory passed to sendto is nevertheless initialized.
4257         [BZ #2499]
4258         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Avoid
4259         possibly unaligned memory accesses.
4261         * include/arpa/nameser.h: Also optimize NS_PUT16 and NS_PUT32.
4262         * resolv/res_mkquery.c: Use NS_PUT16 and NS_PUT32 instead of __putshort
4263         and __putlong respectively.  Correct buffer overflow check for
4264         NS_NOTIFY_OP.
4266         * resolv/res_send.c (send_vc): Use ns_put16 instead of putshort.
4268         * resolv/res_send.c (res_queriesmatch): Fix typo in comment.
4269         (send_dg): Rewrite error handling to be more compact and avoid
4270         double recomputation of timeouts.  Pass MSG_NOSIGNAL to send.
4272         * include/arpa/nameser.h: Add optimizations for NS_GET16 and NS_GET32.
4274         * resolv/res_send.c (res_nameinquery): Use NS_GET16 directly
4275         instead of ns_get16.
4276         (res_queriesmatch): Likewise.  Minor optimization.
4278         [BZ #2499]
4279         * resolv/res_query.c (__libc_res_nquery): If answerp != NULL,
4280         __libc_res_nsend might reallocate the buffer for the answer.  In
4281         this case we have to reload the HP pointer.
4283 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
4285         * stdio-common/vfscanf.c (memory_error): Remove definition.  Add
4286         some branch prediction hints.
4288         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Define SPLICE_F_*.
4289         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
4290         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
4291         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
4292         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
4293         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
4294         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
4295         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
4297 2006-05-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4299         * sysdeps/s390/s390-32/elf/start.S: Replace pc relative relocation
4300         by a GOT relocation to make Scrt1.o position independent.
4301         * sysdeps/s390/s390-64/elf/start.S: Likewise.
4303         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S: Add support for
4304         six system call parameters.
4305         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
4307 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
4309         * sunrpc/svcauth_des.c (cache_init): Use calloc instead of
4310         malloc&bzero.
4312         * sunrpc/svc_udp.c (BZERO): Remove definition.
4313         (CALLOC): Define.
4314         (svc_enablecache): Use CALLOC instead of ALLOC&BZERO.
4316         * sunrpc/des_impl.c: Remove ALT_ECB support.  We never used it.
4317         (des_SPtrans): Use uint32_t type.
4318         (des_skb): Likewise.
4320         * sunrpc/xdr_ref.c (xdr_reference): Use calloc instead of malloc&bzero.
4322 2006-05-05  Jakub Jelinek  <jakub@redhat.com>
4324         [BZ #2509]
4325         * stdio-common/tst-printf.sh: Adjust for tst-printf.c change even
4326         on 32-bit arches.
4328 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
4330         * locale/programs/ld-address.c (address_finish): Fix one more
4331         place where the iso639 array might be accessed beyond the limits.
4333 2006-05-04  Ulrich Drepper  <drepper@redhat.com>
4335         * nis/nis_table.c (nis_list): Avoid clearing res twice before
4336         filling it for the first time.
4338         * nis/nis_table.c (get_tablepath): Renamed from __get_tablepath.
4339         Adjust all callers.
4340         Free res object content before returning.
4342         * sunrpc/xdr_array.c (xdr_array): Use calloc instead of malloc&bzero.
4344         * sunrpc/key_call.c (__rpc_thread_key_cleanup): Also free
4345         client->cl_auth.
4347         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Don't skip entire
4348         cleanup for initial thread, just the free call on TVP.
4350         * nscd/gai.c (__getline): Define.
4353 See ChangeLog.16 for earlier changes.