1 2006-07-31 Ulrich Drepper <drepper@redhat.com>
3 * iconvdata/run-iconv-test.sh: Run cmp in C locale.
5 2006-07-20 Adam Nemet <anemet@caviumnetworks.com>
7 * stdlib/test-canon.c (do_test): Close fd before unlinking file so
8 that directory is empty even on non-POSIX filesystems.
10 2006-07-31 Ulrich Drepper <drepper@redhat.com>
12 * elf/dl-open.c (dl_open_worker): Add branch prediction.
14 * nis/nss_compat/compat-grp.c: Avoid unnecessary setgrent calls into
15 the backend NSS module. If backend setgrent call failed, don't have
16 internal_setgrent fail. Just remember this until it is needed.
17 * nis/nss_compat/compat-pwd.c: Likewise.
18 * nis/nss_compat/compat-spwd.c: Likewise.
20 2006-07-30 Roland McGrath <roland@redhat.com>
22 * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: File removed.
23 * sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: File removed.
24 * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: File removed.
25 * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: File removed.
27 * sysdeps/unix/sysv/linux/not-cancel.h (pause_not_cancel): New macro.
28 (nanosleep_not_cancel): New macro.
29 (sigsuspend_not_cancel): new macro.
30 * sysdeps/unix/sysv/linux/sigsuspend.c [__ASSUME_REALTIME_SIGNALS]
31 (do_sigsuspend): Define as inline.
32 (__sigsuspend): Always use do_sigsuspend.
33 [! NO_CANCELLATION] (__sigsuspend_nocancel): New function.
34 * include/signal.h: Declare __sigsuspend_nocancel.
35 * sysdeps/posix/pause.c
36 [! NO_CANCELLATION] (__pause_nocancel): New function.
38 * include/unistd.h (__pause_nocancel): Add attribute_hidden.
39 * include/time.h (__nanosleep_nocancel): Likewise.
41 2006-07-30 Ulrich Drepper <drepper@redhat.com>
43 * locale/programs/localedef.c (add_to_readlist): Rename local
44 variables to avoid confusion.
46 * locale/programs/charmap.c (charmap_read): Emit error message if
47 charmap couldn't be found or read.
49 2006-07-28 Ulrich Drepper <drepper@redhat.com>
51 * sysdeps/unix/sysv/linux/kernel-features.h: Define
52 __ASSUME_FUTEX_LOCK_PI.
53 * include/time.h: Declare __nanosleep_nocancel.
54 * include/unistd.h: Declare __pause_nocancel.
56 * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Use this instead of
57 LDFLAGS. Add -lgcc_eh and libc_nonshared (again) to make sure we
58 get the __stack_chk_fail_local definition when it's needed.
60 2006-07-26 Ulrich Drepper <drepper@redhat.com>
62 * dlfcn/Makefile: Add rules to build and run bug-atexit3.
63 * dlfcn/bug-atexit3.c: New file.
64 * dlfcn/bug-atexit3-lib.cc: New file.
66 * dlfcn/dlmopen.c (dlmopen_doit): Don't allow RTLD_GLOBAL to be
67 used when the namespace is not the base namespace.
69 2006-07-26 Gavin Romig-Koch <gavin@redhat.com>
71 * stdlib/cxa_atexit.c (__new_exitfn_called): New variable.
72 (__new_exitfn): Bump it in every successful call.
73 * stdlib/cxa_finalize.c (__cxa_finalize): If destructor registered
74 more exit handlers, call them right away.
75 * stdlib/exit.h: Declare __new_exitfn_called.
77 2006-07-25 Ulrich Drepper <drepper@redhat.com>
79 * stdlib/cxa_finalize.c (__cxa_finalize): Fix race condition when
80 calling registered handler.
82 * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Fix comment.
83 * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
84 * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
85 * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
86 * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
87 * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
88 * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
89 * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
91 2006-07-10 Ulrich Drepper <drepper@redhat.com>
93 * elf/dl-lookup.c (dl_new_hash): New functions.
94 (_dl_lookup_symbol_x): Rename hash to old_hash and don't compute
95 value here. Compute new-style hash value. Pass new hash value
96 and reference to variable with the old value to do_lookup_x.
97 (_dl_setup_hash): If DT_GNU_HASH is defined, use it and not
99 (_dl_debug_bindings): Pass new hash value and reference to variable
100 with the old value to do_lookup_x.
101 * elf/do-lookup.h (do_lookup_x): Accept additional parameter with
102 new-style hash value and change old-style hash value parameter to
103 be a reference. Reoganize functions to determine whether
104 new-style hash table is available. Only fall back on old-style
105 table. If old-style hash value is needed, compute it here.
106 * elf/dynamic-link.h (elf_get_dynamic_info): Relocate DT_GNU_HASH
108 * elf/elf.h: Define SHT_GNU_HASH, DT_GNU_HASH, DT_TLSDEC_PLT,
109 DT_TLSDEC_GOT. Adjust DT_ADDRNUM.
110 * include/link.h (struct link_map): Add l_gnu_bitmask_idxbits,
111 l_gnu_shift, l_gnu_bitmask, l_gnu_buckets and l_gnu_chain_zero.
112 * Makeconfig: If linker supports --hash-style option add it to all
113 linker command lines to build DSOs.
114 * config.make.in: Define have-hash-style.
115 * configure.in: Test whether linker supports --hash-style option.
117 * elf/dl-misc.c (_dl_name_match_p): Make MAP parameter const.
118 * sysdeps/generic/ldsodefs.h: Adjust prototype.
120 2006-06-27 Ulrich Drepper <drepper@redhat.com>
122 * elf/dl-load.c (open_path): Fix test to determine whether DSO is
125 * elf/dl-load.c (_dl_map_object): Try harder to avoid looking at
126 RPATH of main map twice.
128 2006-06-22 Ulrich Drepper <drepper@redhat.com>
130 * intl/dcigettext.c (DCIGETTEXT): If _nl_find_msg returns -1 don't
131 look further, return original strings.
132 (_nl_find_msg): Do not return found translation if the conversion
133 failed. Either signal the string is unusable or that something went
134 wrong and the original should be used.
136 2006-06-21 Ulrich Drepper <drepper@redhat.com>
138 * string/_strerror.c (__strerror_r): Add __builtin_expect.
140 2006-06-14 Jakub Jelinek <jakub@redhat.com>
143 * misc/insremque.c (insque): Handle prev == NULL.
144 * misc/Makefile (tests): Add tst-insremque.
145 * misc/tst-insremque.c: New test.
147 2006-06-17 Ulrich Drepper <drepper@redhat.com>
150 * elf/dl-deps.c (expand_dst): Rename __cnt variable to not
151 conflict with DL_DST_REQUIRED.
153 2006-06-16 Ulrich Drepper <drepper@redhat.com>
155 * nis/nis_subr.c (nis_getnames): Fix the implementation to better
156 match what Solaris does.
158 2006-06-04 Ulrich Drepper <drepper@redhat.com>
160 * sysdeps/posix/spawni.c (__spawni): Use local_seteuid and
161 local_setegid instead of seteuid and setegid.
162 * sysdeps/generic/local-setxid.h: New file.
163 * sysdeps/unix/sysv/linux/local-setxid.h: New file.
165 * sysdeps/posix/spawni.c (__spawni): Use non-cancelable interfaces.
167 * string/Makefile (tests): Add bug-envz1.
168 * string/bug-envz1.c: New file.
170 2006-06-02 Jakub Jelinek <jakub@redhat.com>
172 * posix/regex_internal.c (re_string_skip_chars): If no character has
173 been converted at all, set *last_wc to WEOF. If mbrtowc failed, set wc
174 to the byte which couldn't be converted.
175 (re_string_reconstruct): Don't clear valid_raw_len before calling
176 re_string_skip_chars. If wc is WEOF after re_string_skip_chars, set
177 tip_context using re_string_context_at.
178 * posix/Makefile: Add rules to build and run bug-regex25 test.
179 * posix/bug-regex25.c: New test.
181 2006-06-02 Ryan S. Arnold <rsa@us.ibm.com>
184 * string/envz.c (envz_strip): Correct erroneously reversed src
185 and dest parameters to memmove() invocation.
187 2006-05-30 Jakub Jelinek <jakub@redhat.com>
189 * nscd/nscd.h (prune_cache): Add fd argument to prototype.
190 * nscd/nscd.c (parse_opt): Read response from INVALIDATE request
191 to make sure the database has been already invalidated.
192 * nscd/cache.c (prune_cache): Add fd argument. Write response to fd
193 after the cache has been invalidated. Use pthread_mutex_lock rather
194 than pthread_mutex_trylock if fd != -1.
195 * nscd/connections.c (invalidate_cache): Add fd argument, write
196 response to fd if not calling prune_cache, pass fd to prune_cache.
197 (handle_request): Adjust invalidate_cache caller.
198 (nscd_run): Pass -1 as fd to prune_cache.
200 2006-05-30 Ulrich Drepper <drepper@redhat.com>
202 * sysdeps/posix/getaddrinfo.c (gaiconf_init): Initialize bits in
205 2006-05-29 Ulrich Drepper <drepper@redhat.com>
207 * nscd/nscd.h (struct database_dyn): Add prunelock field.
208 * nscd/cache.c (prune_cache): Take prunelock before starting the
209 work. Just return in case it is already taken.
210 * nscd/connections.c (dbs): Initialize .prunelock.
212 2006-05-25 Ulrich Drepper <drepper@redhat.com>
214 * nis/nis_removemember.c (nis_removemember): Avoid unnecessary
215 copying. No need to allocate new array for group members. Just
216 move the pointers and update the size.
218 * nis/nis_addmember.c (nis_addmember): Avoid unnecessary copying.
219 Avoid memory leak in case realloc fails. Simplification for
220 better code generation.
222 Avoid deprecation warning because of libc_hidden_proto for
224 * inet/inet6_option.c (option_alloc): Renamed from
225 inet6_option_alloc. Made static.
226 (inet6_option_alloc): Now a simple wrapper around option_alloc.
227 (inet6_option_append): Call option_alloc.
228 * include/netinet/in.h: Remove libc_hidden_proto for
231 * nis/nis_callback.c (__nis_create_callback): Always call xdr_free
232 for cleanup when cb!=NULL [Coverity CID 233].
234 2006-05-24 Ulrich Drepper <drepper@redhat.com>
237 * inet/Makefile (routines): Add inet6_opt and inet6_rth.
238 * inet/Versions (libc, GLIBC_2.5): Add inet6_opt_init,
239 inet6_opt_append, inet6_opt_finish, inet6_opt_set_val, inet6_opt_next,
240 inet6_opt_find, inet6_opt_get_val, inet6_rth_space, inet6_rth_init,
241 inet6_rth_add, inet6_rth_reverse, inet6_rth_segments,
242 and inet6_rth_getaddr.
243 * inet/netinet/ip6.h (struct ip6_rthdr0): Make ip6r0_addr a flexible
245 * inet/netinet/in.h (struct ip6_mtuinfo): Define.
246 Mark inet6_option_* interfaces as deprecated.
247 Declare inet6_opt_init, inet6_opt_append, inet6_opt_finish,
248 inet6_opt_set_val, inet6_opt_next, inet6_opt_find, inet6_opt_get_val,
249 inet6_rth_space, inet6_rth_init, inet6_rth_add, inet6_rth_reverse,
250 inet6_rth_segments, and inet6_rth_getaddr.
251 * inet/inet6_opt.c: New file.
252 * inet/inet6_rth.c: New file.
254 * inet/netinet/icmp6.h: Pretty printing.
257 * elf/dl-addr.c (_dl_addr): Don't match undefined references.
259 2006-05-23 Ulrich Drepper <drepper@redhat.com>
261 * nis/nis_lookup.c (nis_lookup): Use __prepare_niscall instead of
262 doing it all here. When server does not know the answer do not
263 fail immediate, try parent first.
265 * nis/nis_domain_of_r.c (nis_domain_of_r): Add missing buffer
268 2006-05-20 Ulrich Drepper <drepper@redhat.com>
270 * nis/nis_call.c (__prepare_niscall): New function. Split out
272 * nis/nis_table.c (__create_ib_request): Renamed from create_ib_request
274 (__follow_path): New function. Split out from nis_list.
275 * nis/nis_xdr.h: Add libnsl_hidden_proto for _xdr_ib_request and
277 * nis/nis_xdr.c: Add libnsl_hidden_def for _xdr_ib_request and
279 * nis/libnsl.h: Declare __prepare_niscall, __create_ib_request,
281 * nis/Versions: Export __prepare_niscall, __create_ib_request,
282 __follow_path, __do_niscall3, _xdr_ib_request, and _xdr_nis_result
283 from libnsl for version GLIBC_PRIVATE.
284 * nis/nisplus-parser.h: Remove _nss_nisplus_parse_pwent_chk.
285 Remove entry parameter from _nss_nisplus_parse_pwent and
286 _nss_nisplus_parse_grent.
287 * nis/nss_nisplus/nisplus-parser.c: Likewise.
288 * nis/nss_nisplus/nisplus-pwd.c: Remove support for SETENT_BATCH_READ
289 again. Rewrite getpwent handling to not use nis_first_entry and
290 nis_next_entry. Roll out own niscall handling.
291 * nis/nss_nisplus/nisplus-grp.c: Likewise.
293 * sunrpc/xdr_rec.c: Fix typo in comment.
295 2006-05-19 Ulrich Drepper <drepper@redhat.com>
297 * nis/nis_call.c (__do_niscall3): Avoid code duplication in error
300 * nis/nis_callback.c (internal_nis_do_callback): Don't use malloc
301 to allocate memory for my_pollfd. Better initialization of
302 cb_is_running. Use TEMP_FAILURE_RETRY.
304 * malloc/memusage.sh (memusageso): Add quotes.
305 (memusagestat): Likewise.
306 * debug/xtrace.sh (pcprofileso): Likewise.
307 (pcprofiledump): Likewise.
308 * debug/Makefile ($(objpfx)xtrace): Use $LIB in SLIBDIR
310 * malloc/Makefile ($(objpfx)memusage): Likewise.
312 * nis/nis_callback.c (__nis_create_callback): Calls to
313 svcudp_bufcreate and svctcp_create can fail. Free ->xprt if
316 * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_sendreq): Make sure
317 no uninitialized memory is passed to sendto.
319 2006-05-18 Ulrich Drepper <drepper@redhat.com>
321 * nis/nis_callback.c (__nis_create_callback): Use asprinf instead
322 of snprintf+strdup. Handle OOM.
323 * nis/nis_callback.c (__nis_create_callback): Allocate cb and
324 cb->serv together. Remove now obsolete free calls.
325 (__nis_destroy_callback): Remove now obsolete free call.
327 2006-05-18 David Woodhouse <dwmw2@redhat.com>
329 * sysdeps/posix/getaddrinfo.c: Add unique labels to the default
330 RFC3484 precedence table for fec0::/10 and fc00::/7 (site-local
331 and ULA respectively). Set precedence for IPv4 address to 10 as
332 defined in RFC3484 for preferring IPv6.
333 * posix/gai.conf: Update to match the new default tables.
335 2006-05-18 Jakub Jelinek <jakub@redhat.com>
337 * nis/nss_compat/compat-pwd.c (internal_setpwent): If nss_set*ent
338 returned NSS_STATUS_UNAVAIL, still return NSS_STATUS_SUCCESS.
339 * nis/nss_compat/compat-spwd.c (internal_setspent): Likewise.
340 * nis/nss_compat/compat-grp.c (internal_setgrent): Likewise.
342 * nis/nss_compat/compat-initgroups.c (nss_setgrent, nss_endgrent):
344 (init_nss_interface): Remove initialization of these variables.
346 2006-05-18 Ulrich Drepper <drepper@redhat.com>
348 * nis/nis_call.c (rec_dirsearch): Little optimization: pull
349 nis_free_directory forward to avoid duplication.
351 2006-05-17 Ulrich Drepper <drepper@redhat.com>
353 * nis/nis_call.c (rec_dirsearch): Handle __nis_finddirectory and
354 rec_dirsearch returning NULL.
355 (first_shoot): Handle __nis_finddirectory returning NULL.
356 (__nisfind_server): Fix leak when rec_dirsearch returns NULL.
358 * sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOSE, IN_MOVE,
359 IN_ONLYDIR, IN_DONT_FOLLOW, and IN_MASK_ADD.
361 2006-05-17 Jakub Jelinek <jakub@redhat.com>
363 * sunrpc/key_call.c (getkeyserv_handle): Call auth_destroy if
366 2006-05-15 Ulrich Drepper <drepper@redhat.com>
368 * include/rpc/pmap_prot.h: Mark all functions as hidden.
370 * nscd/nscd_initgroups.c: Mark __gr_map_handle as hidden.
371 * nscd/nscd_getgr_r.c: Likewise.
373 * include/rpc/pmap_rmt.h: Mark all functions as hidden.
375 * nscd/nscd_getai.c (__hst_map_handle): Mark as hidden.
376 * nscd/nscd_gethst_r.c (__hst_map_handle): Likewise.
378 * stdlib/longlong.h (__clz_tab): Mark as hidden.
380 * iconv/gconv_int.h: Mark __gconv_lock as hidden.
382 * include/rpc/key_prot.h: Mark all _internal functions as hidden.
384 * include/rpc/auth.h: Mark xdr_des_block_internal and
385 xdr_opaque_auth_internal as hidden.
387 * sysdeps/unix/sysv/linux/getdents.c: Mark __have_no_getdents64 as
390 * include/rpc/xdr.h: Mark all _internal functions as hidden.
392 * misc/getusershell.c (okshells): Don't use static initializers,
395 * stdlib/fmtmsg.c (keywords): Change type of len element to
396 uint32_t to not waste space on 64bit machines.
398 * locale/setlocale.c: Change _nl_category_names into a string.
399 Add new _nl_category_name_idxs. Change all users.
400 * locale/localeinfo.h: Adjust declaration of _nl_category_names.
401 Declare _nl_category_name_idxs.
402 * locale/findlocale.c: Adjust for _nl_category_names change.
403 * locale/loadlocale.c: Likewise.
404 * locale/newlocale.c: Likewise.
405 * intl/dcigettext.c: Likewise.
407 * iconv/gconv_conf.c (add_alias): Move actual alias handling to...
408 (add_alias2): ...here. New function.
409 (__gconv_read_conf): Simplify builtin alias handling.
410 (builtin_aliases): Convert to string to avoid relocations.
411 * iconv/gconv_builtin.h: Add comment about correct formatting.
413 2006-05-15 Jakub Jelinek <jakub@redhat.com>
415 * resolv/res_debug.c (loc_ntoa): Make error const.
417 2006-05-14 Andreas Schwab <schwab@suse.de>
419 * math/complex.h [__LDBL_COMPAT]: Use __REDIRECT_NTH.
421 2006-05-12 Jakub Jelinek <jakub@redhat.com>
423 * sysdeps/unix/sysv/linux/sched_getaffinity.c: Include sys/param.h.
424 (__sched_getaffinity_new): Don't crash if cpusetsize is smaller than
427 2006-05-11 Ulrich Drepper <drepper@redhat.com>
429 * resolv/res_debug.c (loc_ntoa): Define error as array, not pointer.
431 * include/arpa/nameser.h: Declare _ns_flagdata as hidden.
433 * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_master.
434 * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_master.
436 * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypbind_resp.
437 * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypbind_resp.
439 * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_cback_data.
440 * include/rpcsvc/nis_callback.h: Add libnsl_hidden_proto for
443 * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypupdate_args.
444 * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
447 * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_order.
448 * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_order.
450 * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_maplist.
451 * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_maplist.
453 * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_obj_p.
454 * include/rpcsvc/nis_callback.h: New file.
456 * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_val.
457 * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_val.
459 * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
460 * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
462 * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypmaplist.
463 * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypmaplist.
465 * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
466 * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
468 * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypdelete_args.
469 * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
472 * nis/nis_xdr.h: Mark all functions as hidden. Remove
473 __BEGIN_DECLS and __END_DECLS, the header is not installed.
475 * nis/nis_error.c: Remove table of strings. Use position
476 independent mechanism.
477 * nis/nis_error.h: New file.
479 2006-05-11 Jakub Jelinek <jakub@redhat.com>
481 * locale/programs/ld-time.c (time_finish): If wide era name or
482 format aren't provided, set both wname and wformat to L"".
484 2006-05-10 Ulrich Drepper <drepper@redhat.com>
486 * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Only store
487 results if the call was succesful.
489 * nis/nss-nis.h: Mark __yperr2nss_tab and __yperr2nss_count as hidden.
491 * nis/nss-nisplus.h: Mark __niserr2nss_tab and __niserr2nss_count
494 2006-05-10 Jakub Jelinek <jakub@redhat.com>
496 * misc/sys/queue.h: Remove uses of all QUEUEDEBUG_* macros.
498 2006-05-10 Ulrich Drepper <drepper@redhat.com>
500 * posix/wordexp.c (parse_glob): No need to check ifs for NULL, the
501 caller makes sure this is not the case.
502 (wordexp): Simplify ifs_white creation. [Coverity CID 231]
504 2006-05-09 Ulrich Drepper <drepper@redhat.com>
506 * posix/wordexp.c: Remove numerous NULL pointer tests before FREE
509 * io/ftw.c (open_dir_stream): Return right away if REALLOC fails.
510 [Coverity CID 229, 230]
512 * argp/argp-help.c (hol_entry_help): Handle STATE==NULL in ARG and
514 (hol_help): Likewise. [Coverity CID 226, 227]
516 * string/argz-replace.c (__argz_replace): Unconditionally call
517 free on SRC. [Coverity CID 225]
519 * nis/nis_creategroup.c (nis_creategroup): No need to duplicate
520 the return value of __nis_default_owner and __nis_default_group,
521 it has been especially allocated. [Coverity CID 224]
523 * nis/nis_defaults.c (searchXYX): New functions. Used by both
524 searchgroup and searchowner. Significantly simplified.
525 (__nis_default_owner): Remove duplication. Do not locally copy the
526 string before duplicating it.
527 (__nis_default_group): Likewise.
529 * nis/nis_lookup.c (nis_lookup): After calling nis_free_directory,
530 we must clear the variable before calling __nisfind_server.
532 * nis/nis_lookup.c (nis_lookup): Always free memory allocated with
533 nis_getnames. [Coverity CID 223]
535 * locale/programs/locfile.c (locfile_read): Use alloca instead of
536 xmalloc to allocate local repertoire name. [Coverity CID 222]
538 * iconv/iconv_charmap.c (use_to_charmap): No need to dynamically
539 allocate memory for the input to add_bytes. [Coverity CID 221]
541 * posix/wordexp.c (w_addword): Free word if realloc fails and it
542 was allocated here. [Coverity CID 219, 220]
544 * posix/getconf.c (print_all): Free confstr data after printing.
547 * sysdeps/posix/getaddrinfo.c (gaih_inet): Free canon string if
548 list allocation fails. [Coverity CID 215]
550 * nss/nsswitch.c (__nss_configure_lookup): Fix loop end condition.
553 * argp/argp-help.c (hol_entry_cmp): Don't call canon_doc_option if
554 string is NULL. [Coverity CID 212]
555 * argp/Makefile: Add rules to build and run bug-argp1.
556 * argp/bug-argp1.c: New file.
558 * io/ftw.c (ftw_dir): Use __rawmemchr instead of strchr to find
560 * stdlib/canonicalize.c (__realpath): Likewise.
562 * locale/programs/ld-time.c (time_finish): Don't dereference NULL
563 pointer. [Coverity CID 206]
565 * elf/dl-dst.h (DL_DST_REQUIRED): Be prepared for missing link map
566 in statically linked code.
567 * elf/dl-load.c (_dl_dst_substitute): When replacing ORIGIN in
568 statically built code, be prepared to have no link map.
571 * argp/argp-help.c (fill_in_uparams): Handle STATE==NULL in
572 dgettext calls. [Coverity CID 204]
574 * argp/argp-help.c (struct uparams): Remove valid member. Change
576 (uparam_names): Reduce size. Avoid relative relocations.
577 Moved to read-only segment.
578 (fill_in_uparams): Update for new layout.
580 * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Parameter can be
581 assumed to always be != NULL. [Coverity CID 202]
583 * argp/argp-help.c (hol_entry_help): Remove some dead code
586 * nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Optimize
587 away a few more unconditional yperr2nss calls.
588 (_nss_nis_getservbyname_r): Likewise.
590 2006-05-06 Ulrich Drepper <drepper@redhat.com>
592 * sysdeps/generic/ldsodefs.h: Remove support for non-core
595 * sysdeps/unix/sysv/linux/check_pf.c (make_request): Make sure
596 that unused memory passed to sendto is nevertheless initialized.
599 * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Avoid
600 possibly unaligned memory accesses.
602 * include/arpa/nameser.h: Also optimize NS_PUT16 and NS_PUT32.
603 * resolv/res_mkquery.c: Use NS_PUT16 and NS_PUT32 instead of __putshort
604 and __putlong respectively. Correct buffer overflow check for
607 * resolv/res_send.c (send_vc): Use ns_put16 instead of putshort.
609 * resolv/res_send.c (res_queriesmatch): Fix typo in comment.
610 (send_dg): Rewrite error handling to be more compact and avoid
611 double recomputation of timeouts. Pass MSG_NOSIGNAL to send.
613 * include/arpa/nameser.h: Add optimizations for NS_GET16 and NS_GET32.
615 * resolv/res_send.c (res_nameinquery): Use NS_GET16 directly
617 (res_queriesmatch): Likewise. Minor optimization.
620 * resolv/res_query.c (__libc_res_nquery): If answerp != NULL,
621 __libc_res_nsend might reallocate the buffer for the answer. In
622 this case we have to reload the HP pointer.
624 2006-05-05 Ulrich Drepper <drepper@redhat.com>
626 * stdio-common/vfscanf.c (memory_error): Remove definition. Add
627 some branch prediction hints.
629 * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Define SPLICE_F_*.
630 * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
631 * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
632 * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
633 * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
634 * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
635 * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
636 * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
638 2006-05-05 Martin Schwidefsky <schwidefsky@de.ibm.com>
640 * sysdeps/s390/s390-32/elf/start.S: Replace pc relative relocation
641 by a GOT relocation to make Scrt1.o position independent.
642 * sysdeps/s390/s390-64/elf/start.S: Likewise.
644 * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S: Add support for
645 six system call parameters.
646 * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
648 2006-05-05 Ulrich Drepper <drepper@redhat.com>
650 * sunrpc/svcauth_des.c (cache_init): Use calloc instead of
653 * sunrpc/svc_udp.c (BZERO): Remove definition.
655 (svc_enablecache): Use CALLOC instead of ALLOC&BZERO.
657 * sunrpc/des_impl.c: Remove ALT_ECB support. We never used it.
658 (des_SPtrans): Use uint32_t type.
661 * sunrpc/xdr_ref.c (xdr_reference): Use calloc instead of malloc&bzero.
663 2006-05-05 Jakub Jelinek <jakub@redhat.com>
666 * stdio-common/tst-printf.sh: Adjust for tst-printf.c change even
669 2006-05-05 Ulrich Drepper <drepper@redhat.com>
671 * locale/programs/ld-address.c (address_finish): Fix one more
672 place where the iso639 array might be accessed beyond the limits.
674 2006-05-04 Ulrich Drepper <drepper@redhat.com>
676 * nis/nis_table.c (nis_list): Avoid clearing res twice before
677 filling it for the first time.
679 * nis/nis_table.c (get_tablepath): Renamed from __get_tablepath.
681 Free res object content before returning.
683 * sunrpc/xdr_array.c (xdr_array): Use calloc instead of malloc&bzero.
685 * sunrpc/key_call.c (__rpc_thread_key_cleanup): Also free
688 * sunrpc/rpc_thread.c (__rpc_thread_destroy): Don't skip entire
689 cleanup for initial thread, just the free call on TVP.
691 * nscd/gai.c (__getline): Define.
694 See ChangeLog.16 for earlier changes.