bd3bf357d2810a82c6fa70514c3fc7f7ed8b758b
[platform/upstream/glibc.git] / ChangeLog
1 2006-10-09  Jakub Jelinek  <jakub@redhat.com>
2
3         * elf/dl-debug.c (_dl_debug_initialize): Check r->r_map for 0
4         rather than r->r_brk.
5
6 2006-11-08  Jakub Jelinek  <jakub@redhat.com>
7
8         * elf/dl-load.c (decompose_rpath): Return bool rather than void.
9         If l->l_name is on inhibit_rpath list, set sps->dirs to -1 and
10         return false, otherwise return true.
11         (cache_rpath): Return decompose_rpath return value.
12
13 2006-11-07  Jakub Jelinek  <jakub@redhat.com>
14
15         * include/libc-symbols.h (declare_symbol): Rename to...
16         (declare_symbol_alias): ... this.  Add ORIGINAL argument, imply
17         strong_alias (ORIGINAL, SYMBOL) in asm to make sure it preceedes
18         .size directive.
19         * sysdeps/gnu/errlist-compat.awk: Adjust for declare_symbol_alias
20         changes.
21         * sysdeps/gnu/siglist.c: Likewise.
22
23 2006-11-03  Steven Munroe  <sjmunroe@us.ibm.com>
24
25         * sysdeps/powerpc/fpu/bits/mathinline.h
26         [__LIBC_INTERNAL_MATH_INLINES]: Moved to ...
27         * sysdeps/powerpc/fpu/math_private.h: ...here.  New file.
28
29 2006-11-05  Ulrich Drepper  <drepper@redhat.com>
30
31         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word):
32         Update handling of cache descriptor 0x49 for new models.
33         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word):
34         Likewise.
35
36 2006-11-02  Jakub Jelinek  <jakub@redhat.com>
37
38         * malloc/memusage.c (dest): Reset not_me back to false after
39         printing statistics.
40
41 2006-11-02  Ulrich Drepper  <drepper@redhat.com>
42
43         * configure.in: Work around ld --help change and avoid -z relro
44         test completely if the architecture doesn't care about security.
45
46 2006-11-01  Ulrich Drepper  <drepper@redhat.com>
47
48         * po/sv.po: Update from translation team.
49
50 2006-10-31  Ulrich Drepper  <drepper@redhat.com>
51
52         * stdlib/atexit.c (atexit): Don't mark as hidden when used to
53         generate compatibility version.
54
55 2006-10-29  Ulrich Drepper  <drepper@redhat.com>
56
57         * configure.in: Relax -z relro requirement a bit.
58
59         * po/sv.po: Update from translation team.
60
61 2006-10-29  Jakub Jelinek  <jakub@redhat.com>
62
63         * elf/dl-sym.c (do_sym): Use RTLD_SINGLE_THREAD_P.
64         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Likewise.
65         * elf/dl-close.c (_dl_close_worker): Likewise.
66         * elf/dl-open.c (_dl_open_worker): Likewise.
67         * sysdeps/generic/sysdep-cancel.h (RTLD_SINGLE_THREAD_P): Define.
68
69 2006-10-27  Ulrich Drepper  <drepper@redhat.com>
70
71         * configure.in: Require assembler support for visibility, compiler
72         support for visibility and aliases, linker support for various -z
73         options.
74         * Makeconfig: Remove conditional code which now is unnecessary.
75         * config.h.in: Likewise.
76         * config.make.in: Likewise.
77         * dlfcn/Makefile: Likewise.
78         * elf/Makefile: Likewise.
79         * elf/dl-load.c: Likewise.
80         * elf/rtld.c: Likewise.
81         * include/libc-symbols.h: Likewise.
82         * include/stdio.h: Likewise.
83         * io/Makefile: Likewise.
84         * io/fstat.c: Likewise.
85         * io/fstat64.c: Likewise.
86         * io/fstatat.c: Likewise.
87         * io/fstatat64.c: Likewise.
88         * io/lstat.c: Likewise.
89         * io/lstat64.c: Likewise.
90         * io/mknod.c: Likewise.
91         * io/mknodat.c: Likewise.
92         * io/stat.c: Likewise.
93         * io/stat64.c: Likewise.
94         * libio/stdio.c: Likewise.
95         * nscd/Makefile: Likewise.
96         * stdlib/Makefile: Likewise.
97         * stdlib/atexit.c: Likewise.
98         * sysdeps/generic/ldsodefs.h: Likewise.
99         * sysdeps/i386/dl-machine.h: Likewise.
100         * sysdeps/i386/sysdep.h: Likewise.
101         * sysdeps/i386/i686/memcmp.S: Likewise.
102         * sysdeps/powerpc/powerpc32/sysdep.h: Likewise.
103         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
104         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
105
106         * Makerules: USE_TLS support is now default.
107         * tls.make.c: Likewise.
108         * csu/Versions: Likewise.
109         * csu/libc-start.c: Likewise.
110         * csu/libc-tls.c: Likewise.
111         * csu/version.c: Likewise.
112         * dlfcn/dlinfo.c: Likewise.
113         * elf/dl-addr.c: Likewise.
114         * elf/dl-cache.c: Likewise.
115         * elf/dl-close.c: Likewise.
116         * elf/dl-iteratephdr.c: Likewise.
117         * elf/dl-load.c: Likewise.
118         * elf/dl-lookup.c: Likewise.
119         * elf/dl-object.c: Likewise.
120         * elf/dl-open.c: Likewise.
121         * elf/dl-reloc.c: Likewise.
122         * elf/dl-support.c: Likewise.
123         * elf/dl-sym.c: Likewise.
124         * elf/dl-sysdep.c: Likewise.
125         * elf/dl-tls.c: Likewise.
126         * elf/ldconfig.c: Likewise.
127         * elf/rtld.c: Likewise.
128         * elf/tst-tls-dlinfo.c: Likewise.
129         * elf/tst-tls1.c: Likewise.
130         * elf/tst-tls10.h: Likewise.
131         * elf/tst-tls14.c: Likewise.
132         * elf/tst-tls2.c: Likewise.
133         * elf/tst-tls3.c: Likewise.
134         * elf/tst-tls4.c: Likewise.
135         * elf/tst-tls5.c: Likewise.
136         * elf/tst-tls6.c: Likewise.
137         * elf/tst-tls7.c: Likewise.
138         * elf/tst-tls8.c: Likewise.
139         * elf/tst-tls9.c: Likewise.
140         * elf/tst-tlsmod1.c: Likewise.
141         * elf/tst-tlsmod13.c: Likewise.
142         * elf/tst-tlsmod13a.c: Likewise.
143         * elf/tst-tlsmod14a.c: Likewise.
144         * elf/tst-tlsmod2.c: Likewise.
145         * elf/tst-tlsmod3.c: Likewise.
146         * elf/tst-tlsmod4.c: Likewise.
147         * elf/tst-tlsmod5.c: Likewise.
148         * elf/tst-tlsmod6.c: Likewise.
149         * include/errno.h: Likewise.
150         * include/link.h: Likewise.
151         * include/tls.h: Likewise.
152         * locale/global-locale.c: Likewise.
153         * locale/localeinfo.h: Likewise.
154         * malloc/arena.c: Likewise.
155         * malloc/hooks.c: Likewise.
156         * malloc/malloc.c: Likewise.
157         * resolv/Versions: Likewise.
158         * sysdeps/alpha/dl-machine.h: Likewise.
159         * sysdeps/alpha/libc-tls.c: Likewise.
160         * sysdeps/generic/ldsodefs.h: Likewise.
161         * sysdeps/generic/tls.h: Likewise.
162         * sysdeps/i386/dl-machine.h: Likewise.
163         * sysdeps/ia64/dl-machine.h: Likewise.
164         * sysdeps/ia64/libc-tls.c: Likewise.
165         * sysdeps/mach/hurd/fork.c: Likewise.
166         * sysdeps/mach/hurd/i386/tls.h: Likewise.
167         * sysdeps/powerpc/powerpc32/dl-machine.c: Likwise.
168         * sysdeps/powerpc/powerpc32/dl-machine.h: Likewise.
169         * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
170         * sysdeps/s390/libc-tls.c: Likewise.
171         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
172         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
173         * sysdeps/sh/dl-machine.h: Likewise.
174         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
175         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
176         * sysdeps/x86_64/dl-machine.h: Likewise.
177
178         * elf/dl-close.c (_dl_close_worker): Renamed from _dl_close and
179         split out locking and parameter checking.
180         (_dl_close): Call _dl_close_worker after locking and checking.
181         * elf/dl-open.c (_dl_open): Call _dl_close_worker instead of
182         _dl_close.
183         * elf/Makefile: Add rules to build and run tst-thrlock.
184         * elf/tst-thrlock.c:  New file.
185
186         [BZ #3426]
187         * stdlib/stdlib.h: Adjust comment for canonicalize_file_name to
188         reality.
189
190         [BZ #3429]
191         * elf/dl-open.c (dl_open_worker): Keep holding dl_load_lock until
192         we are sure we do not need it anymore for _dl_close.  Also move
193         the asserts inside the lock region.
194         Patch mostly by Suzuki <suzuki@in.ibm.com>.
195
196 2006-10-27  Jakub Jelinek  <jakub@redhat.com>
197
198         * elf/dl-lookup.c (_dl_debug_bindings): Remove unused symbol_scope
199         argument.
200         (_dl_lookup_symbol_x): Adjust caller.
201
202         * sysdeps/generic/ldsodefs.h (struct link_namespaces): Remove
203         _ns_global_scope.
204         * elf/rtld.c (dl_main): Don't initialize _ns_global_scope.
205
206         * elf/dl-libc.c: Revert l_scope name changes.
207         * elf/dl-load.c: Likewise.
208         * elf/dl-object.c: Likewise.
209         * elf/rtld.c: Likewise.
210         * elf/dl-close.c (_dl_close): Likewise.
211         * elf/dl-open.c (dl_open_worker): Likewise.  If not SINGLE_THREAD_P,
212         always use __rtld_mrlock_{change,done}.  Always free old scope list
213         here if not l_scope_mem.
214         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Revert l_scope name
215         change.  Never free scope list here.  Just __rtld_mrlock_lock before
216         the lookup and __rtld_mrlock_unlock it after the lookup.
217         * elf/dl-sym.c: Likewise.
218         * include/link.h (struct r_scoperec): Remove.
219         (struct link_map): Replace l_scoperec with l_scope, l_scoperec_mem
220         with l_scope_mem and l_scoperec_lock with l_scope_lock.
221
222 2006-10-25  Ulrich Drepper  <drepper@redhat.com>
223
224         * sysdeps/gnu/netinet/tcp.h: Define TCP_CONGESTION.
225
226 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
227
228         * configure.in: Disable building profile libraries by default.
229
230 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
231
232         * sunrpc/xdr_mem.c (xdrmem_setpos): Don't compare addresses
233         as signed longs, check for x_base + pos overflow.
234         * sunrpc/Makefile (tests): Add tst-xdrmem2.
235         * sunrpc/tst-xdrmem2.c: New test.
236
237 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
238
239         * elf/dl-lookup.c (_dl_lookup_symbol_x): Add warning to
240         _dl_lookup_symbol_x code.
241
242 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
243
244         * elf/dl-runtime.c: Include sysdep-cancel.h.
245         (_dl_fixup, _dl_profile_fixup): Use __rtld_mrlock_* and
246         scoperec->nusers only if !SINGLE_THREAD_P.  Use atomic_*
247         instead of catomic_* macros.
248         * elf/dl-sym.c: Include sysdep-cancel.h.
249         (do_sym): Use __rtld_mrlock_* and scoperec->nusers only
250         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
251         * elf/dl-close.c: Include sysdep-cancel.h.
252         (_dl_close): Use __rtld_mrlock_* and scoperec->nusers only
253         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
254         * elf/dl-open.c: Include sysdep-cancel.h.
255         (dl_open_worker): Use __rtld_mrlock_* and scoperec->nusers only
256         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
257
258 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
259
260         [BZ #3313]
261         * malloc/malloc.c (malloc_consolidate): Set maxfb to address of last
262         fastbin rather than end of fastbin array.
263
264 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
265
266         * sysdeps/i386/i486/bits/atomic.h (catomic_decrement): Use correct
267         body macro.
268         * sysdeps/x86_64/bits/atomic.h
269         (__arch_c_compare_and_exchange_val_64_acq): Add missing casts.
270         (catomic_decrement): Use correct body macro.
271
272 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
273
274         * include/atomic.h: Add a unique prefix to all local variables
275         in macros.
276         * csu/tst-atomic.c (do_test): Test also catomic_* macros.
277
278 2006-10-16  Ulrich Drepper  <drepper@redhat.com>
279
280         [BZ #3369]
281         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Fix typos in rules 4
282         and 7.
283
284 2006-10-14  Ulrich Drepper  <drepper@redhat.com>
285
286         * resolv/arpa/nameser.h: Document that ns_t_a6 is deprecated.
287
288 2006-10-13  Ulrich Drepper  <drepper@redhat.com>
289
290         [BZ #3313]
291         * malloc/malloc.c (malloc_consolidate): Don't use get_fast_max to
292         determine highest fast bin to consolidate, always look into all of
293         them.
294         (do_check_malloc_state): Only require for empty bins for large
295         sizes in main arena.
296
297         * libio/stdio.h: Add more __wur attributes.
298
299         * elf/dl-minimal.c (realloc): Optimize last patch.
300
301 2006-10-12  Richard Sandiford  <richard@codesourcery.com>
302
303         [BZ #3352]
304         * elf/dl-minimal.c (realloc): Let malloc() return a new pointer,
305         and use memcpy() if it does.
306
307 2006-11-12  Andreas Jaeger  <aj@suse.de>
308
309         [BZ #2510]
310         * manual/search.texi (Hash Search Function): Clarify.
311         (Array Search Function): Clarify.
312
313 2006-11-12  Joseph Myers  <joseph@codesourcery.com>
314
315         [BZ #2830]
316         * math/atest-exp.c (main): Cast hex value to mp_limb_t before
317         shifting.
318         * math/atest-exp2.c (read_mpn_hex): Likewise.
319         * math/atest-sincos.c (main): Likewise.
320
321 2006-10-11  Ulrich Drepper  <drepper@redhat.com>
322
323         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_pwait.
324         * sysdeps/unix/sysv/linux/sys/epoll.h: Declare epoll_pwait.
325         * sysdeps/unix/sysv/linux/Versions (libc): Add epoll_pwait for
326         version GLIBC_2.6.
327         * Versions.def: Add GLIBC_2.6 for libc.
328
329         * sysdeps/unix/sysv/linux/i386/sysdep.h (DOARGS_6): Fix offset.
330
331         * sysdeps/i386/i486/bits/atomic.h: Add catomic_* support.
332
333 2006-10-11  Jakub Jelinek  <jakub@redhat.com>
334
335         * malloc/malloc.c (_int_malloc): Remove unused any_larger variable.
336
337         * nis/nis_defaults.c (__nis_default_access): Don't call getenv twice.
338
339         * nis/nis_subr.c (nis_getnames): Use __secure_getenv instead of getenv.
340         * sysdeps/generic/unsecvars.h: Add NIS_PATH.
341
342 2006-10-11  Ulrich Drepper  <drepper@redhat.com>
343
344         * include/atomic.c: Define catomic_* operations.
345         * sysdeps/x86_64/bits/atomic.h: Likewise.  Fix a few minor problems.
346         * stdlib/cxa_finalize.c: Use catomic_* operations instead of atomic_*.
347         * malloc/memusage.c: Likewise.
348         * gmon/mcount.c: Likewise.
349         * elf/dl-close.c: Likewise.
350         * elf/dl-open.c: Likewise.
351         * elf/dl-profile.c: Likewise.
352         * elf/dl-sym.c: Likewise.
353         * elf/dl-runtime.c: Likewise.
354         * elf/dl-fptr.c: Likewise.
355         * resolv/res_libc.c: Likewise.
356
357 2006-10-10  Ulrich Drepper  <drepper@redhat.com>
358
359         * nis/nis_subr.c (nis_getnames): Add trailing dot to NIS_PATH
360         components which lack them.
361
362         * nis/nis_subr.c (nis_getnames): Make sure that we always return
363         at least one entry consisting of the parameter concatenated with
364         the domain.
365
366 2006-10-10  Roland McGrath  <roland@frob.com>
367
368         * sysdeps/mach/hurd/utimes.c: Use a union to avoid an improper cast.
369         * sysdeps/mach/hurd/futimes.c: Likewise.
370         * sysdeps/mach/hurd/lutimes.c: Likewise.
371
372 2006-10-09  Ulrich Drepper  <drepper@redhat.com>
373             Jakub Jelinek  <jakub@redhat.com>
374
375         Implement reference counting of scope records.
376         * elf/dl-close.c (_dl_close): Remove all scopes from removed objects
377         from the list in objects which remain.  Always allocate new scope
378         record.
379         * elf/dl-open.c (dl_open_worker): When growing array for scopes,
380         don't resize, allocate a new one.
381         * elf/dl-runtime.c: Update reference counters before using a scope
382         array.
383         * elf/dl-sym.c: Likewise.
384         * elf/dl-libc.c: Adjust for l_scope name change.
385         * elf/dl-load.c: Likewise.
386         * elf/dl-object.c: Likewise.
387         * elf/rtld.c: Likewise.
388         * include/link.h: Include <rtld-lowlevel.h>.  Define struct
389         r_scoperec.  Replace r_scope with pointer to r_scoperec structure.
390         Add l_scoperec_lock.
391         * sysdeps/generic/ldsodefs.h: Include <rtld-lowlevel.h>.
392         * sysdeps/generic/rtld-lowlevel.h: New file.
393
394         * include/atomic.h: Rename atomic_and to atomic_and_val and
395         atomic_or to atomic_or_val.  Define new macros atomic_and and
396         atomic_or which do not return values.
397         * sysdeps/x86_64/bits/atomic.h: Define atomic_and and atomic_or.
398         Various cleanups.
399         * sysdeps/i386/i486/bits/atomic.h: Likewise.
400
401         * po/sv.po: Update from translation team.
402
403 2006-10-07  Ulrich Drepper  <drepper@redhat.com>
404
405         * Versions.def: Add GLIBC_2.6 to libpthread.
406
407         * include/shlib-compat.h (SHLIB_COMPAT): Expand parameters before use.
408         (versioned_symbol): Likewise.
409         (compat_symbol): Likewise.
410
411         * po/tr.po: Update from translation team.
412
413 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
414
415         * nis/Banner: Removed.  It's been integral part forever and the
416         author info is incomplete anyway.
417         * libio/Banner: Likewise.
418
419         * nis/nis_table.c (nis_list): If __follow_path fails in the new
420         code, make sure the nis_freeresult call doesn't crash and that the
421         result is reported correctly.
422
423 2006-09-27  Jakub Jelinek  <jakub@redhat.com>
424
425         * nis/nis_table.c (nis_list): Handle FOLLOW_PATH | ALL_RESULTS
426         when callback is NULL.
427
428         * nis/Versions (libnss_nisplus): Add
429         _nss_nisplus_initgroups_dyn@@GLIBC_PRIVATE.
430         * nis/Makefile (libnss_nisplus-routines): Add nisplus-initgroups.
431         * nis/nss_nisplus/nisplus-grp.c (tablename_val, tablename_len,
432         _nss_create_tablename): Rename to...
433         (grp_tablename_val, grp_tablename_len, _nss_grp_create_tablename):
434         ... these.  No longer static.
435         (internal_setgrent): Adjust users.
436         (_nss_nisplus_getgrnam_r, _nss_nisplus_getgrgid_r): Likewise.
437         Don't use locking around _nss_grp_create_tablename call.
438         * nis/nss_nisplus/nisplus-initgroups.c: New file.
439
440 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
441
442         * version.h (VERSION): Bump to 2.5.90 for new development tree.
443
444 2006-10-06  Andreas Jaeger  <aj@suse.de>
445
446         * include/features.h (__GLIBC_MINOR__): It's glibc 2.5 now.
447
448 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
449
450         * po/pl.po: Update from translation team.
451
452         * nscd/nscd.c (main): Fix typo in message.
453         Patch by Jakub Bogsz <qboosh@pld-linux.org>.
454
455 2006-10-02  Jakub Jelinek  <jakub@redhat.com>
456
457         [BZ #3291]
458         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
459         errno.h, signal.h, unistd.h and sysdep-cancel.h.
460         (__sigprocmask): Define.
461
462 2006-10-02  Ulrich Drepper  <drepper@redhat.com>
463
464         * elf/rtld.c (dl_main): Don't use prelinking if LD_DYNAMIC_WEAK is
465         used.
466
467 2006-10-02  Jakub Jelinek  <jakub@redhat.com>
468
469         * nscd/mem.c (mempool_alloc): Round array size to 16 bytes
470         in oldtotal and newtotal calculation.
471         * nscd/nscd-client.h (struct mapped_database): Add datasize
472         field.
473         * nscd/nscd_helper.c (get_mapping): Initialize datasize field.
474         (__nscd_get_map_ref): Get a new mapping even if mapping's data_size
475         increased.
476         (__nscd_cache_search): Add checks to make sure we never reference
477         data beyond the current mapping.
478
479 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
480
481         * sysdeps/posix/getaddrinfo.c (match_prefix): Make mask and val
482         variables const to avoid compiler warnings.
483
484         * io/fts.c (fts_close): Remove redundant checks.
485         (fts_build): Likewise.
486         (fts_palloc): Likewise.
487
488         * manual/message.texi (Advanced gettext functions,
489         Using gettextized software): Fix typos.
490
491 2006-09-30  Ulrich Drepper  <drepper@redhat.com>
492
493         * posix/glob.c (glob_in_dir): Add some comments and asserts to
494         explain why there are no leaks.
495
496 2006-09-29  Ulrich Drepper  <drepper@redhat.com>
497
498         * libio/wmemstream.c: Include <wchar.h>.
499         * libio/bug-wmemstream1.c: Likewise.
500         * libio/tst-wmemstream1.c: Likewise.
501         * libio/tst-wmemstream2.c: Likewise.
502
503         * version.h (RELEASE): Bump to 2.5.
504         * README: Regenerated.
505
506         * locale/iso-3166.def: Add Aaland Islands and Montenegro.
507
508         [BZ #3273]
509         * nscd/nscd_initgroups.c (__nscd_getgrouplist): It is OK to have
510         found no group members.
511         Patch by Petr Baudis.
512
513 2006-09-29  Jakub Jelinek  <jakub@redhat.com>
514
515         * elf/rtld.c (_dl_start_final): If not USE___THREAD, don't
516         assert bootstrap_map.l_tls_modid is zero.
517         (_dl_start): Initialize bootstrap_map.l_tls_modid to 0
518         if USE___THREAD.
519
520 2006-09-27  Ulrich Drepper  <drepper@redhat.com>
521
522         * libio/stdio.h: Move open_wmemstream prototype to ...
523         * wcsmbs/wchar.h: ... here.
524
525 2006-09-25  Jakub Jelinek  <jakub@redhat.com>
526
527         [BZ #3252]
528         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Handle only
529         fchownat syscall and __ASSUME_LCHOWN_SYSCALL case inline, call
530         __{,l}chown to handle the rest.
531         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Handle only
532         fchownat syscall and __ASSUME_32BITUIDS case inline, call
533         __{,l}chown to handle the rest.
534         * sysdeps/unix/sysv/linux/sparc/sparc32/fchownat.c: Include
535         i386/fchownat.c.
536         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c: Likewise.
537         * sysdeps/unix/sysv/linux/sh/fchownat.c: Likewise.
538
539         [BZ #3253]
540         * posix/glob.c (glob_in_dir): Don't alloca one struct globlink at a
541         time, rather allocate increasingly bigger arrays of pointers, if
542         possible with alloca, if too large with malloc.
543
544 2006-09-24  Jakub Jelinek  <jakub@redhat.com>
545
546         * sysdeps/powerpc/fpu/libm-test-ulps: Updated.
547
548         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Fix 2 typos.
549
550 2006-09-24  Ulrich Drepper  <drepper@redhat.com>
551
552         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Implement rule 4,
553         home addresses.
554         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Recognize
555         IFA_F_HOMEADDRESS flag for interfaces.
556         * include/ifaddrs.h (struct in6addrinfo): Define
557         in6ai_homeaddress.
558
559 2006-09-21  Jakub Jelinek  <jakub@redhat.com>
560
561         [BZ #3225]
562         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (PTR_MANGLE3,
563         PTR_DEMANGLE3): Define.
564         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (PTR_MANGLE3,
565         PTR_DEMANGLE3): Likewise.
566         * sysdeps/powerpc/powerpc32/__longjmp-common.S (__longjmp): Use them.
567         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp):
568         Likewise.
569         * sysdeps/powerpc/powerpc64/__longjmp-common.S (__longjmp): Likewise.
570
571 2006-09-20  Jakub Jelinek  <jakub@redhat.com>
572
573         * po/libc.pot: Regenerated.
574         * po/be.po: Updated.
575         * po/ca.po: Likewise.
576         * po/cs.po: Likewise.
577         * po/da.po: Likewise.
578         * po/de.po: Likewise.
579         * po/el.po: Likewise.
580         * po/en_GB.po: Likewise.
581         * po/es.po: Likewise.
582         * po/fi.po: Likewise.
583         * po/fr.po: Likewise.
584         * po/gl.po: Likewise.
585         * po/hr.po: Likewise.
586         * po/hu.po: Likewise.
587         * po/ja.po: Likewise.
588         * po/ko.po: Likewise.
589         * po/nb.po: Likewise.
590         * po/nl.po: Likewise.
591         * po/pl.po: Likewise.
592         * po/pt_BR.po: Likewise.
593         * po/ru.po: Likewise.
594         * po/rw.po: Likewise.
595         * po/sk.po: Likewise.
596         * po/sv.po: Likewise.
597         * po/tr.po: Likewise.
598         * po/zh_CN.po: Likewise.
599         * po/zh_TW.po: Likewise.
600
601         [BZ #3137]
602         * iconv/iconv_prog.c (main): Fix spelling in error message.
603         * iconv/iconvconfig.c (main): Likewise.
604         * locale/programs/ld-collate.c (handle_ellipsis): Likewise.
605         * locale/programs/ld-ctype.c (charclass_symbolic_ellipsis): Likewise.
606         * locale/programs/localedef.c (main): Likewise.
607         * locale/programs/repertoire.c (repertoire_read): Likewise.
608         * timezone/zdump.c (main): Likewise.
609         * nscd/connections.c (handle_request): Fix spelling in log message.
610         Patch by Malcolm Parsons <malcolm.parsons@gmail.com>.
611
612 2006-09-20  Ulrich Drepper  <drepper@redhat.com>
613
614         * inet/inet6_option.c: Also emit linker warnings for the RFC 2292
615         interfaces.
616
617 2006-09-20  Andreas Jaeger  <aj@suse.de>
618
619         * math/libm-test.inc (lrint_test_upward): Fix typo.
620
621 2006-06-17  Joseph S. Myers  <joseph@codesourcery.com>
622
623         [BZ #2592]
624         * math/libm-test.inc (lrint_test_tonearest): New function.
625         (lrint_test_towardzero): New function.
626         (lrint_test_downward): New function.
627         (lrint_test_upward): New function.
628         (main): Run these new tests.
629         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Correct rounding
630         of values near to 0.
631         (two52): Use double not long double.
632         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
633         * sysdeps/ieee754/flt-32/s_llrintf.c (__llrintf): Likewise.
634         (two23): Use float not double.
635         * sysdeps/ieee754/flt-32/s_lrintf.c (__lrintf): Likewise.
636         (two23): Use float not double.
637         * sysdeps/ieee754/ldbl-128/s_llrintl.c (__llrintl): Likewise.
638         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
639         * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Likewise.
640         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
641
642 2006-09-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
643
644         * sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c (__makecontext):
645         Cast sp to unsigned long to avoid compiler warning.
646         Use __makecontext_ret function instead of a trampoline on the stack.
647         (__makecontext_ret): New function.
648         * sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c: Likewise.
649
650 2006-09-19  Jakub Jelinek  <jakub@redhat.com>
651
652         * elf/dl-cache.c (HWCAP_CHECK): If _DL_PLATFORMS_COUNT, but
653         platform == -1, reject any libs with non-zero _DL_HWCAP_PLATFORM
654         bits.
655
656 2006-09-19  Ulrich Drepper  <drepper@redhat.com>
657
658         * elf/dl-close.c (_dl_close): If dependency is not unloaded make
659         sure no reference to the unloaded map's search list remains in the
660         dependency's scope.
661
662 2006-09-16  Jakub Jelinek  <jakub@redhat.com>
663
664         * elf/Makefile: Add rules to build and run unload7 test.
665         * elf/unload7.c: New test.
666         * elf/unload7mod1.c: New file.
667         * elf/unload7mod2.c: New file.
668
669 2006-09-18  Jakub Jelinek  <jakub@redhat.com>
670
671         * sysdeps/unix/sysv/linux/sys/ptrace.h (PT_GETEVENTMSG): Fix pasto.
672         * sysdeps/unix/sysv/linux/s390/sys/ptrace.h (PTRACE_SETOPTIONS,
673         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
674         * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h (PTRACE_SETOPTIONS,
675         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
676         * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h (PTRACE_SETOPTIONS,
677         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
678         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h (PTRACE_SETOPTIONS,
679         PTRACE_GETEVENTMSG): Likewise.
680         (PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Change to the arch independent
681         values.
682
683 2006-09-17  Mike Frysinger  <vapier@gentoo.org>
684
685         * sysdeps/unix/sysv/linux/sys/ptrace.h (PTRACE_SETOPTIONS,
686         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
687         * sysdeps/unix/sysv/linux/ptrace.c (ptrace): Check PTRACE_SETOPTIONS,
688         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO and PTRACE_SETSIGINFO.
689
690 2006-09-16  Jakub Jelinek  <jakub@redhat.com>
691
692         * sysdeps/powerpc/powerpc32/register-dump.h (register_dump): Don't
693         write '\0' to the fd.
694         * sysdeps/mach/hurd/powerpc/register-dump.h (register_dump): Likewise.
695         * sysdeps/powerpc/powerpc64/register-dump.h (register_dump): Likewise.
696         Change regs to unsigned long pointer from unsigned int, fix fscr
697         offset.
698
699 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
700
701         * io/Makefile (CFLAGS-fstatat.c): Set.
702         (CFLAGS-fstatat64.c): Likewise.
703         (CFLAGS-mknodat.c): Likewise.
704
705         * sysdeps/ieee754/ldbl-128ibm/s_llrintl.c: Comment fixes.
706         * sysdeps/ieee754/ldbl-128ibm/s_llroundl.c: Likewise.
707         * sysdeps/ieee754/ldbl-128ibm/s_lrintl.c: Rewritten.
708         * sysdeps/ieee754/ldbl-128ibm/s_lroundl.c: Rewritten.
709
710 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
711             Steven Munroe  <sjmunroe@us.ibm.com>
712
713         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 4 new cap
714         names to the beginning.  Rename "cell" to "cellbe".
715         (_dl_powerpc_platforms): New.
716         * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
717         (HWCAP_IMPORTANT): Remove power{4,5,5+} and cell.
718         (_DL_PLATFORMS_COUNT, _DL_FIRST_PLATFORM): Define.
719         (_DL_HWCAP_PLATFORM): Define to new mask.
720         (_dl_platform_string, _dl_string_platform): New functions.
721         * sysdeps/powerpc/sysdep.h (PPC_FEATURE_BOOKE, PPC_FEATURE_SMT,
722         PPC_FEATURE_ICACHE_SNOOP, PPC_FEATURE_ARCH_2_05): Define.
723
724 2006-09-12  Jakub Jelinek  <jakub@redhat.com>
725
726         [BZ #2526]
727         * README.libm: Fix a thinko in sqrt algorithm description.
728
729         [BZ #3143]
730         * manual/string.texi (argz_delete): Fix prototype.
731         Patch by <alpt@freaknet.org>.
732
733 2006-08-26  Joseph Myers  <joseph@codesourcery.com>
734
735         [BZ #3138]
736         * io/test-lfs.c (do_prepare): Give name_len type size_t.
737         * io/tst-fcntl.c (do_prepare): Likewise.
738         * posix/tst-exec.c (do_prepare): Likewise.
739         * posix/tst-preadwrite.c (do_prepare): Likewise.
740         * posix/tst-spawn.c (do_prepare): Likewise.
741         * posix/tst-truncate.c (do_prepare): Likewise.
742         * rt/tst-aio.c (do_prepare): Likewise.
743         * rt/tst-aio64.c (do_prepare): Likewise.
744         * stdlib/test-canon2.c (do_prepare): Give test_dir_len type
745         size_t.
746
747 2006-09-09  Ulrich Drepper  <drepper@redhat.com>
748
749         [BZ #2821]
750         * time/mktime.c (guess_time_tm): Fix overflow detection.
751         * time/Makefile (tests): Add bug-mktime1.
752         * time/bug-mktime1.c: New file.
753
754         [BZ #3189, #3188]
755         * misc/sys/mman.h (remap_file_pages): Make available for _GNU_SOURCE.
756         (mremap): Likewise.
757
758 2006-09-07  Jakub Jelinek  <jakub@redhat.com>
759
760         [BZ #1006]
761         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela):
762         Ensure relocation doesn't clobber any bits outside of the
763         immediate field for R_SPARC_TLS_LE_HIX22, R_SPARC_WDISP30,
764         R_SPARC_HI22 and R_SPARC_H44.
765
766         [BZ #2775]
767         * malloc/malloc.c (sYSMALLOc): Only call grow_heap if
768         (long) (MINSIZE + nb - old_size) is positive.
769
770         * malloc/arena.c (grow_heap): When growing bail even if new_size
771         is negative.
772
773         [BZ #3155]
774         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S (__lrint): Don't access
775         stack below r1.
776
777 2006-09-06  Jakub Jelinek  <jakub@redhat.com>
778
779         * posix/regex_internal.c (re_string_reconstruct): Handle
780         offset < pstr->valid_raw_len && pstr->offsets_needed case.
781         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
782         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
783         re_string_context_at.
784         * posix/Makefile: Add rules to build and run bug-regex26 test.
785         * posix/bug-regex26.c: New test.
786
787         * locale/programs/ld-collate.c (collate_read): Goto sym_equiv_free
788         rather than col_sym_free.  Move seqp declaration earlier.
789
790         * resolv/gai_suspend.c (gai_suspend): Make sure result is initialized.
791
792 2006-09-05  Jakub Jelinek  <jakub@redhat.com>
793
794         * nscd/initgrcache.c (addinitgroupsX): Move any_success
795         decl before first goto out.
796
797 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
798
799         * Makerules (shlib.lds): If have-hash-style, put .hash section
800         at the end of the RO segment.
801
802 2006-09-04  Ulrich Drepper  <drepper@redhat.com>
803
804         * elf/do-lookup.h (do_lookup_x): Initialize symidx in case the new
805         style hash table format is used.
806
807 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
808
809         * resolv/res_mkquery.c (res_nmkquery): Set hp->id to statp->id after
810         randomization rather than before.
811         * resolv/res_init.c (res_randomid): Don't call gettimeofday here.
812
813 2006-08-31  Jakub Jelinek  <jakub@redhat.com>
814
815         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Add ld.so.
816
817         * malloc/malloc.c (_int_malloc): Use full list insert and not
818         shortcut which assumes the list is empty for large requests
819         too.
820
821         * elf/tst-addr1.c (do_test): Allow i.dli_sname "_IO_printf".
822
823 2006-08-30  Jakub Jelinek  <jakub@redhat.com>
824
825         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (splice): Add offin
826         and offout arguments to the prototype.
827         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (splice): Likewise.
828         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (splice): Likewise.
829         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (splice): Likewise.
830         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (splice): Likewise.
831         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (splice): Likewise.
832         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (splice): Likewise.
833         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (splice): Likewise.
834         * sysdeps/unix/sysv/linux/syscalls.list (splice): Adjust args string.
835
836 2006-08-28  Ulrich Drepper  <drepper@redhat.com>
837
838         * elf/dl-load.c (_dl_init_paths): Expand DSTs.
839
840         * elf/dl-open.c (dl_open_worker): Allow $LIB and $PLATFORM in
841         dlopen parameters.
842
843 2006-08-28  Jakub Jelinek  <jakub@redhat.com>
844
845         * inet/getnameinfo.c (getnameinfo): For AF_INET, check errno
846         only if herrno is NETDB_INTERNAL.  Handle errors other than
847         ERANGE outside of the loops, handle TRY_AGAIN.
848
849         * locale/programs/ld-ctype.c (translit_flatten): Issue error
850         if other's ctype category was missing.
851         * locale/programs/ld-collate.c (collate_read): Return if
852         copy_locale's collate category is missing.
853
854 2006-08-27  Ulrich Drepper  <drepper@redhat.com>
855
856         [BZ #2684]
857         * malloc/malloc.c (public_rEALLOc): Try harder by using other
858         arenas if allocation failed.
859         Patch mostly by Jan Edler <jan.edler@indexengines.com>.
860
861 2006-08-26  Ulrich Drepper  <drepper@redhat.com>
862
863         * malloc/malloc.c (bin_at): Rewrite to be more clear and to not
864         waste bins[0..1].
865         (malloc_state): Reduce bins size by 2.
866         (_int_malloc): Fix test for large enough buffer for early termination.
867         When no unsorted block matches perfectly and an exiting block has
868         to be split, use full list insert and not shortcut which assumes
869         the list is empty.
870
871         * locale/programs/ld-ctype.c (ctype_read): Better patch for read
872         failure.
873
874 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
875
876         * locale/programs/ld-ctype.c (ctype_read): If CTYPE is NULL, don't
877         do anything.
878
879         * sysdeps/generic/ldsodefs.h (DL_ADDR_SYM_MATCH): For undefined
880         symbol require exact match (these are PLTs).
881         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
882         (_dl_ppc64_addr_sym_match): Likewise.
883
884         [BZ #2683]
885         * elf/dl-addr.c (_dl_addr): Don't ignore all undefined symbols.
886         If symbol has a value use it.
887         * elf/tst-dladdr1.c: New file.
888         * elf/Makefile: Add rules to build and run tst-addr1.
889
890 2006-08-24  Jakub Jelinek  <jakub@redhat.com>
891
892         * malloc/malloc.c (sYSMALLOc): Avoid infinite loop if MMAP
893         keeps failing and heap growth or new heap creation isn't
894         successful either.
895         * malloc/tst-malloc.c (main): Add new tests.
896
897 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
898
899         [BZ #2734]
900         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use same conditions
901         as in the x86-64 code to use bswap.
902
903 2006-05-21  Joseph S. Myers  <joseph@codesourcery.com>
904
905         [BZ #2680]
906         * posix/unistd.h (getlogin_r): Condition on __USE_POSIX199506, not
907         __USE_UNIX98.
908         * posix/bits/unistd.h: Likewise.
909
910 2006-05-15  Mike Frysinger  <vapier@gentoo.org>
911
912         [BZ #2751]
913         * string/strchr.c: Add cast to avoid warning.
914
915 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
916
917         * malloc/malloc.c (DEFAULT_MMAP_THRESHOLD_MAX): For 32-bit
918         platforms define as 512K.  For 64-bit platforms as 32MB.  The lower
919         limit is needed to avoid the exploding of the address space
920         requirement for secondary heaps.
921         * malloc/arena.c (HEAP_MAX_SIZE): Define using
922         DEFAULT_MMAP_THRESHOLD_MAX if it is defined.
923
924 2006-07-30  Joseph S. Myers  <joseph@codesourcery.com>
925
926         [BZ #3018]
927         * Makerules (depfiles): Handle extra-test-objs the same as
928         extra-objs.
929         (common-mostlyclean): Likewise.
930         * dlfcn/Makefile (extra-objs): Add modules to extra-test-objs
931         instead.
932         * elf/Makefile (extra-objs): Likewise.
933         * stdlib/Makefile (extra-objs): Likewise.
934
935 2006-08-14  Eric Blake  <ebb9@byu.net>
936
937         [BZ #3044]
938         * misc/error.h: Assume C89 or better.
939         * misc/error.c: Likewise.
940
941 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
942
943         [BZ #3040]
944         * sysdeps/unix/sysv/linux/openat.c: Fix compilation if
945         __ASSUME_ATFCTS is defined.
946
947 2006-08-19  Ulrich Drepper  <drepper@redhat.com>
948
949         * malloc/malloc.c (_int_malloc): Limit number of unsorted blocks
950         to sort in each call.
951
952         * nis/nss_nis/nis-service.c (internal_nis_getservent_r): . If map
953         is empty simply return and use next service.
954         * nis/nss_nis/nis-rpc.c (internal_nis_getrpcent_r): Likewise.
955
956         * locale/programs/charmap.c (charmap_read): Add new parameter.  It
957         tells us when not finding a charmap file is an error.
958         * locale/programs/charmap.h: Adjust charmap_read prototype.
959         * iconv/iconv_prog.c (main): Tell charmap_read it's no error if we
960         cannot find a charmap.
961         * locale/programs/localedef.c (main): Adjust charmap_read call.
962
963 2006-08-15  Jakub Jelinek  <jakub@redhat.com>
964
965         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Use
966         sysdeps/posix/pause.c implementation instead.
967
968 2006-08-09  Jakub Jelinek  <jakub@redhat.com>
969
970         * sysdeps/unix/nice.c (nice): Transform EACCES errno from setpriority
971         to EPERM.
972
973 2006-08-13  Andreas Schwab  <schwab@suse.de>
974
975         * sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_runtime_resolve):
976         Don't clobber caller's LRSAVE.
977         (_dl_prof_resolve): Likewise.
978
979 2006-08-14  Ulrich Drepper  <drepper@redhat.com>
980
981         [BZ #1996]
982         * libio/memstream.c (open_memstream): Allocate initial buffer with
983         calloc.
984         * libio/wmemstream.c (open_wmemstream): Likewise.
985         * libio/strops.c: Pretty printing.
986         (_IO_str_overflow): Clear uninitialized part of the new buffer.
987         (enlarge_userbuf): New function.
988         (_IO_str_seekoff): Call it if seek position is larger than current
989         buffer.
990         * libio/wstrops.c: Likewise.
991         * libio/vasprintf.c: Add comment as to why we do not have to use
992         calloc instead of malloc to allocate initial buffer.
993         * libio/Makefile (tests): Add bug-memstream1 and bug-wmemstream1.
994         * libio/bug-memstream1.c: New file.
995         * libio/bug-wmemstream1.c: New file.
996
997 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
998
999         * libio/wstrops.c: Remove dead macro definitions and comments.
1000         * libio/strops.c: Likewise.
1001
1002         [BZ #2764]
1003         * login/utmpname.c (__utmpname): Remove unnecessary test.
1004
1005 2006-06-08  Joseph Myers  <jsm28@gcc.gnu.org>
1006
1007         [BZ #2832]
1008         * math/gen-libm-test.pl (clean_up_number): Do not remove trailing
1009         0s from integers.
1010
1011 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
1012
1013         [BZ #2987]
1014         * sysdeps/unix/sysv/linux/clock_settime.c: Add code to use syscall
1015         for CPU clocks.
1016         * sysdeps/unix/clock_settime.c: Add support for platform-specific
1017         setting of CPU clocks.
1018
1019 2006-06-23  Paul Eggert  <eggert@cs.ucla.edu>
1020
1021         [BZ #2841]
1022         * sysdeps/generic/stdint.h (UINT8_C, UINT16_C): Don't append 'U',
1023         since C99 requires the result to promote to 'int' when uint_least8_t
1024         and uint_least16_t promote to 'int'.
1025
1026 2006-08-12  Ulrich Drepper  <drepper@redhat.com>
1027
1028         [BZ #3013]
1029         * locale/programs/ld-ctype.c (ctype_output): Adjust alignments, fix
1030         lenght of one output field, correct bitmask creation.
1031         * locale/programs/ld-time.c: Add alignment.
1032
1033         [BZ #2997]
1034         * misc/error.c: Add space between program name and message if file
1035         name is missing.
1036
1037 2006-08-03  Eric Blake  <ebb9@byu.net>
1038
1039         [BZ #2998]
1040         * misc/error.c (error_tail) [_LIBC]: Avoid invalid free.
1041
1042 2006-08-09  Ulrich Drepper  <drepper@redhat.com>
1043
1044         * malloc/memusagestat.c: Silence warnings.
1045
1046         * malloc/malloc.c: Dynamically size mmap treshold if the program
1047         frees mmaped blocks.
1048         Patch by Valerie Henson and Arjan van de Ven.
1049
1050 2006-08-08  Jakub Jelinek  <jakub@redhat.com>
1051
1052         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_DIRECT): Protect with
1053         __USE_GNU.
1054
1055         * stdlib/strtol_l.c (__strtol_ul_max_tab, __strtol_ul_rem_tab,
1056         __strtol_ull_max_tab, __strtol_ull_rem_tab): Declare.
1057         (DEF): Don't put the var into .gnu.linkonce.r.* section.
1058         Only provide var definitions in strtol_l (or for *ull*
1059         in strtoll_l).
1060
1061         * stdio-common/bug16.c (tests): New array.
1062         (do_tests): Allow the first hexadecimal digit
1063         to be 1, 2, 4 or 8.  Do 3 additional tests.
1064
1065         * sysdeps/s390/fpu/libm-test-ulps: Update.
1066
1067         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c (fchownat): Use
1068         fchownat syscall if available.
1069         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Likewise.
1070         * sysdeps/unix/sysv/linux/sh/fchownat.c (fchownat): Likewise.
1071         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Likewise.
1072
1073 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
1074
1075         * nis/nis_xdr.c: Avoid some function calls.
1076
1077 2006-08-07  Jakub Jelinek  <jakub@redhat.com>
1078             Ulrich Drepper  <drepper@redhat.com>
1079
1080         * nis/nis_call.c (rec_dirsearch) [case LOWER_NAME]: Don't take
1081         short cut if only one name component is stripped away.
1082
1083 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
1084
1085         * nis/nis_call.c: Minor cleanups throughout.
1086         (rec_dirsearch) [case HIGHER_NAME]: Correctly size ndomain array.
1087         (first_shoot): Add search_parent_first parameter.  Only if it is set
1088         search parent server first.
1089         If directory for table found through cold start cache is not the same
1090         as referenced in the cache, don't use it.
1091         (__nisfind_server): Take additional parameter.  Pass it on to
1092         first_shoot.
1093         (__prepare_niscall): Adjust __nisfind_server call.
1094         * nis/rpcsvc/nislib.h: Adjust __nisfind_server prototype.
1095         * nis/nis_table.c: Adjust __nisfind_server call.
1096         * nis/nis_lookup.c: Likewise.
1097         (nis_lookup): Don't loop endlessly if name is reduced to ".".
1098
1099 2006-08-03  Ulrich Drepper  <drepper@redhat.com>
1100
1101         [BZ #2182]
1102         * math/s_cacosh.c: Return values from positive branch.
1103         * math/s_cacoshf.c: Likewise.
1104         * math/s_cacoshl.c: Likewise.
1105
1106         [BZ #2883]
1107         * sysvipc/sys/msg.h: Change return value to ssize_t.
1108         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
1109         * sysvipc/msgrcv.c: Likewise.
1110         * include/sys/msg.h: Likewise.
1111
1112         * grp/initgroups.c (internal_getgrouplist): Remove unnecessary
1113         test introduced in patch for bz #661.
1114         (getgrouplist): Simplify code a bit.  Don't allocate one additional
1115         element for NEWGROUPS.
1116
1117         [BZ #2908]
1118         * stdio-common/printf_fphex.c (__printf_fphex): When rounding up
1119         'f', use '1' as leading digit not '\1'.
1120         * stdio-common/Makefile (tests): Add bug16.
1121         * stdio-common/bug16.c: New file.
1122
1123         [BZ #2914]
1124         * sysdeps/unix/sysv/linux/gethostid.c: Don't define OLD_HOSTIDFILE
1125         and don't try to open it.  The patch introducing the macro
1126         contained a bug and used the same file name as the new file
1127         instead of using /var/adm/hostid.  Nobody complaint so I'm taking
1128         this out completely.
1129
1130         [BZ #2926]
1131         * assert/assert.h: Move cast to void inside ?: to quiet gcc.
1132         Patch by Jerry James <Jerry.James@usu.edu>.
1133
1134         * rt/Makefile (tests): Add tst-clock2.
1135         * rt/tst-clock2.c: New file.
1136
1137         [BZ #2978]
1138         * resolv/gai_notify.c (__gai_notify_only): Copy memory for thread
1139         function and its parameters and pass it to new thread.
1140         (__gai_notify): Add support for alternative waiting for completion.
1141         * resolv/gai_suspend.c (gai_suspend): Add support for alternative
1142         waiting for completion.
1143         * resolv/getaddrinfo_a.c: Likewise.
1144         * resolv/gai_misc.h (struct waitlist): Don't add cond if alternative
1145         waiting for completion is used.
1146         * resolv/gai_misc.c: Allow overwriting code to start helper thread.
1147         * resolv/gai_cancel.c: Include <gai_misc.h> not "gai_misc.h".
1148         * resolv/gai_error.c: Likewise.
1149         * resolv/gai_sigqueue.c: Likewise.
1150
1151 2006-08-02  Thomas Schwinge  <tschwinge@gnu.org>
1152
1153         * hurd/getdport.c (__getdport): Don't return EBADF; instead set
1154         errno to EBADF and return MACH_PORT_NULL.
1155
1156 2006-06-23  Joseph Myers  <joseph@codesourcery.com>
1157
1158         [BZ #2980]
1159         * posix/Makefile (CFLAGS-waitid.c): Add -fasynchronous-unwind-tables.
1160
1161 2006-08-02  Ulrich Drepper  <drepper@redhat.com>
1162
1163         * elf/dl-addr.c (_dl_addr): If GNU-style hash tables are present,
1164         walk them instead of the symbol table.
1165
1166 2006-08-01  Ulrich Drepper  <drepper@redhat.com>
1167
1168         [BZ #2098]
1169         * nscd/initgrcache.c (addinitgroupsX): Judge successful lookups by
1170         status of NSS calls, not the number of returned entries.
1171
1172         * sysdeps/unix/sysv/linux/syscalls.list: Remove add_key,
1173         request_key, keyctl.
1174
1175 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
1176
1177         * sysdeps/unix/sysv/linux/dl-osinfo.h: Remove unnecessary include.
1178
1179 2006-07-16  Jeff Bailey  <jbailey@ubuntu.com>
1180
1181         * elf/tst-auditmod1.c: Fix typo in #error.
1182
1183 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
1184
1185         * elf/tst-auditmod1.c: Remove code for unsupported architectures.
1186
1187         * iconvdata/run-iconv-test.sh: Run cmp in C locale.
1188
1189 2006-07-20  Adam Nemet  <anemet@caviumnetworks.com>
1190
1191         * stdlib/test-canon.c (do_test): Close fd before unlinking file so
1192         that the directory is empty even on non-POSIX filesystems.
1193
1194 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
1195
1196         * elf/dl-open.c (dl_open_worker): Add branch prediction.
1197
1198         * nis/nss_compat/compat-grp.c: Avoid unnecessary setgrent calls into
1199         the backend NSS module.  If backend setgrent call failed, don't have
1200         internal_setgrent fail.  Just remember this until it is needed.
1201         * nis/nss_compat/compat-pwd.c: Likewise.
1202         * nis/nss_compat/compat-spwd.c: Likewise.
1203
1204 2006-07-30  Roland McGrath  <roland@redhat.com>
1205
1206         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: File removed.
1207         * sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: File removed.
1208         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: File removed.
1209         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: File removed.
1210
1211         * sysdeps/unix/sysv/linux/not-cancel.h (pause_not_cancel): New macro.
1212         (nanosleep_not_cancel): New macro.
1213         (sigsuspend_not_cancel): new macro.
1214         * sysdeps/unix/sysv/linux/sigsuspend.c [__ASSUME_REALTIME_SIGNALS]
1215         (do_sigsuspend): Define as inline.
1216         (__sigsuspend): Always use do_sigsuspend.
1217         [! NO_CANCELLATION] (__sigsuspend_nocancel): New function.
1218         * include/signal.h: Declare __sigsuspend_nocancel.
1219         * sysdeps/posix/pause.c
1220         [! NO_CANCELLATION] (__pause_nocancel): New function.
1221
1222         * include/unistd.h (__pause_nocancel): Add attribute_hidden.
1223         * include/time.h (__nanosleep_nocancel): Likewise.
1224
1225 2006-07-30  Ulrich Drepper  <drepper@redhat.com>
1226
1227         * locale/programs/localedef.c (add_to_readlist): Rename local
1228         variables to avoid confusion.
1229
1230         * locale/programs/charmap.c (charmap_read): Emit error message if
1231         charmap couldn't be found or read.
1232
1233 2006-07-28  Ulrich Drepper  <drepper@redhat.com>
1234
1235         * sysdeps/unix/sysv/linux/kernel-features.h: Define
1236         __ASSUME_FUTEX_LOCK_PI.
1237         * include/time.h: Declare __nanosleep_nocancel.
1238         * include/unistd.h: Declare __pause_nocancel.
1239
1240         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Use this instead of
1241         LDFLAGS.  Add -lgcc_eh and libc_nonshared (again) to make sure we
1242         get the __stack_chk_fail_local definition when it's needed.
1243
1244 2006-07-26  Ulrich Drepper  <drepper@redhat.com>
1245
1246         * dlfcn/Makefile: Add rules to build and run bug-atexit3.
1247         * dlfcn/bug-atexit3.c: New file.
1248         * dlfcn/bug-atexit3-lib.cc: New file.
1249
1250         * dlfcn/dlmopen.c (dlmopen_doit): Don't allow RTLD_GLOBAL to be
1251         used when the namespace is not the base namespace.
1252
1253 2006-07-26  Gavin Romig-Koch  <gavin@redhat.com>
1254
1255         * stdlib/cxa_atexit.c (__new_exitfn_called): New variable.
1256         (__new_exitfn): Bump it in every successful call.
1257         * stdlib/cxa_finalize.c (__cxa_finalize): If destructor registered
1258         more exit handlers, call them right away.
1259         * stdlib/exit.h: Declare __new_exitfn_called.
1260
1261 2006-07-25  Ulrich Drepper  <drepper@redhat.com>
1262
1263         * stdlib/cxa_finalize.c (__cxa_finalize): Fix race condition when
1264         calling registered handler.
1265
1266         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Fix comment.
1267         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1268         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
1269         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1270         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1271         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1272         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
1273         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1274
1275 2006-07-10  Ulrich Drepper  <drepper@redhat.com>
1276
1277         * elf/dl-lookup.c (dl_new_hash): New functions.
1278         (_dl_lookup_symbol_x): Rename hash to old_hash and don't compute
1279         value here.  Compute new-style hash value.  Pass new hash value
1280         and reference to variable with the old value to do_lookup_x.
1281         (_dl_setup_hash): If DT_GNU_HASH is defined, use it and not
1282         old-style hash table.
1283         (_dl_debug_bindings): Pass new hash value and reference to variable
1284         with the old value to do_lookup_x.
1285         * elf/do-lookup.h (do_lookup_x): Accept additional parameter with
1286         new-style hash value and change old-style hash value parameter to
1287         be a reference.  Reoganize functions to determine whether
1288         new-style hash table is available.  Only fall back on old-style
1289         table.  If old-style hash value is needed, compute it here.
1290         * elf/dynamic-link.h (elf_get_dynamic_info): Relocate DT_GNU_HASH
1291         entry.
1292         * elf/elf.h: Define SHT_GNU_HASH, DT_GNU_HASH, DT_TLSDEC_PLT,
1293         DT_TLSDEC_GOT.  Adjust DT_ADDRNUM.
1294         * include/link.h (struct link_map): Add l_gnu_bitmask_idxbits,
1295         l_gnu_shift, l_gnu_bitmask, l_gnu_buckets and l_gnu_chain_zero.
1296         * Makeconfig: If linker supports --hash-style option add it to all
1297         linker command lines to build DSOs.
1298         * config.make.in: Define have-hash-style.
1299         * configure.in: Test whether linker supports --hash-style option.
1300
1301         * elf/dl-misc.c (_dl_name_match_p): Make MAP parameter const.
1302         * sysdeps/generic/ldsodefs.h: Adjust prototype.
1303
1304 2006-06-27  Ulrich Drepper  <drepper@redhat.com>
1305
1306         * elf/dl-load.c (open_path): Fix test to determine whether DSO is
1307         auditing.
1308
1309         * elf/dl-load.c (_dl_map_object): Try harder to avoid looking at
1310         RPATH of main map twice.
1311
1312 2006-06-22  Ulrich Drepper  <drepper@redhat.com>
1313
1314         * intl/dcigettext.c (DCIGETTEXT): If _nl_find_msg returns -1 don't
1315         look further, return original strings.
1316         (_nl_find_msg): Do not return found translation if the conversion
1317         failed.  Either signal the string is unusable or that something went
1318         wrong and the original should be used.
1319
1320 2006-06-21  Ulrich Drepper  <drepper@redhat.com>
1321
1322         * string/_strerror.c (__strerror_r): Add __builtin_expect.
1323
1324 2006-06-14  Jakub Jelinek  <jakub@redhat.com>
1325
1326         [BZ #2766]
1327         * misc/insremque.c (insque): Handle prev == NULL.
1328         * misc/Makefile (tests): Add tst-insremque.
1329         * misc/tst-insremque.c: New test.
1330
1331 2006-06-17  Ulrich Drepper  <drepper@redhat.com>
1332
1333         [BZ #2792]
1334         * elf/dl-deps.c (expand_dst): Rename __cnt variable to not
1335         conflict with DL_DST_REQUIRED.
1336
1337 2006-06-16  Ulrich Drepper  <drepper@redhat.com>
1338
1339         * nis/nis_subr.c (nis_getnames): Fix the implementation to better
1340         match what Solaris does.
1341
1342 2006-06-04  Ulrich Drepper  <drepper@redhat.com>
1343
1344         * sysdeps/posix/spawni.c (__spawni): Use local_seteuid and
1345         local_setegid instead of seteuid and setegid.
1346         * sysdeps/generic/local-setxid.h: New file.
1347         * sysdeps/unix/sysv/linux/local-setxid.h: New file.
1348
1349         * sysdeps/posix/spawni.c (__spawni): Use non-cancelable interfaces.
1350
1351         * string/Makefile (tests): Add bug-envz1.
1352         * string/bug-envz1.c: New file.
1353
1354 2006-06-02  Jakub Jelinek  <jakub@redhat.com>
1355
1356         * posix/regex_internal.c (re_string_skip_chars): If no character has
1357         been converted at all, set *last_wc to WEOF.  If mbrtowc failed, set wc
1358         to the byte which couldn't be converted.
1359         (re_string_reconstruct): Don't clear valid_raw_len before calling
1360         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
1361         tip_context using re_string_context_at.
1362         * posix/Makefile: Add rules to build and run bug-regex25 test.
1363         * posix/bug-regex25.c: New test.
1364
1365 2006-06-02  Ryan S. Arnold  <rsa@us.ibm.com>
1366
1367         [BZ #2703]
1368         * string/envz.c (envz_strip): Correct erroneously reversed src
1369         and dest parameters to memmove() invocation.
1370
1371 2006-05-30  Jakub Jelinek  <jakub@redhat.com>
1372
1373         * nscd/nscd.h (prune_cache): Add fd argument to prototype.
1374         * nscd/nscd.c (parse_opt): Read response from INVALIDATE request
1375         to make sure the database has been already invalidated.
1376         * nscd/cache.c (prune_cache): Add fd argument.  Write response to fd
1377         after the cache has been invalidated.  Use pthread_mutex_lock rather
1378         than pthread_mutex_trylock if fd != -1.
1379         * nscd/connections.c (invalidate_cache): Add fd argument, write
1380         response to fd if not calling prune_cache, pass fd to prune_cache.
1381         (handle_request): Adjust invalidate_cache caller.
1382         (nscd_run): Pass -1 as fd to prune_cache.
1383
1384 2006-05-30  Ulrich Drepper  <drepper@redhat.com>
1385
1386         * sysdeps/posix/getaddrinfo.c (gaiconf_init): Initialize bits in
1387         the correct place.
1388
1389 2006-05-29  Ulrich Drepper  <drepper@redhat.com>
1390
1391         * nscd/nscd.h (struct database_dyn): Add prunelock field.
1392         * nscd/cache.c (prune_cache): Take prunelock before starting the
1393         work.  Just return in case it is already taken.
1394         * nscd/connections.c (dbs): Initialize .prunelock.
1395
1396 2006-05-25  Ulrich Drepper  <drepper@redhat.com>
1397
1398         * nis/nis_removemember.c (nis_removemember): Avoid unnecessary
1399         copying.  No need to allocate new array for group members.  Just
1400         move the pointers and update the size.
1401
1402         * nis/nis_addmember.c (nis_addmember): Avoid unnecessary copying.
1403         Avoid memory leak in case realloc fails.  Simplification for
1404         better code generation.
1405
1406         Avoid deprecation warning because of libc_hidden_proto for
1407         inet6_option_alloc.
1408         * inet/inet6_option.c (option_alloc): Renamed from
1409         inet6_option_alloc.  Made static.
1410         (inet6_option_alloc): Now a simple wrapper around option_alloc.
1411         (inet6_option_append): Call option_alloc.
1412         * include/netinet/in.h: Remove libc_hidden_proto for
1413         inet6_option_alloc.
1414
1415         * nis/nis_callback.c (__nis_create_callback): Always call xdr_free
1416         for cleanup when cb!=NULL [Coverity CID 233].
1417
1418 2006-05-24  Ulrich Drepper  <drepper@redhat.com>
1419
1420         [BZ #2693]
1421         * inet/Makefile (routines): Add inet6_opt and inet6_rth.
1422         * inet/Versions (libc, GLIBC_2.5): Add inet6_opt_init,
1423         inet6_opt_append, inet6_opt_finish, inet6_opt_set_val, inet6_opt_next,
1424         inet6_opt_find, inet6_opt_get_val, inet6_rth_space, inet6_rth_init,
1425         inet6_rth_add, inet6_rth_reverse, inet6_rth_segments,
1426         and inet6_rth_getaddr.
1427         * inet/netinet/ip6.h (struct ip6_rthdr0): Make ip6r0_addr a flexible
1428         array.
1429         * inet/netinet/in.h (struct ip6_mtuinfo): Define.
1430         Mark inet6_option_* interfaces as deprecated.
1431         Declare inet6_opt_init, inet6_opt_append, inet6_opt_finish,
1432         inet6_opt_set_val, inet6_opt_next, inet6_opt_find, inet6_opt_get_val,
1433         inet6_rth_space, inet6_rth_init, inet6_rth_add, inet6_rth_reverse,
1434         inet6_rth_segments, and inet6_rth_getaddr.
1435         * inet/inet6_opt.c: New file.
1436         * inet/inet6_rth.c: New file.
1437
1438         * inet/netinet/icmp6.h: Pretty printing.
1439
1440         [BZ #2683]
1441         * elf/dl-addr.c (_dl_addr): Don't match undefined references.
1442
1443 2006-05-23  Ulrich Drepper  <drepper@redhat.com>
1444
1445         * nis/nis_lookup.c (nis_lookup): Use __prepare_niscall instead of
1446         doing it all here.  When server does not know the answer do not
1447         fail immediate, try parent first.
1448
1449         * nis/nis_domain_of_r.c (nis_domain_of_r): Add missing buffer
1450         overflow test.
1451
1452 2006-05-20  Ulrich Drepper  <drepper@redhat.com>
1453
1454         * nis/nis_call.c (__prepare_niscall): New function.  Split out
1455         from __do_niscall.
1456         * nis/nis_table.c (__create_ib_request): Renamed from create_ib_request
1457         and exported.
1458         (__follow_path): New function.  Split out from nis_list.
1459         * nis/nis_xdr.h: Add libnsl_hidden_proto for _xdr_ib_request and
1460         _xdr_nis_result.
1461         * nis/nis_xdr.c: Add libnsl_hidden_def for _xdr_ib_request and
1462         _xdr_nis_result.
1463         * nis/libnsl.h: Declare __prepare_niscall, __create_ib_request,
1464         and __follow_path.
1465         * nis/Versions: Export __prepare_niscall, __create_ib_request,
1466         __follow_path, __do_niscall3, _xdr_ib_request, and _xdr_nis_result
1467         from libnsl for version GLIBC_PRIVATE.
1468         * nis/nisplus-parser.h: Remove _nss_nisplus_parse_pwent_chk.
1469         Remove entry parameter from _nss_nisplus_parse_pwent and
1470         _nss_nisplus_parse_grent.
1471         * nis/nss_nisplus/nisplus-parser.c: Likewise.
1472         * nis/nss_nisplus/nisplus-pwd.c: Remove support for SETENT_BATCH_READ
1473         again.  Rewrite getpwent handling to not use nis_first_entry and
1474         nis_next_entry.  Roll out own niscall handling.
1475         * nis/nss_nisplus/nisplus-grp.c: Likewise.
1476
1477         * sunrpc/xdr_rec.c: Fix typo in comment.
1478
1479 2006-05-19  Ulrich Drepper  <drepper@redhat.com>
1480
1481         * nis/nis_call.c (__do_niscall3): Avoid code duplication in error
1482         handling.
1483
1484         * nis/nis_callback.c (internal_nis_do_callback): Don't use malloc
1485         to allocate memory for my_pollfd.  Better initialization of
1486         cb_is_running.  Use TEMP_FAILURE_RETRY.
1487
1488         * malloc/memusage.sh (memusageso): Add quotes.
1489         (memusagestat): Likewise.
1490         * debug/xtrace.sh (pcprofileso): Likewise.
1491         (pcprofiledump): Likewise.
1492         * debug/Makefile ($(objpfx)xtrace): Use $LIB in SLIBDIR
1493         replacement.
1494         * malloc/Makefile ($(objpfx)memusage): Likewise.
1495
1496         * nis/nis_callback.c (__nis_create_callback): Calls to
1497         svcudp_bufcreate and svctcp_create can fail.  Free ->xprt if
1498         asprintf call fails.
1499
1500         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_sendreq): Make sure
1501         no uninitialized memory is passed to sendto.
1502
1503 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
1504
1505         * nis/nis_callback.c (__nis_create_callback): Use asprinf instead
1506         of snprintf+strdup.  Handle OOM.
1507         * nis/nis_callback.c (__nis_create_callback): Allocate cb and
1508         cb->serv together.  Remove now obsolete free calls.
1509         (__nis_destroy_callback): Remove now obsolete free call.
1510
1511 2006-05-18  David Woodhouse  <dwmw2@redhat.com>
1512
1513         * sysdeps/posix/getaddrinfo.c: Add unique labels to the default
1514         RFC3484 precedence table for fec0::/10 and fc00::/7 (site-local
1515         and ULA respectively). Set precedence for IPv4 address to 10 as
1516         defined in RFC3484 for preferring IPv6.
1517         * posix/gai.conf: Update to match the new default tables.
1518
1519 2006-05-18  Jakub Jelinek  <jakub@redhat.com>
1520
1521         * nis/nss_compat/compat-pwd.c (internal_setpwent): If nss_set*ent
1522         returned NSS_STATUS_UNAVAIL, still return NSS_STATUS_SUCCESS.
1523         * nis/nss_compat/compat-spwd.c (internal_setspent): Likewise.
1524         * nis/nss_compat/compat-grp.c (internal_setgrent): Likewise.
1525
1526         * nis/nss_compat/compat-initgroups.c (nss_setgrent, nss_endgrent):
1527         Removed.
1528         (init_nss_interface): Remove initialization of these variables.
1529
1530 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
1531
1532         * nis/nis_call.c (rec_dirsearch): Little optimization: pull
1533         nis_free_directory forward to avoid duplication.
1534
1535 2006-05-17  Ulrich Drepper  <drepper@redhat.com>
1536
1537         * nis/nis_call.c (rec_dirsearch): Handle __nis_finddirectory and
1538         rec_dirsearch returning NULL.
1539         (first_shoot): Handle __nis_finddirectory returning NULL.
1540         (__nisfind_server): Fix leak when rec_dirsearch returns NULL.
1541
1542         * sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOSE, IN_MOVE,
1543         IN_ONLYDIR, IN_DONT_FOLLOW, and IN_MASK_ADD.
1544
1545 2006-05-17  Jakub Jelinek  <jakub@redhat.com>
1546
1547         * sunrpc/key_call.c (getkeyserv_handle): Call auth_destroy if
1548         pid changed.
1549
1550 2006-05-15  Ulrich Drepper  <drepper@redhat.com>
1551
1552         * include/rpc/pmap_prot.h: Mark all functions as hidden.
1553
1554         * nscd/nscd_initgroups.c: Mark __gr_map_handle as hidden.
1555         * nscd/nscd_getgr_r.c: Likewise.
1556
1557         * include/rpc/pmap_rmt.h: Mark all functions as hidden.
1558
1559         * nscd/nscd_getai.c (__hst_map_handle): Mark as hidden.
1560         * nscd/nscd_gethst_r.c (__hst_map_handle): Likewise.
1561
1562         * stdlib/longlong.h (__clz_tab): Mark as hidden.
1563
1564         * iconv/gconv_int.h: Mark __gconv_lock as hidden.
1565
1566         * include/rpc/key_prot.h: Mark all _internal functions as hidden.
1567
1568         * include/rpc/auth.h: Mark xdr_des_block_internal and
1569         xdr_opaque_auth_internal as hidden.
1570
1571         * sysdeps/unix/sysv/linux/getdents.c: Mark __have_no_getdents64 as
1572         hidden.
1573
1574         * include/rpc/xdr.h: Mark all _internal functions as hidden.
1575
1576         * misc/getusershell.c (okshells): Don't use static initializers,
1577         do it dynamically.
1578
1579         * stdlib/fmtmsg.c (keywords): Change type of len element to
1580         uint32_t to not waste space on 64bit machines.
1581
1582         * locale/setlocale.c: Change _nl_category_names into a string.
1583         Add new _nl_category_name_idxs.  Change all users.
1584         * locale/localeinfo.h: Adjust declaration of _nl_category_names.
1585         Declare _nl_category_name_idxs.
1586         * locale/findlocale.c: Adjust for _nl_category_names change.
1587         * locale/loadlocale.c: Likewise.
1588         * locale/newlocale.c: Likewise.
1589         * intl/dcigettext.c: Likewise.
1590
1591         * iconv/gconv_conf.c (add_alias): Move actual alias handling to...
1592         (add_alias2): ...here.  New function.
1593         (__gconv_read_conf): Simplify builtin alias handling.
1594         (builtin_aliases): Convert to string to avoid relocations.
1595         * iconv/gconv_builtin.h: Add comment about correct formatting.
1596
1597 2006-05-15  Jakub Jelinek  <jakub@redhat.com>
1598
1599         * resolv/res_debug.c (loc_ntoa): Make error const.
1600
1601 2006-05-14  Andreas Schwab  <schwab@suse.de>
1602
1603         * math/complex.h [__LDBL_COMPAT]: Use __REDIRECT_NTH.
1604
1605 2006-05-12  Jakub Jelinek  <jakub@redhat.com>
1606
1607         * sysdeps/unix/sysv/linux/sched_getaffinity.c: Include sys/param.h.
1608         (__sched_getaffinity_new): Don't crash if cpusetsize is smaller than
1609         sizeof (cpu_set_t).
1610
1611 2006-05-11  Ulrich Drepper  <drepper@redhat.com>
1612
1613         * resolv/res_debug.c (loc_ntoa): Define error as array, not pointer.
1614
1615         * include/arpa/nameser.h: Declare _ns_flagdata as hidden.
1616
1617         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_master.
1618         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_master.
1619
1620         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypbind_resp.
1621         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypbind_resp.
1622
1623         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_cback_data.
1624         * include/rpcsvc/nis_callback.h: Add libnsl_hidden_proto for
1625         xdr_cback_data.
1626
1627         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypupdate_args.
1628         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
1629         xdr_ypupdate_args.
1630
1631         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_order.
1632         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_order.
1633
1634         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_maplist.
1635         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_maplist.
1636
1637         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_obj_p.
1638         * include/rpcsvc/nis_callback.h: New file.
1639
1640         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_val.
1641         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_val.
1642
1643         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
1644         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
1645
1646         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypmaplist.
1647         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypmaplist.
1648
1649         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
1650         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
1651
1652         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypdelete_args.
1653         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
1654         xdr_ypdelete_args.
1655
1656         * nis/nis_xdr.h: Mark all functions as hidden.  Remove
1657         __BEGIN_DECLS and __END_DECLS, the header is not installed.
1658
1659         * nis/nis_error.c: Remove table of strings.  Use position
1660         independent mechanism.
1661         * nis/nis_error.h: New file.
1662
1663 2006-05-11  Jakub Jelinek  <jakub@redhat.com>
1664
1665         * locale/programs/ld-time.c (time_finish): If wide era name or
1666         format aren't provided, set both wname and wformat to L"".
1667
1668 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
1669
1670         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Only store
1671         results if the call was succesful.
1672
1673         * nis/nss-nis.h: Mark __yperr2nss_tab and __yperr2nss_count as hidden.
1674
1675         * nis/nss-nisplus.h: Mark __niserr2nss_tab and __niserr2nss_count
1676         as hidden.
1677
1678 2006-05-10  Jakub Jelinek  <jakub@redhat.com>
1679
1680         * misc/sys/queue.h: Remove uses of all QUEUEDEBUG_* macros.
1681
1682 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
1683
1684         * posix/wordexp.c (parse_glob): No need to check ifs for NULL, the
1685         caller makes sure this is not the case.
1686         (wordexp): Simplify ifs_white creation.  [Coverity CID 231]
1687
1688 2006-05-09  Ulrich Drepper  <drepper@redhat.com>
1689
1690         * posix/wordexp.c: Remove numerous NULL pointer tests before FREE
1691         calls.
1692
1693         * io/ftw.c (open_dir_stream): Return right away if REALLOC fails.
1694         [Coverity CID 229, 230]
1695
1696         * argp/argp-help.c (hol_entry_help): Handle STATE==NULL in ARG and
1697         DGETTEXT calls.
1698         (hol_help): Likewise.  [Coverity CID 226, 227]
1699
1700         * string/argz-replace.c (__argz_replace): Unconditionally call
1701         free on SRC.  [Coverity CID 225]
1702
1703         * nis/nis_creategroup.c (nis_creategroup): No need to duplicate
1704         the return value of __nis_default_owner and __nis_default_group,
1705         it has been especially allocated.  [Coverity CID 224]
1706
1707         * nis/nis_defaults.c (searchXYX): New functions.  Used by both
1708         searchgroup and searchowner.  Significantly simplified.
1709         (__nis_default_owner): Remove duplication.  Do not locally copy the
1710         string before duplicating it.
1711         (__nis_default_group): Likewise.
1712
1713         * nis/nis_lookup.c (nis_lookup): After calling nis_free_directory,
1714         we must clear the variable before calling __nisfind_server.
1715
1716         * nis/nis_lookup.c (nis_lookup): Always free memory allocated with
1717         nis_getnames.  [Coverity CID 223]
1718
1719         * locale/programs/locfile.c (locfile_read): Use alloca instead of
1720         xmalloc to allocate local repertoire name.  [Coverity CID 222]
1721
1722         * iconv/iconv_charmap.c (use_to_charmap): No need to dynamically
1723         allocate memory for the input to add_bytes.  [Coverity CID 221]
1724
1725         * posix/wordexp.c (w_addword): Free word if realloc fails and it
1726         was allocated here.  [Coverity CID 219, 220]
1727
1728         * posix/getconf.c (print_all): Free confstr data after printing.
1729         [Coverity CID 218]
1730
1731         * sysdeps/posix/getaddrinfo.c (gaih_inet): Free canon string if
1732         list allocation fails.  [Coverity CID 215]
1733
1734         * nss/nsswitch.c (__nss_configure_lookup): Fix loop end condition.
1735         [Coverity CID 213]
1736
1737         * argp/argp-help.c (hol_entry_cmp): Don't call canon_doc_option if
1738         string is NULL.  [Coverity CID 212]
1739         * argp/Makefile: Add rules to build and run bug-argp1.
1740         * argp/bug-argp1.c: New file.
1741
1742         * io/ftw.c (ftw_dir): Use __rawmemchr instead of strchr to find
1743         end of string.
1744         * stdlib/canonicalize.c (__realpath): Likewise.
1745
1746         * locale/programs/ld-time.c (time_finish): Don't dereference NULL
1747         pointer.  [Coverity CID 206]
1748
1749         * elf/dl-dst.h (DL_DST_REQUIRED): Be prepared for missing link map
1750         in statically linked code.
1751         * elf/dl-load.c (_dl_dst_substitute): When replacing ORIGIN in
1752         statically built code, be prepared to have no link map.
1753         [Coverity CID 205]
1754
1755         * argp/argp-help.c (fill_in_uparams): Handle STATE==NULL in
1756         dgettext calls. [Coverity CID 204]
1757
1758         * argp/argp-help.c (struct uparams): Remove valid member.  Change
1759         the one user.
1760         (uparam_names): Reduce size.  Avoid relative relocations.
1761         Moved to read-only segment.
1762         (fill_in_uparams): Update for new layout.
1763
1764         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Parameter can be
1765         assumed to always be != NULL. [Coverity CID 202]
1766
1767         * argp/argp-help.c (hol_entry_help): Remove some dead code
1768         [Coverity CID 200].
1769
1770         * nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Optimize
1771         away a few more unconditional yperr2nss calls.
1772         (_nss_nis_getservbyname_r): Likewise.
1773
1774 2006-05-06  Ulrich Drepper  <drepper@redhat.com>
1775
1776         * sysdeps/generic/ldsodefs.h: Remove support for non-core
1777         architectures.
1778
1779         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Make sure
1780         that unused memory passed to sendto is nevertheless initialized.
1781
1782         [BZ #2499]
1783         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Avoid
1784         possibly unaligned memory accesses.
1785
1786         * include/arpa/nameser.h: Also optimize NS_PUT16 and NS_PUT32.
1787         * resolv/res_mkquery.c: Use NS_PUT16 and NS_PUT32 instead of __putshort
1788         and __putlong respectively.  Correct buffer overflow check for
1789         NS_NOTIFY_OP.
1790
1791         * resolv/res_send.c (send_vc): Use ns_put16 instead of putshort.
1792
1793         * resolv/res_send.c (res_queriesmatch): Fix typo in comment.
1794         (send_dg): Rewrite error handling to be more compact and avoid
1795         double recomputation of timeouts.  Pass MSG_NOSIGNAL to send.
1796
1797         * include/arpa/nameser.h: Add optimizations for NS_GET16 and NS_GET32.
1798
1799         * resolv/res_send.c (res_nameinquery): Use NS_GET16 directly
1800         instead of ns_get16.
1801         (res_queriesmatch): Likewise.  Minor optimization.
1802
1803         [BZ #2499]
1804         * resolv/res_query.c (__libc_res_nquery): If answerp != NULL,
1805         __libc_res_nsend might reallocate the buffer for the answer.  In
1806         this case we have to reload the HP pointer.
1807
1808 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
1809
1810         * stdio-common/vfscanf.c (memory_error): Remove definition.  Add
1811         some branch prediction hints.
1812
1813         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Define SPLICE_F_*.
1814         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1815         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
1816         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1817         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1818         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1819         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
1820         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1821
1822 2006-05-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1823
1824         * sysdeps/s390/s390-32/elf/start.S: Replace pc relative relocation
1825         by a GOT relocation to make Scrt1.o position independent.
1826         * sysdeps/s390/s390-64/elf/start.S: Likewise.
1827
1828         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S: Add support for
1829         six system call parameters.
1830         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
1831
1832 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
1833
1834         * sunrpc/svcauth_des.c (cache_init): Use calloc instead of
1835         malloc&bzero.
1836
1837         * sunrpc/svc_udp.c (BZERO): Remove definition.
1838         (CALLOC): Define.
1839         (svc_enablecache): Use CALLOC instead of ALLOC&BZERO.
1840
1841         * sunrpc/des_impl.c: Remove ALT_ECB support.  We never used it.
1842         (des_SPtrans): Use uint32_t type.
1843         (des_skb): Likewise.
1844
1845         * sunrpc/xdr_ref.c (xdr_reference): Use calloc instead of malloc&bzero.
1846
1847 2006-05-05  Jakub Jelinek  <jakub@redhat.com>
1848
1849         [BZ #2509]
1850         * stdio-common/tst-printf.sh: Adjust for tst-printf.c change even
1851         on 32-bit arches.
1852
1853 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
1854
1855         * locale/programs/ld-address.c (address_finish): Fix one more
1856         place where the iso639 array might be accessed beyond the limits.
1857
1858 2006-05-04  Ulrich Drepper  <drepper@redhat.com>
1859
1860         * nis/nis_table.c (nis_list): Avoid clearing res twice before
1861         filling it for the first time.
1862
1863         * nis/nis_table.c (get_tablepath): Renamed from __get_tablepath.
1864         Adjust all callers.
1865         Free res object content before returning.
1866
1867         * sunrpc/xdr_array.c (xdr_array): Use calloc instead of malloc&bzero.
1868
1869         * sunrpc/key_call.c (__rpc_thread_key_cleanup): Also free
1870         client->cl_auth.
1871
1872         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Don't skip entire
1873         cleanup for initial thread, just the free call on TVP.
1874
1875         * nscd/gai.c (__getline): Define.
1876
1877
1878 See ChangeLog.16 for earlier changes.