[BZ #2908]
[glibc.git] / ChangeLog
blob284ae583f50e5970fc701fccf1bfbb5e60691eeb
1 2006-08-03  Ulrich Drepper  <drepper@redhat.com>
3         [BZ #2908]
4         * stdio-common/printf_fphex.c (__printf_fphex): When rounding up
5         'f', use '1' as leading digit not '\1'.
6         * stdio-common/Makefile (tests): Add bug16.
7         * stdio-common/bug16.c: New file.
9         [BZ #2914]
10         * sysdeps/unix/sysv/linux/gethostid.c: Don't define OLD_HOSTIDFILE
11         and don't try to open it.  The patch introducing the macro
12         contained a bug and used the same file name as the new file
13         instead of using /var/adm/hostid.  Nobody complaint so I'm taking
14         this out completely.
16         [BZ #2926]
17         * assert/assert.h: Move cast to void inside ?: to quiet gcc.
18         Patch by Jerry James <Jerry.James@usu.edu>.
20         * rt/Makefile (tests): Add tst-clock2.
21         * rt/tst-clock2.c: New file.
23         [BZ #2978]
24         * resolv/gai_notify.c (__gai_notify_only): Copy memory for thread
25         function and its parameters and pass it to new thread.
26         (__gai_notify): Add support for alternative waiting for completion.
27         * resolv/gai_suspend.c (gai_suspend): Add support for alternative
28         waiting for completion.
29         * resolv/getaddrinfo_a.c: Likewise.
30         * resolv/gai_misc.h (struct waitlist): Don't add cond if alternative
31         waiting for completion is used.
32         * resolv/gai_misc.c: Allow overwriting code to start helper thread.
33         * resolv/gai_cancel.c: Include <gai_misc.h> not "gai_misc.h".
34         * resolv/gai_error.c: Likewise.
35         * resolv/gai_sigqueue.c: Likewise.
37 2006-08-02  Thomas Schwinge  <tschwinge@gnu.org>
39         * hurd/getdport.c (__getdport): Don't return EBADF; instead set
40         errno to EBADF and return MACH_PORT_NULL.
42 2006-06-23  Joseph Myers  <joseph@codesourcery.com>
44         [BZ #2980]
45         * posix/Makefile (CFLAGS-waitid.c): Add -fasynchronous-unwind-tables.
47 2006-08-02  Ulrich Drepper  <drepper@redhat.com>
49         * elf/dl-addr.c (_dl_addr): If GNU-style hash tables are present,
50         walk them instead of the symbol table.
52 2006-08-01  Ulrich Drepper  <drepper@redhat.com>
54         * nscd/initgrcache.c (addinitgroupsX): Judge successful lookups by
55         status of NSS calls, not the number of returned entries.
57         * sysdeps/unix/sysv/linux/syscalls.list: Remove add_key,
58         request_key, keyctl.
60 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
62         * sysdeps/unix/sysv/linux/dl-osinfo.h: Remove unnecessary include.
64 2006-07-16  Jeff Bailey  <jbailey@ubuntu.com>
66         * elf/tst-auditmod1.c: Fix typo in #error.
68 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
70         * elf/tst-auditmod1.c: Remove code for unsupported architectures.
72         * iconvdata/run-iconv-test.sh: Run cmp in C locale.
74 2006-07-20  Adam Nemet  <anemet@caviumnetworks.com>
76         * stdlib/test-canon.c (do_test): Close fd before unlinking file so
77         that the directory is empty even on non-POSIX filesystems.
79 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
81         * elf/dl-open.c (dl_open_worker): Add branch prediction.
83         * nis/nss_compat/compat-grp.c: Avoid unnecessary setgrent calls into
84         the backend NSS module.  If backend setgrent call failed, don't have
85         internal_setgrent fail.  Just remember this until it is needed.
86         * nis/nss_compat/compat-pwd.c: Likewise.
87         * nis/nss_compat/compat-spwd.c: Likewise.
89 2006-07-30  Roland McGrath  <roland@redhat.com>
91         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: File removed.
92         * sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: File removed.
93         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: File removed.
94         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: File removed.
96         * sysdeps/unix/sysv/linux/not-cancel.h (pause_not_cancel): New macro.
97         (nanosleep_not_cancel): New macro.
98         (sigsuspend_not_cancel): new macro.
99         * sysdeps/unix/sysv/linux/sigsuspend.c [__ASSUME_REALTIME_SIGNALS]
100         (do_sigsuspend): Define as inline.
101         (__sigsuspend): Always use do_sigsuspend.
102         [! NO_CANCELLATION] (__sigsuspend_nocancel): New function.
103         * include/signal.h: Declare __sigsuspend_nocancel.
104         * sysdeps/posix/pause.c
105         [! NO_CANCELLATION] (__pause_nocancel): New function.
107         * include/unistd.h (__pause_nocancel): Add attribute_hidden.
108         * include/time.h (__nanosleep_nocancel): Likewise.
110 2006-07-30  Ulrich Drepper  <drepper@redhat.com>
112         * locale/programs/localedef.c (add_to_readlist): Rename local
113         variables to avoid confusion.
115         * locale/programs/charmap.c (charmap_read): Emit error message if
116         charmap couldn't be found or read.
118 2006-07-28  Ulrich Drepper  <drepper@redhat.com>
120         * sysdeps/unix/sysv/linux/kernel-features.h: Define
121         __ASSUME_FUTEX_LOCK_PI.
122         * include/time.h: Declare __nanosleep_nocancel.
123         * include/unistd.h: Declare __pause_nocancel.
125         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Use this instead of
126         LDFLAGS.  Add -lgcc_eh and libc_nonshared (again) to make sure we
127         get the __stack_chk_fail_local definition when it's needed.
129 2006-07-26  Ulrich Drepper  <drepper@redhat.com>
131         * dlfcn/Makefile: Add rules to build and run bug-atexit3.
132         * dlfcn/bug-atexit3.c: New file.
133         * dlfcn/bug-atexit3-lib.cc: New file.
135         * dlfcn/dlmopen.c (dlmopen_doit): Don't allow RTLD_GLOBAL to be
136         used when the namespace is not the base namespace.
138 2006-07-26  Gavin Romig-Koch  <gavin@redhat.com>
140         * stdlib/cxa_atexit.c (__new_exitfn_called): New variable.
141         (__new_exitfn): Bump it in every successful call.
142         * stdlib/cxa_finalize.c (__cxa_finalize): If destructor registered
143         more exit handlers, call them right away.
144         * stdlib/exit.h: Declare __new_exitfn_called.
146 2006-07-25  Ulrich Drepper  <drepper@redhat.com>
148         * stdlib/cxa_finalize.c (__cxa_finalize): Fix race condition when
149         calling registered handler.
151         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Fix comment.
152         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
153         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
154         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
155         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
156         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
157         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
158         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
160 2006-07-10  Ulrich Drepper  <drepper@redhat.com>
162         * elf/dl-lookup.c (dl_new_hash): New functions.
163         (_dl_lookup_symbol_x): Rename hash to old_hash and don't compute
164         value here.  Compute new-style hash value.  Pass new hash value
165         and reference to variable with the old value to do_lookup_x.
166         (_dl_setup_hash): If DT_GNU_HASH is defined, use it and not
167         old-style hash table.
168         (_dl_debug_bindings): Pass new hash value and reference to variable
169         with the old value to do_lookup_x.
170         * elf/do-lookup.h (do_lookup_x): Accept additional parameter with
171         new-style hash value and change old-style hash value parameter to
172         be a reference.  Reoganize functions to determine whether
173         new-style hash table is available.  Only fall back on old-style
174         table.  If old-style hash value is needed, compute it here.
175         * elf/dynamic-link.h (elf_get_dynamic_info): Relocate DT_GNU_HASH
176         entry.
177         * elf/elf.h: Define SHT_GNU_HASH, DT_GNU_HASH, DT_TLSDEC_PLT,
178         DT_TLSDEC_GOT.  Adjust DT_ADDRNUM.
179         * include/link.h (struct link_map): Add l_gnu_bitmask_idxbits,
180         l_gnu_shift, l_gnu_bitmask, l_gnu_buckets and l_gnu_chain_zero.
181         * Makeconfig: If linker supports --hash-style option add it to all
182         linker command lines to build DSOs.
183         * config.make.in: Define have-hash-style.
184         * configure.in: Test whether linker supports --hash-style option.
186         * elf/dl-misc.c (_dl_name_match_p): Make MAP parameter const.
187         * sysdeps/generic/ldsodefs.h: Adjust prototype.
189 2006-06-27  Ulrich Drepper  <drepper@redhat.com>
191         * elf/dl-load.c (open_path): Fix test to determine whether DSO is
192         auditing.
194         * elf/dl-load.c (_dl_map_object): Try harder to avoid looking at
195         RPATH of main map twice.
197 2006-06-22  Ulrich Drepper  <drepper@redhat.com>
199         * intl/dcigettext.c (DCIGETTEXT): If _nl_find_msg returns -1 don't
200         look further, return original strings.
201         (_nl_find_msg): Do not return found translation if the conversion
202         failed.  Either signal the string is unusable or that something went
203         wrong and the original should be used.
205 2006-06-21  Ulrich Drepper  <drepper@redhat.com>
207         * string/_strerror.c (__strerror_r): Add __builtin_expect.
209 2006-06-14  Jakub Jelinek  <jakub@redhat.com>
211         [BZ #2766]
212         * misc/insremque.c (insque): Handle prev == NULL.
213         * misc/Makefile (tests): Add tst-insremque.
214         * misc/tst-insremque.c: New test.
216 2006-06-17  Ulrich Drepper  <drepper@redhat.com>
218         [BZ #2792]
219         * elf/dl-deps.c (expand_dst): Rename __cnt variable to not
220         conflict with DL_DST_REQUIRED.
222 2006-06-16  Ulrich Drepper  <drepper@redhat.com>
224         * nis/nis_subr.c (nis_getnames): Fix the implementation to better
225         match what Solaris does.
227 2006-06-04  Ulrich Drepper  <drepper@redhat.com>
229         * sysdeps/posix/spawni.c (__spawni): Use local_seteuid and
230         local_setegid instead of seteuid and setegid.
231         * sysdeps/generic/local-setxid.h: New file.
232         * sysdeps/unix/sysv/linux/local-setxid.h: New file.
234         * sysdeps/posix/spawni.c (__spawni): Use non-cancelable interfaces.
236         * string/Makefile (tests): Add bug-envz1.
237         * string/bug-envz1.c: New file.
239 2006-06-02  Jakub Jelinek  <jakub@redhat.com>
241         * posix/regex_internal.c (re_string_skip_chars): If no character has
242         been converted at all, set *last_wc to WEOF.  If mbrtowc failed, set wc
243         to the byte which couldn't be converted.
244         (re_string_reconstruct): Don't clear valid_raw_len before calling
245         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
246         tip_context using re_string_context_at.
247         * posix/Makefile: Add rules to build and run bug-regex25 test.
248         * posix/bug-regex25.c: New test.
250 2006-06-02  Ryan S. Arnold  <rsa@us.ibm.com>
252         [BZ #2703]
253         * string/envz.c (envz_strip): Correct erroneously reversed src
254         and dest parameters to memmove() invocation.
256 2006-05-30  Jakub Jelinek  <jakub@redhat.com>
258         * nscd/nscd.h (prune_cache): Add fd argument to prototype.
259         * nscd/nscd.c (parse_opt): Read response from INVALIDATE request
260         to make sure the database has been already invalidated.
261         * nscd/cache.c (prune_cache): Add fd argument.  Write response to fd
262         after the cache has been invalidated.  Use pthread_mutex_lock rather
263         than pthread_mutex_trylock if fd != -1.
264         * nscd/connections.c (invalidate_cache): Add fd argument, write
265         response to fd if not calling prune_cache, pass fd to prune_cache.
266         (handle_request): Adjust invalidate_cache caller.
267         (nscd_run): Pass -1 as fd to prune_cache.
269 2006-05-30  Ulrich Drepper  <drepper@redhat.com>
271         * sysdeps/posix/getaddrinfo.c (gaiconf_init): Initialize bits in
272         the correct place.
274 2006-05-29  Ulrich Drepper  <drepper@redhat.com>
276         * nscd/nscd.h (struct database_dyn): Add prunelock field.
277         * nscd/cache.c (prune_cache): Take prunelock before starting the
278         work.  Just return in case it is already taken.
279         * nscd/connections.c (dbs): Initialize .prunelock.
281 2006-05-25  Ulrich Drepper  <drepper@redhat.com>
283         * nis/nis_removemember.c (nis_removemember): Avoid unnecessary
284         copying.  No need to allocate new array for group members.  Just
285         move the pointers and update the size.
287         * nis/nis_addmember.c (nis_addmember): Avoid unnecessary copying.
288         Avoid memory leak in case realloc fails.  Simplification for
289         better code generation.
291         Avoid deprecation warning because of libc_hidden_proto for
292         inet6_option_alloc.
293         * inet/inet6_option.c (option_alloc): Renamed from
294         inet6_option_alloc.  Made static.
295         (inet6_option_alloc): Now a simple wrapper around option_alloc.
296         (inet6_option_append): Call option_alloc.
297         * include/netinet/in.h: Remove libc_hidden_proto for
298         inet6_option_alloc.
300         * nis/nis_callback.c (__nis_create_callback): Always call xdr_free
301         for cleanup when cb!=NULL [Coverity CID 233].
303 2006-05-24  Ulrich Drepper  <drepper@redhat.com>
305         [BZ #2693]
306         * inet/Makefile (routines): Add inet6_opt and inet6_rth.
307         * inet/Versions (libc, GLIBC_2.5): Add inet6_opt_init,
308         inet6_opt_append, inet6_opt_finish, inet6_opt_set_val, inet6_opt_next,
309         inet6_opt_find, inet6_opt_get_val, inet6_rth_space, inet6_rth_init,
310         inet6_rth_add, inet6_rth_reverse, inet6_rth_segments,
311         and inet6_rth_getaddr.
312         * inet/netinet/ip6.h (struct ip6_rthdr0): Make ip6r0_addr a flexible
313         array.
314         * inet/netinet/in.h (struct ip6_mtuinfo): Define.
315         Mark inet6_option_* interfaces as deprecated.
316         Declare inet6_opt_init, inet6_opt_append, inet6_opt_finish,
317         inet6_opt_set_val, inet6_opt_next, inet6_opt_find, inet6_opt_get_val,
318         inet6_rth_space, inet6_rth_init, inet6_rth_add, inet6_rth_reverse,
319         inet6_rth_segments, and inet6_rth_getaddr.
320         * inet/inet6_opt.c: New file.
321         * inet/inet6_rth.c: New file.
323         * inet/netinet/icmp6.h: Pretty printing.
325         [BZ #2683]
326         * elf/dl-addr.c (_dl_addr): Don't match undefined references.
328 2006-05-23  Ulrich Drepper  <drepper@redhat.com>
330         * nis/nis_lookup.c (nis_lookup): Use __prepare_niscall instead of
331         doing it all here.  When server does not know the answer do not
332         fail immediate, try parent first.
334         * nis/nis_domain_of_r.c (nis_domain_of_r): Add missing buffer
335         overflow test.
337 2006-05-20  Ulrich Drepper  <drepper@redhat.com>
339         * nis/nis_call.c (__prepare_niscall): New function.  Split out
340         from __do_niscall.
341         * nis/nis_table.c (__create_ib_request): Renamed from create_ib_request
342         and exported.
343         (__follow_path): New function.  Split out from nis_list.
344         * nis/nis_xdr.h: Add libnsl_hidden_proto for _xdr_ib_request and
345         _xdr_nis_result.
346         * nis/nis_xdr.c: Add libnsl_hidden_def for _xdr_ib_request and
347         _xdr_nis_result.
348         * nis/libnsl.h: Declare __prepare_niscall, __create_ib_request,
349         and __follow_path.
350         * nis/Versions: Export __prepare_niscall, __create_ib_request,
351         __follow_path, __do_niscall3, _xdr_ib_request, and _xdr_nis_result
352         from libnsl for version GLIBC_PRIVATE.
353         * nis/nisplus-parser.h: Remove _nss_nisplus_parse_pwent_chk.
354         Remove entry parameter from _nss_nisplus_parse_pwent and
355         _nss_nisplus_parse_grent.
356         * nis/nss_nisplus/nisplus-parser.c: Likewise.
357         * nis/nss_nisplus/nisplus-pwd.c: Remove support for SETENT_BATCH_READ
358         again.  Rewrite getpwent handling to not use nis_first_entry and
359         nis_next_entry.  Roll out own niscall handling.
360         * nis/nss_nisplus/nisplus-grp.c: Likewise.
362         * sunrpc/xdr_rec.c: Fix typo in comment.
364 2006-05-19  Ulrich Drepper  <drepper@redhat.com>
366         * nis/nis_call.c (__do_niscall3): Avoid code duplication in error
367         handling.
369         * nis/nis_callback.c (internal_nis_do_callback): Don't use malloc
370         to allocate memory for my_pollfd.  Better initialization of
371         cb_is_running.  Use TEMP_FAILURE_RETRY.
373         * malloc/memusage.sh (memusageso): Add quotes.
374         (memusagestat): Likewise.
375         * debug/xtrace.sh (pcprofileso): Likewise.
376         (pcprofiledump): Likewise.
377         * debug/Makefile ($(objpfx)xtrace): Use $LIB in SLIBDIR
378         replacement.
379         * malloc/Makefile ($(objpfx)memusage): Likewise.
381         * nis/nis_callback.c (__nis_create_callback): Calls to
382         svcudp_bufcreate and svctcp_create can fail.  Free ->xprt if
383         asprintf call fails.
385         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_sendreq): Make sure
386         no uninitialized memory is passed to sendto.
388 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
390         * nis/nis_callback.c (__nis_create_callback): Use asprinf instead
391         of snprintf+strdup.  Handle OOM.
392         * nis/nis_callback.c (__nis_create_callback): Allocate cb and
393         cb->serv together.  Remove now obsolete free calls.
394         (__nis_destroy_callback): Remove now obsolete free call.
396 2006-05-18  David Woodhouse  <dwmw2@redhat.com>
398         * sysdeps/posix/getaddrinfo.c: Add unique labels to the default
399         RFC3484 precedence table for fec0::/10 and fc00::/7 (site-local
400         and ULA respectively). Set precedence for IPv4 address to 10 as
401         defined in RFC3484 for preferring IPv6.
402         * posix/gai.conf: Update to match the new default tables.
404 2006-05-18  Jakub Jelinek  <jakub@redhat.com>
406         * nis/nss_compat/compat-pwd.c (internal_setpwent): If nss_set*ent
407         returned NSS_STATUS_UNAVAIL, still return NSS_STATUS_SUCCESS.
408         * nis/nss_compat/compat-spwd.c (internal_setspent): Likewise.
409         * nis/nss_compat/compat-grp.c (internal_setgrent): Likewise.
411         * nis/nss_compat/compat-initgroups.c (nss_setgrent, nss_endgrent):
412         Removed.
413         (init_nss_interface): Remove initialization of these variables.
415 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
417         * nis/nis_call.c (rec_dirsearch): Little optimization: pull
418         nis_free_directory forward to avoid duplication.
420 2006-05-17  Ulrich Drepper  <drepper@redhat.com>
422         * nis/nis_call.c (rec_dirsearch): Handle __nis_finddirectory and
423         rec_dirsearch returning NULL.
424         (first_shoot): Handle __nis_finddirectory returning NULL.
425         (__nisfind_server): Fix leak when rec_dirsearch returns NULL.
427         * sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOSE, IN_MOVE,
428         IN_ONLYDIR, IN_DONT_FOLLOW, and IN_MASK_ADD.
430 2006-05-17  Jakub Jelinek  <jakub@redhat.com>
432         * sunrpc/key_call.c (getkeyserv_handle): Call auth_destroy if
433         pid changed.
435 2006-05-15  Ulrich Drepper  <drepper@redhat.com>
437         * include/rpc/pmap_prot.h: Mark all functions as hidden.
439         * nscd/nscd_initgroups.c: Mark __gr_map_handle as hidden.
440         * nscd/nscd_getgr_r.c: Likewise.
442         * include/rpc/pmap_rmt.h: Mark all functions as hidden.
444         * nscd/nscd_getai.c (__hst_map_handle): Mark as hidden.
445         * nscd/nscd_gethst_r.c (__hst_map_handle): Likewise.
447         * stdlib/longlong.h (__clz_tab): Mark as hidden.
449         * iconv/gconv_int.h: Mark __gconv_lock as hidden.
451         * include/rpc/key_prot.h: Mark all _internal functions as hidden.
453         * include/rpc/auth.h: Mark xdr_des_block_internal and
454         xdr_opaque_auth_internal as hidden.
456         * sysdeps/unix/sysv/linux/getdents.c: Mark __have_no_getdents64 as
457         hidden.
459         * include/rpc/xdr.h: Mark all _internal functions as hidden.
461         * misc/getusershell.c (okshells): Don't use static initializers,
462         do it dynamically.
464         * stdlib/fmtmsg.c (keywords): Change type of len element to
465         uint32_t to not waste space on 64bit machines.
467         * locale/setlocale.c: Change _nl_category_names into a string.
468         Add new _nl_category_name_idxs.  Change all users.
469         * locale/localeinfo.h: Adjust declaration of _nl_category_names.
470         Declare _nl_category_name_idxs.
471         * locale/findlocale.c: Adjust for _nl_category_names change.
472         * locale/loadlocale.c: Likewise.
473         * locale/newlocale.c: Likewise.
474         * intl/dcigettext.c: Likewise.
476         * iconv/gconv_conf.c (add_alias): Move actual alias handling to...
477         (add_alias2): ...here.  New function.
478         (__gconv_read_conf): Simplify builtin alias handling.
479         (builtin_aliases): Convert to string to avoid relocations.
480         * iconv/gconv_builtin.h: Add comment about correct formatting.
482 2006-05-15  Jakub Jelinek  <jakub@redhat.com>
484         * resolv/res_debug.c (loc_ntoa): Make error const.
486 2006-05-14  Andreas Schwab  <schwab@suse.de>
488         * math/complex.h [__LDBL_COMPAT]: Use __REDIRECT_NTH.
490 2006-05-12  Jakub Jelinek  <jakub@redhat.com>
492         * sysdeps/unix/sysv/linux/sched_getaffinity.c: Include sys/param.h.
493         (__sched_getaffinity_new): Don't crash if cpusetsize is smaller than
494         sizeof (cpu_set_t).
496 2006-05-11  Ulrich Drepper  <drepper@redhat.com>
498         * resolv/res_debug.c (loc_ntoa): Define error as array, not pointer.
500         * include/arpa/nameser.h: Declare _ns_flagdata as hidden.
502         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_master.
503         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_master.
505         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypbind_resp.
506         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypbind_resp.
508         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_cback_data.
509         * include/rpcsvc/nis_callback.h: Add libnsl_hidden_proto for
510         xdr_cback_data.
512         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypupdate_args.
513         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
514         xdr_ypupdate_args.
516         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_order.
517         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_order.
519         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_maplist.
520         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_maplist.
522         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_obj_p.
523         * include/rpcsvc/nis_callback.h: New file.
525         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_val.
526         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_val.
528         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
529         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
531         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypmaplist.
532         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypmaplist.
534         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
535         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
537         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypdelete_args.
538         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
539         xdr_ypdelete_args.
541         * nis/nis_xdr.h: Mark all functions as hidden.  Remove
542         __BEGIN_DECLS and __END_DECLS, the header is not installed.
544         * nis/nis_error.c: Remove table of strings.  Use position
545         independent mechanism.
546         * nis/nis_error.h: New file.
548 2006-05-11  Jakub Jelinek  <jakub@redhat.com>
550         * locale/programs/ld-time.c (time_finish): If wide era name or
551         format aren't provided, set both wname and wformat to L"".
553 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
555         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Only store
556         results if the call was succesful.
558         * nis/nss-nis.h: Mark __yperr2nss_tab and __yperr2nss_count as hidden.
560         * nis/nss-nisplus.h: Mark __niserr2nss_tab and __niserr2nss_count
561         as hidden.
563 2006-05-10  Jakub Jelinek  <jakub@redhat.com>
565         * misc/sys/queue.h: Remove uses of all QUEUEDEBUG_* macros.
567 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
569         * posix/wordexp.c (parse_glob): No need to check ifs for NULL, the
570         caller makes sure this is not the case.
571         (wordexp): Simplify ifs_white creation.  [Coverity CID 231]
573 2006-05-09  Ulrich Drepper  <drepper@redhat.com>
575         * posix/wordexp.c: Remove numerous NULL pointer tests before FREE
576         calls.
578         * io/ftw.c (open_dir_stream): Return right away if REALLOC fails.
579         [Coverity CID 229, 230]
581         * argp/argp-help.c (hol_entry_help): Handle STATE==NULL in ARG and
582         DGETTEXT calls.
583         (hol_help): Likewise.  [Coverity CID 226, 227]
585         * string/argz-replace.c (__argz_replace): Unconditionally call
586         free on SRC.  [Coverity CID 225]
588         * nis/nis_creategroup.c (nis_creategroup): No need to duplicate
589         the return value of __nis_default_owner and __nis_default_group,
590         it has been especially allocated.  [Coverity CID 224]
592         * nis/nis_defaults.c (searchXYX): New functions.  Used by both
593         searchgroup and searchowner.  Significantly simplified.
594         (__nis_default_owner): Remove duplication.  Do not locally copy the
595         string before duplicating it.
596         (__nis_default_group): Likewise.
598         * nis/nis_lookup.c (nis_lookup): After calling nis_free_directory,
599         we must clear the variable before calling __nisfind_server.
601         * nis/nis_lookup.c (nis_lookup): Always free memory allocated with
602         nis_getnames.  [Coverity CID 223]
604         * locale/programs/locfile.c (locfile_read): Use alloca instead of
605         xmalloc to allocate local repertoire name.  [Coverity CID 222]
607         * iconv/iconv_charmap.c (use_to_charmap): No need to dynamically
608         allocate memory for the input to add_bytes.  [Coverity CID 221]
610         * posix/wordexp.c (w_addword): Free word if realloc fails and it
611         was allocated here.  [Coverity CID 219, 220]
613         * posix/getconf.c (print_all): Free confstr data after printing.
614         [Coverity CID 218]
616         * sysdeps/posix/getaddrinfo.c (gaih_inet): Free canon string if
617         list allocation fails.  [Coverity CID 215]
619         * nss/nsswitch.c (__nss_configure_lookup): Fix loop end condition.
620         [Coverity CID 213]
622         * argp/argp-help.c (hol_entry_cmp): Don't call canon_doc_option if
623         string is NULL.  [Coverity CID 212]
624         * argp/Makefile: Add rules to build and run bug-argp1.
625         * argp/bug-argp1.c: New file.
627         * io/ftw.c (ftw_dir): Use __rawmemchr instead of strchr to find
628         end of string.
629         * stdlib/canonicalize.c (__realpath): Likewise.
631         * locale/programs/ld-time.c (time_finish): Don't dereference NULL
632         pointer.  [Coverity CID 206]
634         * elf/dl-dst.h (DL_DST_REQUIRED): Be prepared for missing link map
635         in statically linked code.
636         * elf/dl-load.c (_dl_dst_substitute): When replacing ORIGIN in
637         statically built code, be prepared to have no link map.
638         [Coverity CID 205]
640         * argp/argp-help.c (fill_in_uparams): Handle STATE==NULL in
641         dgettext calls. [Coverity CID 204]
643         * argp/argp-help.c (struct uparams): Remove valid member.  Change
644         the one user.
645         (uparam_names): Reduce size.  Avoid relative relocations.
646         Moved to read-only segment.
647         (fill_in_uparams): Update for new layout.
649         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Parameter can be
650         assumed to always be != NULL. [Coverity CID 202]
652         * argp/argp-help.c (hol_entry_help): Remove some dead code
653         [Coverity CID 200].
655         * nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Optimize
656         away a few more unconditional yperr2nss calls.
657         (_nss_nis_getservbyname_r): Likewise.
659 2006-05-06  Ulrich Drepper  <drepper@redhat.com>
661         * sysdeps/generic/ldsodefs.h: Remove support for non-core
662         architectures.
664         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Make sure
665         that unused memory passed to sendto is nevertheless initialized.
667         [BZ #2499]
668         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Avoid
669         possibly unaligned memory accesses.
671         * include/arpa/nameser.h: Also optimize NS_PUT16 and NS_PUT32.
672         * resolv/res_mkquery.c: Use NS_PUT16 and NS_PUT32 instead of __putshort
673         and __putlong respectively.  Correct buffer overflow check for
674         NS_NOTIFY_OP.
676         * resolv/res_send.c (send_vc): Use ns_put16 instead of putshort.
678         * resolv/res_send.c (res_queriesmatch): Fix typo in comment.
679         (send_dg): Rewrite error handling to be more compact and avoid
680         double recomputation of timeouts.  Pass MSG_NOSIGNAL to send.
682         * include/arpa/nameser.h: Add optimizations for NS_GET16 and NS_GET32.
684         * resolv/res_send.c (res_nameinquery): Use NS_GET16 directly
685         instead of ns_get16.
686         (res_queriesmatch): Likewise.  Minor optimization.
688         [BZ #2499]
689         * resolv/res_query.c (__libc_res_nquery): If answerp != NULL,
690         __libc_res_nsend might reallocate the buffer for the answer.  In
691         this case we have to reload the HP pointer.
693 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
695         * stdio-common/vfscanf.c (memory_error): Remove definition.  Add
696         some branch prediction hints.
698         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Define SPLICE_F_*.
699         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
700         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
701         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
702         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
703         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
704         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
705         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
707 2006-05-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
709         * sysdeps/s390/s390-32/elf/start.S: Replace pc relative relocation
710         by a GOT relocation to make Scrt1.o position independent.
711         * sysdeps/s390/s390-64/elf/start.S: Likewise.
713         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S: Add support for
714         six system call parameters.
715         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
717 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
719         * sunrpc/svcauth_des.c (cache_init): Use calloc instead of
720         malloc&bzero.
722         * sunrpc/svc_udp.c (BZERO): Remove definition.
723         (CALLOC): Define.
724         (svc_enablecache): Use CALLOC instead of ALLOC&BZERO.
726         * sunrpc/des_impl.c: Remove ALT_ECB support.  We never used it.
727         (des_SPtrans): Use uint32_t type.
728         (des_skb): Likewise.
730         * sunrpc/xdr_ref.c (xdr_reference): Use calloc instead of malloc&bzero.
732 2006-05-05  Jakub Jelinek  <jakub@redhat.com>
734         [BZ #2509]
735         * stdio-common/tst-printf.sh: Adjust for tst-printf.c change even
736         on 32-bit arches.
738 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
740         * locale/programs/ld-address.c (address_finish): Fix one more
741         place where the iso639 array might be accessed beyond the limits.
743 2006-05-04  Ulrich Drepper  <drepper@redhat.com>
745         * nis/nis_table.c (nis_list): Avoid clearing res twice before
746         filling it for the first time.
748         * nis/nis_table.c (get_tablepath): Renamed from __get_tablepath.
749         Adjust all callers.
750         Free res object content before returning.
752         * sunrpc/xdr_array.c (xdr_array): Use calloc instead of malloc&bzero.
754         * sunrpc/key_call.c (__rpc_thread_key_cleanup): Also free
755         client->cl_auth.
757         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Don't skip entire
758         cleanup for initial thread, just the free call on TVP.
760         * nscd/gai.c (__getline): Define.
763 See ChangeLog.16 for earlier changes.