[BZ #2526, BZ #3138, BZ #3143]
[platform/upstream/glibc.git] / ChangeLog
1 2006-09-12  Jakub Jelinek  <jakub@redhat.com>
2
3         [BZ #2526]
4         * README.libm: Fix a thinko in sqrt algorithm description.
5
6         [BZ #3143]
7         * manual/string.texi (argz_delete): Fix prototype.
8         Patch by <alpt@freaknet.org>.
9
10 2006-08-26  Joseph Myers  <joseph@codesourcery.com>
11
12         [BZ #3138]
13         * io/test-lfs.c (do_prepare): Give name_len type size_t.
14         * io/tst-fcntl.c (do_prepare): Likewise.
15         * posix/tst-exec.c (do_prepare): Likewise.
16         * posix/tst-preadwrite.c (do_prepare): Likewise.
17         * posix/tst-spawn.c (do_prepare): Likewise.
18         * posix/tst-truncate.c (do_prepare): Likewise.
19         * rt/tst-aio.c (do_prepare): Likewise.
20         * rt/tst-aio64.c (do_prepare): Likewise.
21         * stdlib/test-canon2.c (do_prepare): Give test_dir_len type
22         size_t.
23
24 2006-09-09  Ulrich Drepper  <drepper@redhat.com>
25
26         [BZ #2821]
27         * time/mktime.c (guess_time_tm): Fix overflow detection.
28         * time/Makefile (tests): Add bug-mktime1.
29         * time/bug-mktime1.c: New file.
30
31         [BZ #3189, #3188]
32         * misc/sys/mman.h (remap_file_pages): Make available for _GNU_SOURCE.
33         (mremap): Likewise.
34
35 2006-09-07  Jakub Jelinek  <jakub@redhat.com>
36
37         [BZ #1006]
38         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela):
39         Ensure relocation doesn't clobber any bits outside of the
40         immediate field for R_SPARC_TLS_LE_HIX22, R_SPARC_WDISP30,
41         R_SPARC_HI22 and R_SPARC_H44.
42
43         [BZ #2775]
44         * malloc/malloc.c (sYSMALLOc): Only call grow_heap if
45         (long) (MINSIZE + nb - old_size) is positive.
46
47         * malloc/arena.c (grow_heap): When growing bail even if new_size
48         is negative.
49
50         [BZ #3155]
51         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S (__lrint): Don't access
52         stack below r1.
53
54 2006-09-06  Jakub Jelinek  <jakub@redhat.com>
55
56         * posix/regex_internal.c (re_string_reconstruct): Handle
57         offset < pstr->valid_raw_len && pstr->offsets_needed case.
58         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
59         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
60         re_string_context_at.
61         * posix/Makefile: Add rules to build and run bug-regex26 test.
62         * posix/bug-regex26.c: New test.
63
64         * locale/programs/ld-collate.c (collate_read): Goto sym_equiv_free
65         rather than col_sym_free.  Move seqp declaration earlier.
66
67         * resolv/gai_suspend.c (gai_suspend): Make sure result is initialized.
68
69 2006-09-05  Jakub Jelinek  <jakub@redhat.com>
70
71         * nscd/initgrcache.c (addinitgroupsX): Move any_success
72         decl before first goto out.
73
74 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
75
76         * Makerules (shlib.lds): If have-hash-style, put .hash section
77         at the end of the RO segment.
78
79 2006-09-04  Ulrich Drepper  <drepper@redhat.com>
80
81         * elf/do-lookup.h (do_lookup_x): Initialize symidx in case the new
82         style hash table format is used.
83
84 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
85
86         * resolv/res_mkquery.c (res_nmkquery): Set hp->id to statp->id after
87         randomization rather than before.
88         * resolv/res_init.c (res_randomid): Don't call gettimeofday here.
89
90 2006-08-31  Jakub Jelinek  <jakub@redhat.com>
91
92         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Add ld.so.
93
94         * malloc/malloc.c (_int_malloc): Use full list insert and not
95         shortcut which assumes the list is empty for large requests
96         too.
97
98         * elf/tst-addr1.c (do_test): Allow i.dli_sname "_IO_printf".
99
100 2006-08-30  Jakub Jelinek  <jakub@redhat.com>
101
102         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (splice): Add offin
103         and offout arguments to the prototype.
104         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (splice): Likewise.
105         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (splice): Likewise.
106         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (splice): Likewise.
107         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (splice): Likewise.
108         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (splice): Likewise.
109         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (splice): Likewise.
110         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (splice): Likewise.
111         * sysdeps/unix/sysv/linux/syscalls.list (splice): Adjust args string.
112
113 2006-08-28  Ulrich Drepper  <drepper@redhat.com>
114
115         * elf/dl-load.c (_dl_init_paths): Expand DSTs.
116
117         * elf/dl-open.c (dl_open_worker): Allow $LIB and $PLATFORM in
118         dlopen parameters.
119
120 2006-08-28  Jakub Jelinek  <jakub@redhat.com>
121
122         * inet/getnameinfo.c (getnameinfo): For AF_INET, check errno
123         only if herrno is NETDB_INTERNAL.  Handle errors other than
124         ERANGE outside of the loops, handle TRY_AGAIN.
125
126         * locale/programs/ld-ctype.c (translit_flatten): Issue error
127         if other's ctype category was missing.
128         * locale/programs/ld-collate.c (collate_read): Return if
129         copy_locale's collate category is missing.
130
131 2006-08-27  Ulrich Drepper  <drepper@redhat.com>
132
133         [BZ #2684]
134         * malloc/malloc.c (public_rEALLOc): Try harder by using other
135         arenas if allocation failed.
136         Patch mostly by Jan Edler <jan.edler@indexengines.com>.
137
138 2006-08-26  Ulrich Drepper  <drepper@redhat.com>
139
140         * malloc/malloc.c (bin_at): Rewrite to be more clear and to not
141         waste bins[0..1].
142         (malloc_state): Reduce bins size by 2.
143         (_int_malloc): Fix test for large enough buffer for early termination.
144         When no unsorted block matches perfectly and an exiting block has
145         to be split, use full list insert and not shortcut which assumes
146         the list is empty.
147
148         * locale/programs/ld-ctype.c (ctype_read): Better patch for read
149         failure.
150
151 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
152
153         * locale/programs/ld-ctype.c (ctype_read): If CTYPE is NULL, don't
154         do anything.
155
156         * sysdeps/generic/ldsodefs.h (DL_ADDR_SYM_MATCH): For undefined
157         symbol require exact match (these are PLTs).
158         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
159         (_dl_ppc64_addr_sym_match): Likewise.
160
161         [BZ #2683]
162         * elf/dl-addr.c (_dl_addr): Don't ignore all undefined symbols.
163         If symbol has a value use it.
164         * elf/tst-dladdr1.c: New file.
165         * elf/Makefile: Add rules to build and run tst-addr1.
166
167 2006-08-24  Jakub Jelinek  <jakub@redhat.com>
168
169         * malloc/malloc.c (sYSMALLOc): Avoid infinite loop if MMAP
170         keeps failing and heap growth or new heap creation isn't
171         successful either.
172         * malloc/tst-malloc.c (main): Add new tests.
173
174 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
175
176         [BZ #2734]
177         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use same conditions
178         as in the x86-64 code to use bswap.
179
180 2006-05-21  Joseph S. Myers  <joseph@codesourcery.com>
181
182         [BZ #2680]
183         * posix/unistd.h (getlogin_r): Condition on __USE_POSIX199506, not
184         __USE_UNIX98.
185         * posix/bits/unistd.h: Likewise.
186
187 2006-05-15  Mike Frysinger  <vapier@gentoo.org>
188
189         [BZ #2751]
190         * string/strchr.c: Add cast to avoid warning.
191
192 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
193
194         * malloc/malloc.c (DEFAULT_MMAP_THRESHOLD_MAX): For 32-bit
195         platforms define as 512K.  For 64-bit platforms as 32MB.  The lower
196         limit is needed to avoid the exploding of the address space
197         requirement for secondary heaps.
198         * malloc/arena.c (HEAP_MAX_SIZE): Define using
199         DEFAULT_MMAP_THRESHOLD_MAX if it is defined.
200
201 2006-07-30  Joseph S. Myers  <joseph@codesourcery.com>
202
203         [BZ #3018]
204         * Makerules (depfiles): Handle extra-test-objs the same as
205         extra-objs.
206         (common-mostlyclean): Likewise.
207         * dlfcn/Makefile (extra-objs): Add modules to extra-test-objs
208         instead.
209         * elf/Makefile (extra-objs): Likewise.
210         * stdlib/Makefile (extra-objs): Likewise.
211
212 2006-08-14  Eric Blake  <ebb9@byu.net>
213
214         [BZ #3044]
215         * misc/error.h: Assume C89 or better.
216         * misc/error.c: Likewise.
217
218 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
219
220         [BZ #3040]
221         * sysdeps/unix/sysv/linux/openat.c: Fix compilation if
222         __ASSUME_ATFCTS is defined.
223
224 2006-08-19  Ulrich Drepper  <drepper@redhat.com>
225
226         * malloc/malloc.c (_int_malloc): Limit number of unsorted blocks
227         to sort in each call.
228
229         * nis/nss_nis/nis-service.c (internal_nis_getservent_r): . If map
230         is empty simply return and use next service.
231         * nis/nss_nis/nis-rpc.c (internal_nis_getrpcent_r): Likewise.
232
233         * locale/programs/charmap.c (charmap_read): Add new parameter.  It
234         tells us when not finding a charmap file is an error.
235         * locale/programs/charmap.h: Adjust charmap_read prototype.
236         * iconv/iconv_prog.c (main): Tell charmap_read it's no error if we
237         cannot find a charmap.
238         * locale/programs/localedef.c (main): Adjust charmap_read call.
239
240 2006-08-15  Jakub Jelinek  <jakub@redhat.com>
241
242         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Use
243         sysdeps/posix/pause.c implementation instead.
244
245 2006-08-09  Jakub Jelinek  <jakub@redhat.com>
246
247         * sysdeps/unix/nice.c (nice): Transform EACCES errno from setpriority
248         to EPERM.
249
250 2006-08-13  Andreas Schwab  <schwab@suse.de>
251
252         * sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_runtime_resolve):
253         Don't clobber caller's LRSAVE.
254         (_dl_prof_resolve): Likewise.
255
256 2006-08-14  Ulrich Drepper  <drepper@redhat.com>
257
258         [BZ #1996]
259         * libio/memstream.c (open_memstream): Allocate initial buffer with
260         calloc.
261         * libio/wmemstream.c (open_wmemstream): Likewise.
262         * libio/strops.c: Pretty printing.
263         (_IO_str_overflow): Clear uninitialized part of the new buffer.
264         (enlarge_userbuf): New function.
265         (_IO_str_seekoff): Call it if seek position is larger than current
266         buffer.
267         * libio/wstrops.c: Likewise.
268         * libio/vasprintf.c: Add comment as to why we do not have to use
269         calloc instead of malloc to allocate initial buffer.
270         * libio/Makefile (tests): Add bug-memstream1 and bug-wmemstream1.
271         * libio/bug-memstream1.c: New file.
272         * libio/bug-wmemstream1.c: New file.
273
274 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
275
276         * libio/wstrops.c: Remove dead macro definitions and comments.
277         * libio/strops.c: Likewise.
278
279         [BZ #2764]
280         * login/utmpname.c (__utmpname): Remove unnecessary test.
281
282 2006-06-08  Joseph Myers  <jsm28@gcc.gnu.org>
283
284         [BZ #2832]
285         * math/gen-libm-test.pl (clean_up_number): Do not remove trailing
286         0s from integers.
287
288 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
289
290         [BZ #2987]
291         * sysdeps/unix/sysv/linux/clock_settime.c: Add code to use syscall
292         for CPU clocks.
293         * sysdeps/unix/clock_settime.c: Add support for platform-specific
294         setting of CPU clocks.
295
296 2006-06-23  Paul Eggert  <eggert@cs.ucla.edu>
297
298         [BZ #2841]
299         * sysdeps/generic/stdint.h (UINT8_C, UINT16_C): Don't append 'U',
300         since C99 requires the result to promote to 'int' when uint_least8_t
301         and uint_least16_t promote to 'int'.
302
303 2006-08-12  Ulrich Drepper  <drepper@redhat.com>
304
305         [BZ #3013]
306         * locale/programs/ld-ctype.c (ctype_output): Adjust alignments, fix
307         lenght of one output field, correct bitmask creation.
308         * locale/programs/ld-time.c: Add alignment.
309
310         [BZ #2997]
311         * misc/error.c: Add space between program name and message if file
312         name is missing.
313
314 2006-08-03  Eric Blake  <ebb9@byu.net>
315
316         [BZ #2998]
317         * misc/error.c (error_tail) [_LIBC]: Avoid invalid free.
318
319 2006-08-09  Ulrich Drepper  <drepper@redhat.com>
320
321         * malloc/memusagestat.c: Silence warnings.
322
323         * malloc/malloc.c: Dynamically size mmap treshold if the program
324         frees mmaped blocks.
325         Patch by Valerie Henson and Arjan van de Ven.
326
327 2006-08-08  Jakub Jelinek  <jakub@redhat.com>
328
329         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_DIRECT): Protect with
330         __USE_GNU.
331
332         * stdlib/strtol_l.c (__strtol_ul_max_tab, __strtol_ul_rem_tab,
333         __strtol_ull_max_tab, __strtol_ull_rem_tab): Declare.
334         (DEF): Don't put the var into .gnu.linkonce.r.* section.
335         Only provide var definitions in strtol_l (or for *ull*
336         in strtoll_l).
337
338         * stdio-common/bug16.c (tests): New array.
339         (do_tests): Allow the first hexadecimal digit
340         to be 1, 2, 4 or 8.  Do 3 additional tests.
341
342         * sysdeps/s390/fpu/libm-test-ulps: Update.
343
344         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c (fchownat): Use
345         fchownat syscall if available.
346         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Likewise.
347         * sysdeps/unix/sysv/linux/sh/fchownat.c (fchownat): Likewise.
348         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Likewise.
349
350 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
351
352         * nis/nis_xdr.c: Avoid some function calls.
353
354 2006-08-07  Jakub Jelinek  <jakub@redhat.com>
355             Ulrich Drepper  <drepper@redhat.com>
356
357         * nis/nis_call.c (rec_dirsearch) [case LOWER_NAME]: Don't take
358         short cut if only one name component is stripped away.
359
360 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
361
362         * nis/nis_call.c: Minor cleanups throughout.
363         (rec_dirsearch) [case HIGHER_NAME]: Correctly size ndomain array.
364         (first_shoot): Add search_parent_first parameter.  Only if it is set
365         search parent server first.
366         If directory for table found through cold start cache is not the same
367         as referenced in the cache, don't use it.
368         (__nisfind_server): Take additional parameter.  Pass it on to
369         first_shoot.
370         (__prepare_niscall): Adjust __nisfind_server call.
371         * nis/rpcsvc/nislib.h: Adjust __nisfind_server prototype.
372         * nis/nis_table.c: Adjust __nisfind_server call.
373         * nis/nis_lookup.c: Likewise.
374         (nis_lookup): Don't loop endlessly if name is reduced to ".".
375
376 2006-08-03  Ulrich Drepper  <drepper@redhat.com>
377
378         [BZ #2182]
379         * math/s_cacosh.c: Return values from positive branch.
380         * math/s_cacoshf.c: Likewise.
381         * math/s_cacoshl.c: Likewise.
382
383         [BZ #2883]
384         * sysvipc/sys/msg.h: Change return value to ssize_t.
385         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
386         * sysvipc/msgrcv.c: Likewise.
387         * include/sys/msg.h: Likewise.
388
389         * grp/initgroups.c (internal_getgrouplist): Remove unnecessary
390         test introduced in patch for bz #661.
391         (getgrouplist): Simplify code a bit.  Don't allocate one additional
392         element for NEWGROUPS.
393
394         [BZ #2908]
395         * stdio-common/printf_fphex.c (__printf_fphex): When rounding up
396         'f', use '1' as leading digit not '\1'.
397         * stdio-common/Makefile (tests): Add bug16.
398         * stdio-common/bug16.c: New file.
399
400         [BZ #2914]
401         * sysdeps/unix/sysv/linux/gethostid.c: Don't define OLD_HOSTIDFILE
402         and don't try to open it.  The patch introducing the macro
403         contained a bug and used the same file name as the new file
404         instead of using /var/adm/hostid.  Nobody complaint so I'm taking
405         this out completely.
406
407         [BZ #2926]
408         * assert/assert.h: Move cast to void inside ?: to quiet gcc.
409         Patch by Jerry James <Jerry.James@usu.edu>.
410
411         * rt/Makefile (tests): Add tst-clock2.
412         * rt/tst-clock2.c: New file.
413
414         [BZ #2978]
415         * resolv/gai_notify.c (__gai_notify_only): Copy memory for thread
416         function and its parameters and pass it to new thread.
417         (__gai_notify): Add support for alternative waiting for completion.
418         * resolv/gai_suspend.c (gai_suspend): Add support for alternative
419         waiting for completion.
420         * resolv/getaddrinfo_a.c: Likewise.
421         * resolv/gai_misc.h (struct waitlist): Don't add cond if alternative
422         waiting for completion is used.
423         * resolv/gai_misc.c: Allow overwriting code to start helper thread.
424         * resolv/gai_cancel.c: Include <gai_misc.h> not "gai_misc.h".
425         * resolv/gai_error.c: Likewise.
426         * resolv/gai_sigqueue.c: Likewise.
427
428 2006-08-02  Thomas Schwinge  <tschwinge@gnu.org>
429
430         * hurd/getdport.c (__getdport): Don't return EBADF; instead set
431         errno to EBADF and return MACH_PORT_NULL.
432
433 2006-06-23  Joseph Myers  <joseph@codesourcery.com>
434
435         [BZ #2980]
436         * posix/Makefile (CFLAGS-waitid.c): Add -fasynchronous-unwind-tables.
437
438 2006-08-02  Ulrich Drepper  <drepper@redhat.com>
439
440         * elf/dl-addr.c (_dl_addr): If GNU-style hash tables are present,
441         walk them instead of the symbol table.
442
443 2006-08-01  Ulrich Drepper  <drepper@redhat.com>
444
445         [BZ #2098]
446         * nscd/initgrcache.c (addinitgroupsX): Judge successful lookups by
447         status of NSS calls, not the number of returned entries.
448
449         * sysdeps/unix/sysv/linux/syscalls.list: Remove add_key,
450         request_key, keyctl.
451
452 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
453
454         * sysdeps/unix/sysv/linux/dl-osinfo.h: Remove unnecessary include.
455
456 2006-07-16  Jeff Bailey  <jbailey@ubuntu.com>
457
458         * elf/tst-auditmod1.c: Fix typo in #error.
459
460 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
461
462         * elf/tst-auditmod1.c: Remove code for unsupported architectures.
463
464         * iconvdata/run-iconv-test.sh: Run cmp in C locale.
465
466 2006-07-20  Adam Nemet  <anemet@caviumnetworks.com>
467
468         * stdlib/test-canon.c (do_test): Close fd before unlinking file so
469         that the directory is empty even on non-POSIX filesystems.
470
471 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
472
473         * elf/dl-open.c (dl_open_worker): Add branch prediction.
474
475         * nis/nss_compat/compat-grp.c: Avoid unnecessary setgrent calls into
476         the backend NSS module.  If backend setgrent call failed, don't have
477         internal_setgrent fail.  Just remember this until it is needed.
478         * nis/nss_compat/compat-pwd.c: Likewise.
479         * nis/nss_compat/compat-spwd.c: Likewise.
480
481 2006-07-30  Roland McGrath  <roland@redhat.com>
482
483         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: File removed.
484         * sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: File removed.
485         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: File removed.
486         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: File removed.
487
488         * sysdeps/unix/sysv/linux/not-cancel.h (pause_not_cancel): New macro.
489         (nanosleep_not_cancel): New macro.
490         (sigsuspend_not_cancel): new macro.
491         * sysdeps/unix/sysv/linux/sigsuspend.c [__ASSUME_REALTIME_SIGNALS]
492         (do_sigsuspend): Define as inline.
493         (__sigsuspend): Always use do_sigsuspend.
494         [! NO_CANCELLATION] (__sigsuspend_nocancel): New function.
495         * include/signal.h: Declare __sigsuspend_nocancel.
496         * sysdeps/posix/pause.c
497         [! NO_CANCELLATION] (__pause_nocancel): New function.
498
499         * include/unistd.h (__pause_nocancel): Add attribute_hidden.
500         * include/time.h (__nanosleep_nocancel): Likewise.
501
502 2006-07-30  Ulrich Drepper  <drepper@redhat.com>
503
504         * locale/programs/localedef.c (add_to_readlist): Rename local
505         variables to avoid confusion.
506
507         * locale/programs/charmap.c (charmap_read): Emit error message if
508         charmap couldn't be found or read.
509
510 2006-07-28  Ulrich Drepper  <drepper@redhat.com>
511
512         * sysdeps/unix/sysv/linux/kernel-features.h: Define
513         __ASSUME_FUTEX_LOCK_PI.
514         * include/time.h: Declare __nanosleep_nocancel.
515         * include/unistd.h: Declare __pause_nocancel.
516
517         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Use this instead of
518         LDFLAGS.  Add -lgcc_eh and libc_nonshared (again) to make sure we
519         get the __stack_chk_fail_local definition when it's needed.
520
521 2006-07-26  Ulrich Drepper  <drepper@redhat.com>
522
523         * dlfcn/Makefile: Add rules to build and run bug-atexit3.
524         * dlfcn/bug-atexit3.c: New file.
525         * dlfcn/bug-atexit3-lib.cc: New file.
526
527         * dlfcn/dlmopen.c (dlmopen_doit): Don't allow RTLD_GLOBAL to be
528         used when the namespace is not the base namespace.
529
530 2006-07-26  Gavin Romig-Koch  <gavin@redhat.com>
531
532         * stdlib/cxa_atexit.c (__new_exitfn_called): New variable.
533         (__new_exitfn): Bump it in every successful call.
534         * stdlib/cxa_finalize.c (__cxa_finalize): If destructor registered
535         more exit handlers, call them right away.
536         * stdlib/exit.h: Declare __new_exitfn_called.
537
538 2006-07-25  Ulrich Drepper  <drepper@redhat.com>
539
540         * stdlib/cxa_finalize.c (__cxa_finalize): Fix race condition when
541         calling registered handler.
542
543         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Fix comment.
544         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
545         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
546         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
547         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
548         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
549         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
550         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
551
552 2006-07-10  Ulrich Drepper  <drepper@redhat.com>
553
554         * elf/dl-lookup.c (dl_new_hash): New functions.
555         (_dl_lookup_symbol_x): Rename hash to old_hash and don't compute
556         value here.  Compute new-style hash value.  Pass new hash value
557         and reference to variable with the old value to do_lookup_x.
558         (_dl_setup_hash): If DT_GNU_HASH is defined, use it and not
559         old-style hash table.
560         (_dl_debug_bindings): Pass new hash value and reference to variable
561         with the old value to do_lookup_x.
562         * elf/do-lookup.h (do_lookup_x): Accept additional parameter with
563         new-style hash value and change old-style hash value parameter to
564         be a reference.  Reoganize functions to determine whether
565         new-style hash table is available.  Only fall back on old-style
566         table.  If old-style hash value is needed, compute it here.
567         * elf/dynamic-link.h (elf_get_dynamic_info): Relocate DT_GNU_HASH
568         entry.
569         * elf/elf.h: Define SHT_GNU_HASH, DT_GNU_HASH, DT_TLSDEC_PLT,
570         DT_TLSDEC_GOT.  Adjust DT_ADDRNUM.
571         * include/link.h (struct link_map): Add l_gnu_bitmask_idxbits,
572         l_gnu_shift, l_gnu_bitmask, l_gnu_buckets and l_gnu_chain_zero.
573         * Makeconfig: If linker supports --hash-style option add it to all
574         linker command lines to build DSOs.
575         * config.make.in: Define have-hash-style.
576         * configure.in: Test whether linker supports --hash-style option.
577
578         * elf/dl-misc.c (_dl_name_match_p): Make MAP parameter const.
579         * sysdeps/generic/ldsodefs.h: Adjust prototype.
580
581 2006-06-27  Ulrich Drepper  <drepper@redhat.com>
582
583         * elf/dl-load.c (open_path): Fix test to determine whether DSO is
584         auditing.
585
586         * elf/dl-load.c (_dl_map_object): Try harder to avoid looking at
587         RPATH of main map twice.
588
589 2006-06-22  Ulrich Drepper  <drepper@redhat.com>
590
591         * intl/dcigettext.c (DCIGETTEXT): If _nl_find_msg returns -1 don't
592         look further, return original strings.
593         (_nl_find_msg): Do not return found translation if the conversion
594         failed.  Either signal the string is unusable or that something went
595         wrong and the original should be used.
596
597 2006-06-21  Ulrich Drepper  <drepper@redhat.com>
598
599         * string/_strerror.c (__strerror_r): Add __builtin_expect.
600
601 2006-06-14  Jakub Jelinek  <jakub@redhat.com>
602
603         [BZ #2766]
604         * misc/insremque.c (insque): Handle prev == NULL.
605         * misc/Makefile (tests): Add tst-insremque.
606         * misc/tst-insremque.c: New test.
607
608 2006-06-17  Ulrich Drepper  <drepper@redhat.com>
609
610         [BZ #2792]
611         * elf/dl-deps.c (expand_dst): Rename __cnt variable to not
612         conflict with DL_DST_REQUIRED.
613
614 2006-06-16  Ulrich Drepper  <drepper@redhat.com>
615
616         * nis/nis_subr.c (nis_getnames): Fix the implementation to better
617         match what Solaris does.
618
619 2006-06-04  Ulrich Drepper  <drepper@redhat.com>
620
621         * sysdeps/posix/spawni.c (__spawni): Use local_seteuid and
622         local_setegid instead of seteuid and setegid.
623         * sysdeps/generic/local-setxid.h: New file.
624         * sysdeps/unix/sysv/linux/local-setxid.h: New file.
625
626         * sysdeps/posix/spawni.c (__spawni): Use non-cancelable interfaces.
627
628         * string/Makefile (tests): Add bug-envz1.
629         * string/bug-envz1.c: New file.
630
631 2006-06-02  Jakub Jelinek  <jakub@redhat.com>
632
633         * posix/regex_internal.c (re_string_skip_chars): If no character has
634         been converted at all, set *last_wc to WEOF.  If mbrtowc failed, set wc
635         to the byte which couldn't be converted.
636         (re_string_reconstruct): Don't clear valid_raw_len before calling
637         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
638         tip_context using re_string_context_at.
639         * posix/Makefile: Add rules to build and run bug-regex25 test.
640         * posix/bug-regex25.c: New test.
641
642 2006-06-02  Ryan S. Arnold  <rsa@us.ibm.com>
643
644         [BZ #2703]
645         * string/envz.c (envz_strip): Correct erroneously reversed src
646         and dest parameters to memmove() invocation.
647
648 2006-05-30  Jakub Jelinek  <jakub@redhat.com>
649
650         * nscd/nscd.h (prune_cache): Add fd argument to prototype.
651         * nscd/nscd.c (parse_opt): Read response from INVALIDATE request
652         to make sure the database has been already invalidated.
653         * nscd/cache.c (prune_cache): Add fd argument.  Write response to fd
654         after the cache has been invalidated.  Use pthread_mutex_lock rather
655         than pthread_mutex_trylock if fd != -1.
656         * nscd/connections.c (invalidate_cache): Add fd argument, write
657         response to fd if not calling prune_cache, pass fd to prune_cache.
658         (handle_request): Adjust invalidate_cache caller.
659         (nscd_run): Pass -1 as fd to prune_cache.
660
661 2006-05-30  Ulrich Drepper  <drepper@redhat.com>
662
663         * sysdeps/posix/getaddrinfo.c (gaiconf_init): Initialize bits in
664         the correct place.
665
666 2006-05-29  Ulrich Drepper  <drepper@redhat.com>
667
668         * nscd/nscd.h (struct database_dyn): Add prunelock field.
669         * nscd/cache.c (prune_cache): Take prunelock before starting the
670         work.  Just return in case it is already taken.
671         * nscd/connections.c (dbs): Initialize .prunelock.
672
673 2006-05-25  Ulrich Drepper  <drepper@redhat.com>
674
675         * nis/nis_removemember.c (nis_removemember): Avoid unnecessary
676         copying.  No need to allocate new array for group members.  Just
677         move the pointers and update the size.
678
679         * nis/nis_addmember.c (nis_addmember): Avoid unnecessary copying.
680         Avoid memory leak in case realloc fails.  Simplification for
681         better code generation.
682
683         Avoid deprecation warning because of libc_hidden_proto for
684         inet6_option_alloc.
685         * inet/inet6_option.c (option_alloc): Renamed from
686         inet6_option_alloc.  Made static.
687         (inet6_option_alloc): Now a simple wrapper around option_alloc.
688         (inet6_option_append): Call option_alloc.
689         * include/netinet/in.h: Remove libc_hidden_proto for
690         inet6_option_alloc.
691
692         * nis/nis_callback.c (__nis_create_callback): Always call xdr_free
693         for cleanup when cb!=NULL [Coverity CID 233].
694
695 2006-05-24  Ulrich Drepper  <drepper@redhat.com>
696
697         [BZ #2693]
698         * inet/Makefile (routines): Add inet6_opt and inet6_rth.
699         * inet/Versions (libc, GLIBC_2.5): Add inet6_opt_init,
700         inet6_opt_append, inet6_opt_finish, inet6_opt_set_val, inet6_opt_next,
701         inet6_opt_find, inet6_opt_get_val, inet6_rth_space, inet6_rth_init,
702         inet6_rth_add, inet6_rth_reverse, inet6_rth_segments,
703         and inet6_rth_getaddr.
704         * inet/netinet/ip6.h (struct ip6_rthdr0): Make ip6r0_addr a flexible
705         array.
706         * inet/netinet/in.h (struct ip6_mtuinfo): Define.
707         Mark inet6_option_* interfaces as deprecated.
708         Declare inet6_opt_init, inet6_opt_append, inet6_opt_finish,
709         inet6_opt_set_val, inet6_opt_next, inet6_opt_find, inet6_opt_get_val,
710         inet6_rth_space, inet6_rth_init, inet6_rth_add, inet6_rth_reverse,
711         inet6_rth_segments, and inet6_rth_getaddr.
712         * inet/inet6_opt.c: New file.
713         * inet/inet6_rth.c: New file.
714
715         * inet/netinet/icmp6.h: Pretty printing.
716
717         [BZ #2683]
718         * elf/dl-addr.c (_dl_addr): Don't match undefined references.
719
720 2006-05-23  Ulrich Drepper  <drepper@redhat.com>
721
722         * nis/nis_lookup.c (nis_lookup): Use __prepare_niscall instead of
723         doing it all here.  When server does not know the answer do not
724         fail immediate, try parent first.
725
726         * nis/nis_domain_of_r.c (nis_domain_of_r): Add missing buffer
727         overflow test.
728
729 2006-05-20  Ulrich Drepper  <drepper@redhat.com>
730
731         * nis/nis_call.c (__prepare_niscall): New function.  Split out
732         from __do_niscall.
733         * nis/nis_table.c (__create_ib_request): Renamed from create_ib_request
734         and exported.
735         (__follow_path): New function.  Split out from nis_list.
736         * nis/nis_xdr.h: Add libnsl_hidden_proto for _xdr_ib_request and
737         _xdr_nis_result.
738         * nis/nis_xdr.c: Add libnsl_hidden_def for _xdr_ib_request and
739         _xdr_nis_result.
740         * nis/libnsl.h: Declare __prepare_niscall, __create_ib_request,
741         and __follow_path.
742         * nis/Versions: Export __prepare_niscall, __create_ib_request,
743         __follow_path, __do_niscall3, _xdr_ib_request, and _xdr_nis_result
744         from libnsl for version GLIBC_PRIVATE.
745         * nis/nisplus-parser.h: Remove _nss_nisplus_parse_pwent_chk.
746         Remove entry parameter from _nss_nisplus_parse_pwent and
747         _nss_nisplus_parse_grent.
748         * nis/nss_nisplus/nisplus-parser.c: Likewise.
749         * nis/nss_nisplus/nisplus-pwd.c: Remove support for SETENT_BATCH_READ
750         again.  Rewrite getpwent handling to not use nis_first_entry and
751         nis_next_entry.  Roll out own niscall handling.
752         * nis/nss_nisplus/nisplus-grp.c: Likewise.
753
754         * sunrpc/xdr_rec.c: Fix typo in comment.
755
756 2006-05-19  Ulrich Drepper  <drepper@redhat.com>
757
758         * nis/nis_call.c (__do_niscall3): Avoid code duplication in error
759         handling.
760
761         * nis/nis_callback.c (internal_nis_do_callback): Don't use malloc
762         to allocate memory for my_pollfd.  Better initialization of
763         cb_is_running.  Use TEMP_FAILURE_RETRY.
764
765         * malloc/memusage.sh (memusageso): Add quotes.
766         (memusagestat): Likewise.
767         * debug/xtrace.sh (pcprofileso): Likewise.
768         (pcprofiledump): Likewise.
769         * debug/Makefile ($(objpfx)xtrace): Use $LIB in SLIBDIR
770         replacement.
771         * malloc/Makefile ($(objpfx)memusage): Likewise.
772
773         * nis/nis_callback.c (__nis_create_callback): Calls to
774         svcudp_bufcreate and svctcp_create can fail.  Free ->xprt if
775         asprintf call fails.
776
777         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_sendreq): Make sure
778         no uninitialized memory is passed to sendto.
779
780 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
781
782         * nis/nis_callback.c (__nis_create_callback): Use asprinf instead
783         of snprintf+strdup.  Handle OOM.
784         * nis/nis_callback.c (__nis_create_callback): Allocate cb and
785         cb->serv together.  Remove now obsolete free calls.
786         (__nis_destroy_callback): Remove now obsolete free call.
787
788 2006-05-18  David Woodhouse  <dwmw2@redhat.com>
789
790         * sysdeps/posix/getaddrinfo.c: Add unique labels to the default
791         RFC3484 precedence table for fec0::/10 and fc00::/7 (site-local
792         and ULA respectively). Set precedence for IPv4 address to 10 as
793         defined in RFC3484 for preferring IPv6.
794         * posix/gai.conf: Update to match the new default tables.
795
796 2006-05-18  Jakub Jelinek  <jakub@redhat.com>
797
798         * nis/nss_compat/compat-pwd.c (internal_setpwent): If nss_set*ent
799         returned NSS_STATUS_UNAVAIL, still return NSS_STATUS_SUCCESS.
800         * nis/nss_compat/compat-spwd.c (internal_setspent): Likewise.
801         * nis/nss_compat/compat-grp.c (internal_setgrent): Likewise.
802
803         * nis/nss_compat/compat-initgroups.c (nss_setgrent, nss_endgrent):
804         Removed.
805         (init_nss_interface): Remove initialization of these variables.
806
807 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
808
809         * nis/nis_call.c (rec_dirsearch): Little optimization: pull
810         nis_free_directory forward to avoid duplication.
811
812 2006-05-17  Ulrich Drepper  <drepper@redhat.com>
813
814         * nis/nis_call.c (rec_dirsearch): Handle __nis_finddirectory and
815         rec_dirsearch returning NULL.
816         (first_shoot): Handle __nis_finddirectory returning NULL.
817         (__nisfind_server): Fix leak when rec_dirsearch returns NULL.
818
819         * sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOSE, IN_MOVE,
820         IN_ONLYDIR, IN_DONT_FOLLOW, and IN_MASK_ADD.
821
822 2006-05-17  Jakub Jelinek  <jakub@redhat.com>
823
824         * sunrpc/key_call.c (getkeyserv_handle): Call auth_destroy if
825         pid changed.
826
827 2006-05-15  Ulrich Drepper  <drepper@redhat.com>
828
829         * include/rpc/pmap_prot.h: Mark all functions as hidden.
830
831         * nscd/nscd_initgroups.c: Mark __gr_map_handle as hidden.
832         * nscd/nscd_getgr_r.c: Likewise.
833
834         * include/rpc/pmap_rmt.h: Mark all functions as hidden.
835
836         * nscd/nscd_getai.c (__hst_map_handle): Mark as hidden.
837         * nscd/nscd_gethst_r.c (__hst_map_handle): Likewise.
838
839         * stdlib/longlong.h (__clz_tab): Mark as hidden.
840
841         * iconv/gconv_int.h: Mark __gconv_lock as hidden.
842
843         * include/rpc/key_prot.h: Mark all _internal functions as hidden.
844
845         * include/rpc/auth.h: Mark xdr_des_block_internal and
846         xdr_opaque_auth_internal as hidden.
847
848         * sysdeps/unix/sysv/linux/getdents.c: Mark __have_no_getdents64 as
849         hidden.
850
851         * include/rpc/xdr.h: Mark all _internal functions as hidden.
852
853         * misc/getusershell.c (okshells): Don't use static initializers,
854         do it dynamically.
855
856         * stdlib/fmtmsg.c (keywords): Change type of len element to
857         uint32_t to not waste space on 64bit machines.
858
859         * locale/setlocale.c: Change _nl_category_names into a string.
860         Add new _nl_category_name_idxs.  Change all users.
861         * locale/localeinfo.h: Adjust declaration of _nl_category_names.
862         Declare _nl_category_name_idxs.
863         * locale/findlocale.c: Adjust for _nl_category_names change.
864         * locale/loadlocale.c: Likewise.
865         * locale/newlocale.c: Likewise.
866         * intl/dcigettext.c: Likewise.
867
868         * iconv/gconv_conf.c (add_alias): Move actual alias handling to...
869         (add_alias2): ...here.  New function.
870         (__gconv_read_conf): Simplify builtin alias handling.
871         (builtin_aliases): Convert to string to avoid relocations.
872         * iconv/gconv_builtin.h: Add comment about correct formatting.
873
874 2006-05-15  Jakub Jelinek  <jakub@redhat.com>
875
876         * resolv/res_debug.c (loc_ntoa): Make error const.
877
878 2006-05-14  Andreas Schwab  <schwab@suse.de>
879
880         * math/complex.h [__LDBL_COMPAT]: Use __REDIRECT_NTH.
881
882 2006-05-12  Jakub Jelinek  <jakub@redhat.com>
883
884         * sysdeps/unix/sysv/linux/sched_getaffinity.c: Include sys/param.h.
885         (__sched_getaffinity_new): Don't crash if cpusetsize is smaller than
886         sizeof (cpu_set_t).
887
888 2006-05-11  Ulrich Drepper  <drepper@redhat.com>
889
890         * resolv/res_debug.c (loc_ntoa): Define error as array, not pointer.
891
892         * include/arpa/nameser.h: Declare _ns_flagdata as hidden.
893
894         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_master.
895         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_master.
896
897         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypbind_resp.
898         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypbind_resp.
899
900         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_cback_data.
901         * include/rpcsvc/nis_callback.h: Add libnsl_hidden_proto for
902         xdr_cback_data.
903
904         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypupdate_args.
905         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
906         xdr_ypupdate_args.
907
908         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_order.
909         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_order.
910
911         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_maplist.
912         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_maplist.
913
914         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_obj_p.
915         * include/rpcsvc/nis_callback.h: New file.
916
917         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_val.
918         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_val.
919
920         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
921         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
922
923         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypmaplist.
924         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypmaplist.
925
926         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
927         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
928
929         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypdelete_args.
930         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
931         xdr_ypdelete_args.
932
933         * nis/nis_xdr.h: Mark all functions as hidden.  Remove
934         __BEGIN_DECLS and __END_DECLS, the header is not installed.
935
936         * nis/nis_error.c: Remove table of strings.  Use position
937         independent mechanism.
938         * nis/nis_error.h: New file.
939
940 2006-05-11  Jakub Jelinek  <jakub@redhat.com>
941
942         * locale/programs/ld-time.c (time_finish): If wide era name or
943         format aren't provided, set both wname and wformat to L"".
944
945 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
946
947         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Only store
948         results if the call was succesful.
949
950         * nis/nss-nis.h: Mark __yperr2nss_tab and __yperr2nss_count as hidden.
951
952         * nis/nss-nisplus.h: Mark __niserr2nss_tab and __niserr2nss_count
953         as hidden.
954
955 2006-05-10  Jakub Jelinek  <jakub@redhat.com>
956
957         * misc/sys/queue.h: Remove uses of all QUEUEDEBUG_* macros.
958
959 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
960
961         * posix/wordexp.c (parse_glob): No need to check ifs for NULL, the
962         caller makes sure this is not the case.
963         (wordexp): Simplify ifs_white creation.  [Coverity CID 231]
964
965 2006-05-09  Ulrich Drepper  <drepper@redhat.com>
966
967         * posix/wordexp.c: Remove numerous NULL pointer tests before FREE
968         calls.
969
970         * io/ftw.c (open_dir_stream): Return right away if REALLOC fails.
971         [Coverity CID 229, 230]
972
973         * argp/argp-help.c (hol_entry_help): Handle STATE==NULL in ARG and
974         DGETTEXT calls.
975         (hol_help): Likewise.  [Coverity CID 226, 227]
976
977         * string/argz-replace.c (__argz_replace): Unconditionally call
978         free on SRC.  [Coverity CID 225]
979
980         * nis/nis_creategroup.c (nis_creategroup): No need to duplicate
981         the return value of __nis_default_owner and __nis_default_group,
982         it has been especially allocated.  [Coverity CID 224]
983
984         * nis/nis_defaults.c (searchXYX): New functions.  Used by both
985         searchgroup and searchowner.  Significantly simplified.
986         (__nis_default_owner): Remove duplication.  Do not locally copy the
987         string before duplicating it.
988         (__nis_default_group): Likewise.
989
990         * nis/nis_lookup.c (nis_lookup): After calling nis_free_directory,
991         we must clear the variable before calling __nisfind_server.
992
993         * nis/nis_lookup.c (nis_lookup): Always free memory allocated with
994         nis_getnames.  [Coverity CID 223]
995
996         * locale/programs/locfile.c (locfile_read): Use alloca instead of
997         xmalloc to allocate local repertoire name.  [Coverity CID 222]
998
999         * iconv/iconv_charmap.c (use_to_charmap): No need to dynamically
1000         allocate memory for the input to add_bytes.  [Coverity CID 221]
1001
1002         * posix/wordexp.c (w_addword): Free word if realloc fails and it
1003         was allocated here.  [Coverity CID 219, 220]
1004
1005         * posix/getconf.c (print_all): Free confstr data after printing.
1006         [Coverity CID 218]
1007
1008         * sysdeps/posix/getaddrinfo.c (gaih_inet): Free canon string if
1009         list allocation fails.  [Coverity CID 215]
1010
1011         * nss/nsswitch.c (__nss_configure_lookup): Fix loop end condition.
1012         [Coverity CID 213]
1013
1014         * argp/argp-help.c (hol_entry_cmp): Don't call canon_doc_option if
1015         string is NULL.  [Coverity CID 212]
1016         * argp/Makefile: Add rules to build and run bug-argp1.
1017         * argp/bug-argp1.c: New file.
1018
1019         * io/ftw.c (ftw_dir): Use __rawmemchr instead of strchr to find
1020         end of string.
1021         * stdlib/canonicalize.c (__realpath): Likewise.
1022
1023         * locale/programs/ld-time.c (time_finish): Don't dereference NULL
1024         pointer.  [Coverity CID 206]
1025
1026         * elf/dl-dst.h (DL_DST_REQUIRED): Be prepared for missing link map
1027         in statically linked code.
1028         * elf/dl-load.c (_dl_dst_substitute): When replacing ORIGIN in
1029         statically built code, be prepared to have no link map.
1030         [Coverity CID 205]
1031
1032         * argp/argp-help.c (fill_in_uparams): Handle STATE==NULL in
1033         dgettext calls. [Coverity CID 204]
1034
1035         * argp/argp-help.c (struct uparams): Remove valid member.  Change
1036         the one user.
1037         (uparam_names): Reduce size.  Avoid relative relocations.
1038         Moved to read-only segment.
1039         (fill_in_uparams): Update for new layout.
1040
1041         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Parameter can be
1042         assumed to always be != NULL. [Coverity CID 202]
1043
1044         * argp/argp-help.c (hol_entry_help): Remove some dead code
1045         [Coverity CID 200].
1046
1047         * nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Optimize
1048         away a few more unconditional yperr2nss calls.
1049         (_nss_nis_getservbyname_r): Likewise.
1050
1051 2006-05-06  Ulrich Drepper  <drepper@redhat.com>
1052
1053         * sysdeps/generic/ldsodefs.h: Remove support for non-core
1054         architectures.
1055
1056         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Make sure
1057         that unused memory passed to sendto is nevertheless initialized.
1058
1059         [BZ #2499]
1060         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Avoid
1061         possibly unaligned memory accesses.
1062
1063         * include/arpa/nameser.h: Also optimize NS_PUT16 and NS_PUT32.
1064         * resolv/res_mkquery.c: Use NS_PUT16 and NS_PUT32 instead of __putshort
1065         and __putlong respectively.  Correct buffer overflow check for
1066         NS_NOTIFY_OP.
1067
1068         * resolv/res_send.c (send_vc): Use ns_put16 instead of putshort.
1069
1070         * resolv/res_send.c (res_queriesmatch): Fix typo in comment.
1071         (send_dg): Rewrite error handling to be more compact and avoid
1072         double recomputation of timeouts.  Pass MSG_NOSIGNAL to send.
1073
1074         * include/arpa/nameser.h: Add optimizations for NS_GET16 and NS_GET32.
1075
1076         * resolv/res_send.c (res_nameinquery): Use NS_GET16 directly
1077         instead of ns_get16.
1078         (res_queriesmatch): Likewise.  Minor optimization.
1079
1080         [BZ #2499]
1081         * resolv/res_query.c (__libc_res_nquery): If answerp != NULL,
1082         __libc_res_nsend might reallocate the buffer for the answer.  In
1083         this case we have to reload the HP pointer.
1084
1085 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
1086
1087         * stdio-common/vfscanf.c (memory_error): Remove definition.  Add
1088         some branch prediction hints.
1089
1090         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Define SPLICE_F_*.
1091         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1092         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
1093         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1094         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1095         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1096         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
1097         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1098
1099 2006-05-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1100
1101         * sysdeps/s390/s390-32/elf/start.S: Replace pc relative relocation
1102         by a GOT relocation to make Scrt1.o position independent.
1103         * sysdeps/s390/s390-64/elf/start.S: Likewise.
1104
1105         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S: Add support for
1106         six system call parameters.
1107         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
1108
1109 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
1110
1111         * sunrpc/svcauth_des.c (cache_init): Use calloc instead of
1112         malloc&bzero.
1113
1114         * sunrpc/svc_udp.c (BZERO): Remove definition.
1115         (CALLOC): Define.
1116         (svc_enablecache): Use CALLOC instead of ALLOC&BZERO.
1117
1118         * sunrpc/des_impl.c: Remove ALT_ECB support.  We never used it.
1119         (des_SPtrans): Use uint32_t type.
1120         (des_skb): Likewise.
1121
1122         * sunrpc/xdr_ref.c (xdr_reference): Use calloc instead of malloc&bzero.
1123
1124 2006-05-05  Jakub Jelinek  <jakub@redhat.com>
1125
1126         [BZ #2509]
1127         * stdio-common/tst-printf.sh: Adjust for tst-printf.c change even
1128         on 32-bit arches.
1129
1130 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
1131
1132         * locale/programs/ld-address.c (address_finish): Fix one more
1133         place where the iso639 array might be accessed beyond the limits.
1134
1135 2006-05-04  Ulrich Drepper  <drepper@redhat.com>
1136
1137         * nis/nis_table.c (nis_list): Avoid clearing res twice before
1138         filling it for the first time.
1139
1140         * nis/nis_table.c (get_tablepath): Renamed from __get_tablepath.
1141         Adjust all callers.
1142         Free res object content before returning.
1143
1144         * sunrpc/xdr_array.c (xdr_array): Use calloc instead of malloc&bzero.
1145
1146         * sunrpc/key_call.c (__rpc_thread_key_cleanup): Also free
1147         client->cl_auth.
1148
1149         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Don't skip entire
1150         cleanup for initial thread, just the free call on TVP.
1151
1152         * nscd/gai.c (__getline): Define.
1153
1154
1155 See ChangeLog.16 for earlier changes.