Update.
[glibc.git] / ChangeLog
blob9a42abb6072e35fa78623fe6a7079ed3c16e6c40
1 2002-02-18  Roland McGrath  <roland@frob.com>
3         * sysdeps/mach/hurd/times.c: Fix typo in last change.
5         * sysdeps/mach/hurd/setpriority.c [POLICY_TIMESHARE_BASE_COUNT]:
6         Use task_policy in place of task_priority.
8         * sysdeps/generic/bits/mman.h
9         (MS_ASYNC, MS_SYNC, MS_INVALIDATE): New macros.
10         * sysdeps/mach/msync.c: New file.
12         * sysdeps/mach/powerpc/syscall.S: New file.
14         * mach/msg.c [MACH_MSG_OVERWRITE]
15         (__mach_msg_trap, __mach_msg_overwrite): New functions.
16         * mach/Versions (libc: GLIBC_2.0): Add mach_msg_overwrite and __ name.
18         * sysdeps/mach/configure.in: Check for clock.defs to put into
19         mach_interface_list.
20         * sysdeps/mach/configure: Regenerated.
22         * mach/Makefile (mach-machine): New variable, set from $(base-machine).
23         ($(objpfx)mach-syscalls.mk): Use it in place of $(base-machine).
24         ($(mach-syscalls:%=$(objpfx)%.S) static pattern rule):
25         Use <mach/machine/syscall_sw.h> instead of <sysdep.h>.
26         (mach-shortcuts): Add device_read_overwrite_request,
27         device_read_overwrite, vm_read_overwrite, thread_switch.
29         * configure.in (base_machine): Set to $machine by default.
30         * configure: Regenerated.
32         * sysdeps/mach/configure.in: Check for <mach/machine/ndr_def.h>
33         or <machine/ndr_def.h> and add -DNDR_DEF_HEADER=... to DEFINES.
34         * sysdeps/mach/configure: Regenerated.
35         * mach/mach_init.c [NDR_DEF_HEADER]: #include it.
37         * hurd/hurdfault.c (_hurdsig_fault_init): Add a cast.
39         * hurd/hurd/signal.h: Include <setjmp.h> for `jmp_buf' decl.
41         * mach/msgserver.c (__mach_msg_server_timeout) [! MACH_RCV_LARGE]:
42         Double MAX_SIZE and don't retry on MACH_RCV_TOO_LARGE.
44 2002-02-17  Roland McGrath  <roland@frob.com>
46         * sysdeps/mach/hurd/times.c
47         [NO_CREATION_TIME] (startup_time): New static variable.
48         [NO_CREATION_TIME] (times_init): New static function in __libc_subinit.
49         (__times) [NO_CREATION_TIME]: Use startup_time in lieu of task
50         creation_time from task_basic_info.
51         (__times): Use __gettimeofday instead of __host_get_time.
53         * hurd/intr-msg.c (_hurd_intr_rpc_mach_msg) [! MACH_MSG_TYPE_BIT]:
54         Use untyped Mach IPC message format.
56         * hurd/catch-exc.c: Include <assert.h>, missing from last change.
58         * hurd/Versions (libc: GLIBC_2.0): Add _S_catch_exception_raise_state,
59         _S_catch_exception_raise_state_identity,
60         _hurdsig_fault_catch_exception_raise_state,
61         _hurdsig_fault_catch_exception_raise_state_identity.
63         * mach/shortcut.awk: Don't apply the /^}$/ rule when $proto == "".
65         * sysdeps/mach/getsysstats.c (__get_avphys_pages) [HOST_VM_INFO]: Use
66         __host_info with HOST_VM_INFO flavor instead of __vm_statistics.
68         * sysdeps/mach/hurd/getpriority.c [TASK_SCHED_TIMESHARE_INFO]: Find
69         `base_priority' in PIP->timeshare_base_info instead of PIP->taskinfo.
71         * sysdeps/mach/hurd/dl-sysdep.c [FMH]: Define for i386 only.
72         (fmh, unfmh): Define these functions only #if FMH.  Otherwise define
73         them as no-op macros.
74         [FMH] (ELF_MACHINE_USER_ADDRESS_MASK): Redefine it to zero.
75         (__mmap): Uncomment uses of ELF_MACHINE_USER_ADDRESS_MASK.
77         * sysdeps/powerpc/dl-machine.h
78         (ELF_MACHINE_USER_ADDRESS_MASK): New macro.
80         * hurd/hurdselect.c (_hurd_select) [MACH_MSG_TRAILER_MINIMUM_SIZE]:
81         Use untyped Mach IPC message format.
83         * sysdeps/mach/hurd/ioctl.c (__ioctl) [! MACH_MSG_TYPE_BIT]:
84         Handle untyped Mach IPC message formats.
86         * hurd/catch-exc.c (_S_catch_exception_raise) [EXC_MASK_ALL]:
87         Expect different argument conventions when this is defined.
88         [EXC_MASK_ALL] (_S_catch_exception_raise_state): New stub function.
89         [EXC_MASK_ALL] (_S_catch_exception_raise_state_identity): Likewise.
90         * hurd/hurdfault.c: Likewise for _hurdsig_fault_catch_exception_*.
91         [NDR_CHAR_ASCII] (mig_reply_header_t): #define as mig_reply_error_t
92         for OSF Mach variant.
93         (faulted): Use mig_reply_error_t for REPLY.
94         (_hurdsig_fault_init) [EXC_MASK_ALL]: Use EXCEPTION_STATE_IDENTITY
95         in __thread_set_exception_ports call.
96         (_hurdsig_fault_init) [MACH_PORT_RECEIVE_STATUS]: Use
97         __mach_port_set_attributes in place of __mach_port_set_qlimit.
99         * sysdeps/mach/powerpc/sysdep.h (_MACH_MACHINE_ASM_H): Define this
100         before include <sysdeps/mach/sysdep.h>, to inhibit <mach/machine/asm.h>
101         on Darwin, which includes bogons.
103         * sysdeps/powerpc/dl-machine.h (elf_machine_rela): Move local
104         variable LOADBASE so it's not declared when it's not used.
106 2002-02-16  Roland McGrath  <roland@frob.com>
108         * sysdeps/mach/hurd/times.c (__times) [NO_CREATION_TIME]: Don't try
109         to use BI.creation_time.
111         * mach/Machrules (MIG): Add -x c to CPP value passed down.
113         * config.h.in: Add #undef HAVE_HOST_PAGE_SIZE.
114         * sysdeps/mach/configure.in: Check for host_page_size RPC to define it.
115         * mach/mach_init.c (__mach_init) [HAVE_HOST_PAGE_SIZE]: Use
116         host_page_size instead of vm_statistics.
118         * sysdeps/mach/Makefile (mach-before-compile): Don't include
119         mach_interface.h here, since not all variants use that name.
121         * sysdeps/mach/configure.in: Add some checks for Mach headers
122         to ensure a sane installation.
123         (mach_interface_list): Define this variable by checking for .defs
124         files found in various variants.
125         * configure.in (mach_interface_list): AC_SUBST this.
126         * config.make.in (mach-interface-list): New substituted variable.
127         * mach/Makefile (user-interfaces): Define this using the value
128         of $(mach-interface-list) instead of mach, mach4.
129         Updated other references to mach_interface to use it as well.
131         * sysdeps/mach/powerpc/machine-lock.h: Avoid multi-line strings.
133         * mach/msgserver.c [NDR_CHAR_ASCII] (mig_reply_header_t): #define as
134         mig_reply_error_t for OSF Mach variant.
136         * mach/Makefile (routines): Remove bootprivport.
137         * mach/bootprivport.c: File removed.  It has never been used.
139         * mach/msg-destroy.c (__mach_msg_destroy) [MACH_MSG_PORT_DESCRIPTOR]:
140         Grok the OSF flavor of message format.
141         (mach_msg_destroy_port): For MAKE_SEND and
142         MAKE_SEND_ONCE rights, create an destroy a right to ensure proper
143         no-senders notification.
145 2002-02-06  Roland McGrath  <roland@frob.com>
147         * hurd/Versions (libc: GLIBC_2.0): Move cthread_fork, cthread_detach
148         to here if 2.0 compatibility enabled ...
149         (libc: GLIBC_2.1.3): ... from here.
151 2002-02-15  Ulrich Drepper  <drepper@redhat.com>
153         * elf/dl-open.c (dl_open_worker): Catch wrap-around of TLS
154         generation counter.
155         * elf/dl-close.c (_dl_close): Likewise.
157 2002-02-14  Ulrich Drepper  <drepper@redhat.com>
159         * elf/Makefile: Add rules to build and run tst-tls8.
160         * elf/tst-tls8.c: New file.
161         * elf/tst-tlsmod4.c: New file.
163         * stdlib/test-a64l.c (tests): Add more test cases.
165         * sunrpc/rtime.c (rtime): Change type of thetime to uint32_t.
166         Reported by Walter Harms <WHarms@bfs.de>.
168 2002-02-11  Jes Sorensen  <jes@trained-monkey.org>
170         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Add sc_flag bit
171         definitions for struct sigcontext.
172         Suggested by David Mosberger-Tang.
174 2002-02-13  Ulrich Drepper  <drepper@redhat.com>
176         * elf/dl-close.c (remove_slotinfo): New function.  Handles everything
177         for removing reference of module in slotinfo list.
178         (_dl_close): Use remove_slotinfo.
179         * sysdeps/generic/dl-tls.c: General pretty printing.
180         (oom): Define only if SHARED.
181         (_dl_next_tls_modid): Correct starting point for the case we assume
182         there is a gap.  Add missing instruction grouping (doh!).  Correct
183         tests for reaching maximum index.
184         * elf/Makefile: Add rules to build and run tst-tls7.
185         * elf/tst-tls7.c: New file.
186         * elf/tst-tlsmod3.c: New file.
188         * elf/tst-tlsmod1.c: Move #include "tls-macros.h" instead #ifdef
189         USE_TLS.
190         * elf/tst-tlsmod2.c: Likewise.
192         * elf/dl-close.c (_dl_close): When closing an object using TLS
193         either decrement dl_tls_max_dtv_idx or set dl_tls_dtv_gaps to
194         true.  Increment dl_tls_generation only if we closed any TLS-using
195         object.
196         * elf/tst-tls6.c: New file.
197         * elf/Makefile: Add rules to build and run tst-tls6.
199         * po/da.po: Update from translation team.
201         * locale/categories.def: Fix typo [PR libc/2948].
202         * po/Makefile (BROKEN_LINGUAS): Works with current gettext
203         [PR libc/2949].
204         * locale/iso-4217.def: Update from official version [PR libc/2950].
205         * glibcbug.in: Honor TMPDIR [PR libc/2951].
206         * locale/programs/ld-collate.c (collate_finish): Bail out with a
207         message if input is too confusion instead of using assert.
208         (collate_read): Don't crash on unknown symbol [PR libc/2952].
209         Patches by Alastair McKinstry <alastair@pdd.3com.com>.
211         * elf/tst-tls1.c: Move #include "tls-macros.h" instead #ifdef USE_TLS.
212         * elf/tst-tls2.c: Likewise.
213         * elf/tst-tls3.c: Likewise.
215 2002-02-13  Jakub Jelinek  <jakub@redhat.com>
217         * elf/dl-close.c (free_slotinfo): Only define if TLS supported.
219 2002-02-13  Ulrich Drepper  <drepper@redhat.com>
221         * elf/dl-open.c (dl_open_worker): Only bump the generation counter
222         if this is really necessary.
224         * elf/dl-close.c (_dl_close): Implement freeing entries in the
225         slotinfo array.
226         (free_mem): Free memory for the slotinfo array if possible.
228 2002-02-12  Andreas Schwab  <schwab@suse.de>
230         * csu/gmon-start.c (__gmon_start__): Remove '&' from ENTRY_POINT.
232 2002-02-12  Ulrich Drepper  <drepper@redhat.com>
234         * sysdeps/generic/dl-tls.c (TLS_DTV_UNALLOCATED): Renamed from
235         TLS_DTV_UNALLOCATE.
236         (oom): New function.
237         (_dl_next_tls_modid): Rewrite to handle dl_tls_dtv_slotinfo_list.
238         (_dl_determine_tlsoffset): Likewise.
239         (_dl_allocate_tls): Likewise.
240         (__TLS_GET_ADDR): Define if not already defined.
241         (_dl_tls_symaddr): New function.
242         (allocate_and_init): New function.
243         (__tls_get_addr): Actually implement handling of generation counter
244         and deferred allocation.
245         * sysdeps/generic/ldsodefs.h (_rtld_global): Remove _dl_initimage_list,
246         add _dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and
247         _dl_tls_generation.
248         Define TLS_SLOTINFO_SURPLUS and DTV_SURPLUS.
249         Declare _dl_tls_symaddr.
250         * sysdeps/i386/dl-tls.h: Disable __tls_get_addr handling unless
251         SHARED.
252         * include/link.h (struct link_map):  Remove l_tls_nextimage and
253         l_tls_previmage.
254         * elf/dl-sym.c (_dl_sym): After successful lookup call _dl_tls_symaddr
255         instead of DL_SYMBOL_ADDRESS for STT_TLS symbols.
256         (_dl_vsym): Likewise.
257         * elf/rtld.c (_dl_start_final): Adjust initdtv initialization for new
258         layout.
259         (dl_main): Allow PT_TLS be present for empty segment.  Remove
260         nextimage list handling.  Instead add all modules using TLS to
261         dl_tls_dtv_slotinfo_list.
262         * elf/dl-open.c (dl_open_worker): After successfully loading all
263         objects add those with TLS to the dl_tls_dtv_slotinfo_list list.
264         * elf/dl-load.c (_dl_map_object_from_fd): If PT_TLS entry is for an
265         empty segment don't do anything.  Remove handling of initimage list.
266         * elf/Versions [ld] (GLIBC_2.0): Add __libc_memalign.
267         (GLIBC_PRIVATE): Add _dl_tls_symaddr.
268         * elf/dl-minimal.c: Define __libc_memalign.
269         * elf/dl-support.c: Remove _dl_initimage_list.  Add
270         _dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and
271         _dl_tls_generation.
272         * include/stdlib.h: Declare __libc_memalign.
274         * elf/Makefile: Add rules to build and run tst-tls4 and tst-tls5.
275         * elf/tst-tls4.c: New file.
276         * elf/tst-tls5.c: New file.
277         * elf/tst-tlsmod2.c: New file.
279         * elf/tls-macros.h: asms using ___tls_get_addr destroy %ecx and %edx.
281         * elf/tst-tlsmod1.c: Don't define variables unles USE_TLS.
283         * elf/tst-tls1.c: Use test-skeleton.c.
284         * elf/tst-tls2.c: Likewise.
285         * elf/tst-tls3.c: Likewise.
287         * elf/dl-conflict.c (RESOLVE_MAP): Return NULL not 0.
289 2002-02-08  Daniel Jacobowitz  <drow@mvista.com>
291         * sysdeps/mips/machine-gmon.h: Update MCOUNT for current GCC behavior.
293 2002-02-10  Ulrich Drepper  <drepper@redhat.com>
295         * elf/elf.h: Define R_386_TLS_GD and R_386_TLS_LDM.
297         * elf/tst-tls3.c: New file.
298         * elf/tst-tlsmod1.c: New file.
299         * elf/Makefile: Add rules to build and run tst-tls3.
301         * sysdeps/i386/dl-machine.h: Include <tls.h>.
302         (elf_machine_type_class): Set ELF_RTYPE_CLASS_PLT also for the three
303         TLS relocations.
305         * elf/do-lookup.h (FCT): st_value can be zero for STT_TLS symbols.
307         * po/fr.po: Update from translation team.
309         * elf/tls-macros.h: Add alternative macros for use in PIC.
311         * elf/dl-lookup.c: Include <tls.h>.
312         * elf/do-lookup.h (FCT): Don't discard STT_TLS symbols.
314         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): More changes
315         required by passing pointer to last element of the list.
317         * elf/dl-load.c (_dl_map_object_from_fd): Move adjustment of
318         l_tls_initimage to a place where it actually is performed.
320         * sysdeps/generic/glob.c (glob): Explicitly set gl_pathc to zero
321         after globfree() calls.
323         * elf/dl-deps.c (struct openaux_args): Add open_mode element.
324         (openaux): Pass open_mode as new last argument to _dl_map_object.
325         (_dl_map_object_deps): Add new argument open_mode.  Initialize
326         open_mode element of args variable with it.
327         * elf/dl-open.c (dl_open_worker): Pass __RTLD_DLOPEN flag is set to
328         _dl_map_object_deps.
329         * elf/rtld.c (dl_main): Add zero as last parameter to
330         _dl_map_object_deps call.
331         * sysdeps/generic/ldsodefs.h: Adjust prototype of _dl_map_object_deps.
332         * elf/nodlopen2.c: New file.
333         * elf/nodlopenmod2.c: New file.
334         * elf/Makefile: Add rules to build and run nodlopen2.
336         * elf/tst-tls1.c: Move TLS helper macros to...
337         * elf/tls-macros.h: ...here.  New file.
338         * elf/tst-tls2.c: New file.
339         * elf/Makefile (tests): Add tst-tls2.
340         (distribute): Add tls-macros.h.
342         * po/sv.po: Update from translation team.
344         * elf/tst-tls1.c (main): Add complete set of tests.  Split
345         architecture specific definitions from the actual test code.
347         * po/tr.po: Update from translation team.
349 2002-02-09  Ulrich Drepper  <drepper@redhat.com>
351         * elf/Makefile (tests): Add tst-tls1.
352         * elf/tst-tls1.c: New file.
354         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Don't handle
355         alignment of TCB for now.
357         * elf/rtld.c (dl_main): Use p_vaddr as address of TLS
358         initialization image for the application itself.
360         * sysdeps/generic/dl-tls.c (_dl_allocate_tls): Correctly terminate
361         loop to initialize TLS block.
363 2002-02-08  Richard Henderson  <rth@redhat.com>
365         * sysdeps/generic/ldsodefs.h (struct rtld_global): Also include
366         _dl_cpuclock_offset if HP_SMALL_TIMING_AVAIL.
368         * sysdeps/alpha/elf/initfini.c: Use \n\ for multiline string.
370 2002-02-09  Jakub Jelinek  <jakub@redhat.com>
372         * sysdeps/generic/dl-environ.c (unsetenv): Clear cnt before use.
374 2002-02-08  Ulrich Drepper  <drepper@redhat.com>
376         * po/ca.po: Update from translation team.
377         * po/sk.po: Likewise.
379         * elf/rtld.c (_dl_start_final): Install DTV explicitly.
380         (dl_main): Move dtv/static TLS handling before relocation.
381         Unconditionally call _dl_tlsoffset.  Call _dl_allocate_tls and
382         TLS_INIT_TP to allocate and install the dtv/static TLS block.
383         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): If no object
384         so far uses TLS initialize GL(dl_tls_static_size) and
385         GL(dl_tls_static_align) to account for the TCB.
386         (_dl_allocate_tls): New function.
387         * sysdeps/generic/ldsodefs.h (rtld_global): Add
388         _dl_initial_dtv_malloced.
390         * configure.in: Test for __builtin_memset more realistically.
392         * csu/version.c (banner): If TLS support is available say so.
394 2002-02-04  H.J. Lu  <hjl@gnu.org>
396         * sysdeps/mips/dl-machine.h (elf_machine_matches_host): Use
397         __attribute_used__.
398         (__dl_runtime_resolve): Likewise.
400         * sysdeps/mips/machine-gmon.h (_MCOUNT_DECL): Make it a real
401         declaration.
403 2001-11-15  H.J. Lu  <hjl@gnu.org>
405         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Don't include
406         <signal.h>, <sys/ucontext.h> nor <asm/elf.h>. Updated for gdb.
408         * sysdeps/unix/sysv/linux/mips/sys/user.h: New.
410 2002-02-07  H.J. Lu  <hjl@gnu.org>
412         * sysdeps/mips/atomicity.h (compare_and_swap): Remove
413         ".set noreorder".
414         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set):
415         Likewise.
417 2002-02-07  Ulrich Drepper  <drepper@redhat.com>
419         * sysdeps/unix/sysv/linux/bits/stat.h: Undo last patch.
421         * sysdeps/i386/dl-tls.h (__tls_get_addr): Call
422         ___tls_get_addr_internal.
423         (___tls_get_addr_internal): Define as alias for ___tls_get_addr.
425         * po/ko.po: Update from translation team.
427 2002-02-07  Jakub Jelinek  <jakub@redhat.com>
429         * sysdeps/unix/sysv/linux/bits/stat.h (struct stat): Remove packed
430         attribute, change __pad{1,2} type to unsigned int.
431         (struct stat64): Remove packed attribute.
433 2002-02-07  Ulrich Drepper  <drepper@redhat.com>
435         * sysdeps/i386/dl-tls.h: No need for #ifdef USE_TLS.
437 2002-02-07  Andreas Schwab  <schwab@suse.de>
439         * configure.in: Fix check for -zcombreloc.
441 2002-02-06  H.J. Lu  <hjl@gnu.org>
443         * config.h.in (HAVE_BUILTIN_MEMSET): New.
444         * configure.in: Check if __builtin_memset really works.
445         * elf/rtld.c (_dl_start): Check HAVE_BUILTIN_MEMSET instead of
446         __GNUC_PREREQ (2, 96) before using __builtin_memset.
448 2002-02-06  Jakub Jelinek  <jakub@redhat.com>
450         * io/bug-ftw3.c (main): Don't try the test if root.
452 2002-02-06  Martin Schwidefsky  <schwidefsky@de.ibm.com>
454         * sysdeps/unix/sysv/linux/s390/brk.c (__brk): Correct inline assembly
455         constraints.
456         * sysdeps/unix/sysv/linux/s390/s390-32/bits/resource.h (RLIMIT_LOCKS):
457         Add RLIMIT_LOCKS and adjust RLIMIT_NLIMITS.
458         * sysdeps/unix/sysv/linux/s390/s390-64/bits/resource.h (RLIMIT_LOCKS):
459         Likewise.
460         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (clone): Make clone
461         a weak alias for __clone.
462         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (clone): Likewise.
463         * sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: Fix typo.
464         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Add framestate.
465         * sysdeps/unix/sysv/linux/s390/s390-64/Versions: New file.
466         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap64): Make __mmap
467         a weak alias for __mmap64.
469 2002-02-05  H.J. Lu  <hjl@gnu.org>
471         * sysdeps/mips/atomicity.h (exchange_and_add): Not use branch likely.
472         (atomic_add): Likewise.
473         (compare_and_swap): Likewise.
474         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise.
476 2002-02-07  Ulrich Drepper  <drepper@redhat.com>
478         * sysdeps/generic/dl-tls.c: Don't read TLS header if TLS is not needed.
480         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Account for
481         alignment of the TCB and store total size and alignment of static
482         TLS block in _dl_tls_static_size and _dl_tls_static_align.
483         tls_index is a typedef.
484         * sysdeps/generic/ldsodefs.h: Declare _dl_tls_static_size and
485         _dl_tls_static_align.
486         * sysdeps/i386/dl-tls.h: tls_index is a typedef.
487         * elf/dl-support.c: Define _dl_tls_static_size and
488         _dl_tls_static_align.
490 2002-02-06  Ulrich Drepper  <drepper@redhat.com>
492         * configure.in: Add --without-tls option.
493         * sysdeps/i386/elf/configure.in: Don't check for TLS support if
494         --without-tls is given.
496         * sysdeps/generic/dl-tls.c: Include <tls.h>.
498         * sysdeps/i386/dl-tls.h: Don't define anything if !USE_TLS.
500 2002-02-06  Roland McGrath  <roland@frob.com>
502         * malloc/hooks.c [! HAVE_MREMAP]: Conditionalize unused decls.
503         * malloc/malloc.c [! HAVE_MREMAP]: Likewise.
505         * scripts/versions.awk: Improve error message for missing version.
506         Each version inherits from the last one only if they have the same
507         nonnumeric prefix, i.e. GLIBC_x.y and GLIBC_x.z or FOO_x and FOO_y
508         but not GLIBC_x and FOO_y.
510         * scripts/firstversions.awk: Handle libraries that don't have each
511         particular version named in the third column of shlib-versions.
513         * scripts/firstversions.awk: Don't mess with GLIBC_PRIVATE.
515 2002-02-06  Ulrich Drepper  <drepper@redhat.com>
517         * Versions.def [ld]: Add GLIBC_2.3.
518         * elf/Versions [ld]: Add __tls_get_addr to GLIBC_2.3.
519         * elf/Makefile (dl-routines): Add dl-tls.
520         (distribute): Add dl-tls.h.
521         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
522         _dl_tls_module_cnt, add _dl_tls_max_dtv_idx and _dl_tls_dtv_gaps.
523         Add prototypes for _dl_next_tls_modid and _dl_determine_tlsoffset.
524         * elf/dl-load.c (_dl_map_object_from_fd): Store alignment requirement
525         along with the other info in the link map.  Change queueing of init
526         images for double linked list.  Use _dl_next_tls_modid to compute
527         l_tls_modid.
528         * elf/rtld.c (_dl_start_final): Store alignment requirement
529         along with the other info in rtld map and executable map.
530         (dl_main): Add ld.so to the init image list if necessary.  Compute
531         final module ID with _dl_next_tls_modid.
532         * include/link.h (struct link_map): Add l_tls_previmage and
533         l_tls_align.
534         * eld/dl-support.c: Define _dl_tls_max_dtv_idx and _dl_tls_dtv_gaps.
535         * sysdeps/i386/elf/Versions: New file.
536         * sysdeps/generic/dl-tls.c: New file.
537         * sysdeps/generic/dl-tls.h: New file.
538         * sysdeps/i386/dl-tls.h: New file.
540 2002-02-06  Roland McGrath  <roland@frob.com>
542         * sysdeps/unix/sysv/linux/netinet/ip.h: Moved to ...
543         * sysdeps/generic/netinet/ip.h: ... here, replacing old file.
545 2002-01-05  Roland McGrath  <roland@frob.com>
547         * sysdeps/mach/configure.in: New file.
548         * sysdeps/mach/configure: New generated file.
550         * mach/Makefile (user-interfaces): Remove default_pager_helper.
551         It has never been used by anything.
553 2002-02-06  H.J. Lu  <hjl@gnu.org>
555         * sysdeps/mips/elf/ldsodefs.h: Make sure the right <ldsodefs.h>
556         is included.
558 2002-02-06  Ulrich Drepper  <drepper@redhat.com>
560         * sysdeps/unix/sysv/linux/bits/stat.h (struct stat): Add
561         attribute((packed)) to counter stupid people misusing gcc options.
562         (struct stat64): Likewise.
564 2002-02-05  Ulrich Drepper  <drepper@redhat.com>
566         * elf/rtld.c (dl_main): Correct indentation.  Use bool as type for
567         the variables which are used as booleans.
569 2002-02-06  Andreas Jaeger  <aj@suse.de>
571         * include/libc-symbols.h (INTUSE): Renamed from INT.
572         * elf/dl-deps.c: Change users.
573         * sysdeps/generic/dl-sysdep.c: Likewise.
574         * sysdeps/generic/dl-cache.c: Likewise.
575         * elf/dl-reloc.c: Likewise.
576         * elf/rtld.c: Likewise.
577         * elf/dl-version.c: Likewise.
578         * elf/dl-load.c: Likewise.
579         * elf/dl-dst.h: Likewise.
580         * elf/dl-init.c: Likewise.
581         * elf/dl-error.c: Likewise.
582         * elf/dl-fini.c: Likewise.
583         * elf/dl-runtime.c: Likewise.
584         * elf/do-lookup.h: Likewise.
586         * stdio-common/_itoa.h: Undefine SPECIAL to avoid duplicate
587         definition.
588         * stdio-common/_itowa.h: Likewise.
590 2002-02-05  Ulrich Drepper  <drepper@redhat.com>
592         * elf/dl-minimal.c: Define _itoa_lower_digits.
594         * elf/dynamic-link.h (elf_get_dynamic_info): ld.so can have
595         DT_FLAGS set.
597         * elf/dl-load.c (_dl_map_object_from_fd): Prevent dynamically
598         loading modules with the DF_STATIC_TLS flag set.
599         * elf/dynamic-link.h (elf_get_dynamic_info): Initialize l_flags
600         element.
601         * include/link.h (struct link_map): Add l_flags field.
602         * elf/elf.h (DF_STATIC_TLS): New definition.
604         * dlfcn/Makefile: Add rules to build and run bug-dlopen1.
605         * dlfcn/bug-dlopen1.c: New file.  By Bruno Haible.
607         * elf/rtld.c (process_dl_debug): Correct printing help message.
608         * elf/dl-misc.c (_dl_debug_vdprintf): Implement precision handling
609         for %s.
611         * inet/getnetgrent_r.c (innetgr): Add int* parameter to getfct
612         definition and pass &errno in use of this variable.
613         Reported by Simon Wilkinson <simon@sxw.org.uk> [PR libc/2911].
615 2002-02-04  Andreas Schwab  <schwab@suse.de>
617         * locale/programs/localedef.h (WITH_CUR_LOCALE): Define.
618         * locale/programs/charmap-dir.c: Wrap calls that output messages
619         with WITH_CUR_LOCALE.  Include "localedef.h" first.
620         * locale/programs/charmap.c: Likewise.
621         * locale/programs/ld-address.c: Likewise.
622         * locale/programs/ld-collate.c: Likewise.
623         * locale/programs/ld-ctype.c: Likewise.
624         * locale/programs/ld-identification.c: Likewise.
625         * locale/programs/ld-measurement.c: Likewise.
626         * locale/programs/ld-messages.c: Likewise.
627         * locale/programs/ld-monetary.c: Likewise.
628         * locale/programs/ld-name.c: Likewise.
629         * locale/programs/ld-numeric.c: Likewise.
630         * locale/programs/ld-paper.c: Likewise.
631         * locale/programs/ld-telephone.c: Likewise.
632         * locale/programs/ld-time.c: Likewise.
633         * locale/programs/linereader.c: Likewise.
634         * locale/programs/linereader.h: Likewise.
635         * locale/programs/localedef.c: Likewise.
636         * locale/programs/locfile.c: Likewise.
637         * locale/programs/repertoire.c: Likewise.
639 2002-02-05  Ulrich Drepper  <drepper@redhat.com>
641         * elf/rtld.c (_dl_start_final): Determine load address to locate
642         ehdr with GL(dl_rtld_map).l_map_start.
644         * po/ca.po: Update from translation team.
646         * elf/rtld.c (dl_main): Read PT_TLS entry of the executable.
647         * elf/dl-load.c (_dl_map_object_from_fd): Handle PT_TLS program
648         header entry.
649         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add
650         _dl_tls_module_cnt.
651         * elf/dl-support.c: Define _dl_initimage_list and _dl_tls_module_cnt.
653 2002-02-04  Ulrich Drepper  <drepper@redhat.com>
655         * elf/rtld.c (_dl_start): Fill TLS values in link map for rtld.
656         * include/link.h (struct link_map): Add various members for TLS
657         information.
658         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
659         _rtld_tlsoffset, add _dl_initimage_list.
660         * sysdeps/i386/dl-lookupcfg.h: New file.
661         * sysdeps/i386/dl-machine.h (elf_machine_rel): Implement missing
662         TLS relocation.  When using TLS we now use RESOLVE_MAP.
663         (elf_machine_rela): Use RESOLVE_MAP instead of RESOLVE_MAP if TLS
664         is used.
666         * sysdeps/generic/dl-cache.c (_dl_cache_libcmp): Mark as possibly
667         unused.
669         * elf/rtld.c (_dl_start_final): Allocate TLS and initialize
670         thread-pointer as soon as possible.
671         * sysdeps/generic/ldsodefs.h: Include <tls.h>.  Define first TLS
672         elements in rtld_global.
673         * sysdeps/generic/tls.h: New file.
674         * elf/Makefile (distribute): Add tls.h.
675         * sysdeps/i386/dl-machine.h (elf_machine_rel): Add support for TLS
676         relocations.  Not complete yet.
678         * resolv/resolv.h: Allow user to define __need_res_state and only
679         define __res_start structure then.
680         * include/resolv.h: Only declare functions if _RESOLV_H_ is defined.
682         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Move
683         dl_cpuclock_offset initialization to _dl_start_final.
684         (_dl_show_auxv): Avoid unnecessary sign extension.
685         * elf/rtld.c (_dl_start_final): Initialize dl_cpuclock_offset.
687 2002-02-03  Ulrich Drepper  <drepper@redhat.com>
689         * config.h.in: Add HAVE_TLS_SUPPORT.
690         * sysdeps/i386/elf/configure.in: New file.
692 2002-02-03  Andreas Schwab  <schwab@suse.de>
694         * sysdeps/posix/readv.c: Use ssize_t for bytes_read.
695         * sysdeps/posix/writev.c: Use ssize_t for bytes_written.  Fix comment.
697 2002-02-03  Thorsten Kukuk  <kukuk@suse.de>
699         * sysdeps/posix/writev.c: Check for ssize_t overflow, don't use
700         alloca if the memory reqirements are too high.
702 2002-02-03  Ulrich Drepper  <drepper@redhat.com>
704         * elf/dl-load.c (decompose_rpath): Avoid using strstr.
705         * elf/dl-minimal.c (_strerror_r): Use _itoa instead of _itoa_word since
706         the former is available anyway and speed isn't important here.
707         * elf/dl-misc.c (_dl_debug_vdprintf): Likewise.
708         * elf/dl-version.c (match_symbol): Likewise.
709         (_dl_check_map_versions): Likewise.
710         * elf/rtld.c (process_envvars): Likewise.
711         (print_statistics): Likewise.
712         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Likewise.
713         * elf/dl-minimal.c (_itoa): Always define it.  Make it work for all
714         bases.  Add assert to catch uses of unimplemented features.
715         (__strsep): Add assert to catch uses of unimplemented features.
716         * elf/dl-object.c (_dl_new_object): Don't use rawmemchr.  Use strchr
717         and avoid inline optimization.
718         * elf/rtld.c (process_envvars): Likewise.
719         * elf/dl-open.c: Don't include <stdio-common/_itoa.h>.
720         * elf/dl-profile.c (_dl_start_profile): Help compiler to avoid ffs.
721         * elf/rtld.c (dl_main): Avoid strsep inline optimization.
723 2002-02-02  Ulrich Drepper  <drepper@redhat.com>
725         * stdio-common/_itoa.h: Minor simplifications of the code.
726         * stdio-common/_itoa.c: Likewise.
728         * elf/dl-reloc.c (_dl_relocate_object): Use _dl_debug_printf
729         instead of _dl_printf for debugging info output.
731         * manual/examples/mkfsock.c (make_named_socket): Make sure name is
732         always NUL-terminated.  Patch by Chris D. Sloan <cds@cs.hmc.edu>.
734 2002-02-01  H.J. Lu  <hjl@gnu.org>
736         * sysdeps/mips/atomicity.h (exchange_and_add): Use branch likely.
737         (atomic_add): Likewise.
738         (compare_and_swap): Return 0 only when failed to compare. Use
739         branch likely.
741         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Use
742         branch likely.
744 2002-02-03  kaz Kojima  <kkojima@rr.iij4u.or.jp>
746         * sysdeps/sh/dl-machine.h (elf_machine_rela): Fix a typo.
748 2002-02-02  Ulrich Drepper  <drepper@redhat.com>
750         * elf/dl-minimal.c (__strsep): New minimal implementation.
752 2002-02-02  Paul Eggert  <eggert@twinsun.com>
754         * src/mktime.c [defined DEBUG && STDC_HEADERS]: Include <string.h>.
755         (__mktime_internal): If no tm_isdst is requested, prefer solutions
756         with tm_isdst > 0 when the requested time falls within a
757         spring-forward gap [PR libc/2894].
759 2002-02-03  Andreas Schwab  <schwab@suse.de>
761         * stdio-common/tst-rndseek.c: Increase timeout.
763 2002-02-02  Ulrich Drepper  <drepper@redhat.com>
765         Change ld.so to not use functions which are exported.  One cannot
766         interpose them anyway.  Use INT() to mark uses, INTDEF() to mark
767         definitions.
768         * include/libc-symbols.h: Define INT and INTDEF.
769         * sysdeps/generic/ldsodefs.h: Declare _dl_debug_printf_internal,
770         _dl_signal_error_internal, _dl_map_object_internal,
771         _dl_map_object_deps_internal, _dl_lookup_symbol_internal,
772         _dl_lookup_versioned_symbol_internal,
773         _dl_relocate_object_internal, _dl_debug_state_internal,
774         _dl_start_profile_internal, and _dl_unload_cache_internal.
775         * include/dlfcn.h: Declare _dl_catch_error_internal.
776         * elf/rtld.c: Use INT for calls to any of the *_internal functions
777         above.  Add INTDEF to function definitions.
778         * elf/dl-debug.c: Likewise.
779         * elf/dl-deps.c: Likewise.
780         * elf/dl-dst.h: Likewise.
781         * elf/dl-error.c: Likewise.
782         * elf/dl-fini.c: Likewise.
783         * elf/dl-init.c: Likewise.
784         * elf/dl-load.c: Likewise.
785         * elf/dl-lookup.c: Likewise.
786         * elf/dl-misc.c: Likewise.
787         * elf/dl-open.c: Likewise.
788         * elf/dl-profile.c: Likewise.
789         * elf/dl-reloc.c: Likewise.
790         * elf/dl-runtime.c: Likewise.
791         * elf/dl-version.c: Likewise.
792         * elf/do-lookup.h: Likewise.
793         * sysdeps/generic/dl-cache.c: Likewise.
794         * sysdeps/generic/dl-sysdep.c: Likewise.
795         * sysdeps/alpha/dl-machine.h (RTLD_START): Call _dl_init_internal
796         instead of _dl_init.
797         * sysdeps/arm/dl-machine.h: Likewise.
798         * sysdeps/cris/dl-machine.h: Likewise.
799         * sysdeps/hppa/dl-machine.h: Likewise.
800         * sysdeps/i386/dl-machine.h: Likewise.
801         * sysdeps/ia64/dl-machine.h: Likewise.
802         * sysdeps/m68k/dl-machine.h: Likewise.
803         * sysdeps/mips/dl-machine.h: Likewise.
804         * sysdeps/mips/mips64/dl-machine.h: Likewise.
805         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
806         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
807         * sysdeps/sh/dl-machine.h: Likewise.
808         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
809         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
810         * sysdeps/x86_64/dl-machine.h: Likewise.
811         * sysdeps/powerpc/dl-start.S (_dl_start_user): Likewise.
813         * elf/Versions: Don't export _dl_check_all_versions, _dl_sysdep_start,
814         and _dl_debug_initialize.
816         * elf/dl-object.c (_dl_new_object): Avoid using strrchr.  We have
817         more information.
818         * elf/rtld.c (dl_main): Avoid strrchr.
819         * sysdeps/unix/sysv/linux/dl-origin.c (_dl_get_origin): Use the
820         result of readlink.  Search from the back for '/'.
822         * elf/dl-profile.c (_dl_start_profile): Help the compiler to avoid
823         strncpy if possible.
825         * sysdeps/generic/dl-environ.c (unsetenv): Optimize.  Don't use
826         strncmp.
827         * elf/dl-load.c (is_dst): Optimize.  Don't call strncmp twice.
828         * elf/rtld.c (process_dl_debug): Optimize. Avoid calls to strncmp,
829         strspn, and strcspn.
830         (process_envvars): Don't use strcspn.
832         * elf/dl-load.c (_dl_dst_count): Fix possible endless loop.
833         (_dl_dst_substitute): Likewise.
835 2002-02-01  Ulrich Drepper  <drepper@redhat.com>
837         * elf/do-rel.h (elf_dynamic_do_rel): Help the compiler recognize
838         code which is never used when relocating ld.so itself.
840         * elf/dynamic-link.h (elf_get_dynamic_info): Optimize a bit for
841         starting ld.so itself.  Move l_addr variable initialization closer
842         to use.
843         (_ELF_DYNAMIC_DO_RELOC): Help the compiler optimize a bit.
845 2002-02-01  Jakub Jelinek  <jakub@redhat.com>
847         * Versions.def (libc): Add GLIBC_PRIVATE.
848         (libdb, libnss_db, libdb1): Remove.
849         (libnss_compat, libnss_dns, libnss_files, libnss_hesiod, libnss_nis,
850         libnss_nisplus): Move all symbols to GLIBC_PRIVATE.
851         (libpthread): Add GLIBC_PRIVATE.
852         (libresolv): Likewise, remove GLIBC_2.1.
853         (ld): Add GLIBC_PRIVATE, remove GLIBC_2.1.1, GLIBC_2.2, GLIBC_2.2.1,
854         GLIBC_2.2.3, GLIBC_2.3.
855         * catgets/Versions (__open_catalog): Move to GLIBC_PRIVATE.
856         * elf/Versions (_dl_open, _dl_close, _dl_addr, _dl_init_first,
857         _dl_sym, _dl_vsym): Likewise.
858         (__libc_enable_secure, __libc_stack_end, _dl_argv, _dl_catch_error,
859         _dl_check_all_versions, _dl_check_map_versions, _dl_debug_initialize,
860         _dl_debug_printf, _dl_debug_state, _dl_dst_count, _dl_dst_substitute,
861         _dl_init, _dl_lookup_symbol, _dl_lookup_symbol_skip,
862         _dl_lookup_versioned_symbol, _dl_lookup_versioned_symbol_skip,
863         _dl_map_object, _dl_map_object_deps, _dl_out_of_memory,
864         _dl_relocate_object, _dl_signal_error, _dl_start_profile,
865         _dl_starting_up, _dl_sysdep_start, _dl_unload_cache, _rtld_global):
866         Likewise.
867         (_dl_object_relocation_scope): Remove.
868         * hesiod/Versions: Move all symbols to GLIBC_PRIVATE.
869         * iconv/Versions (__gconv_alias_db, __gconv_modules_db,
870         __gconv_cache): Move to GLIBC_PRIVATE.
871         * inet/Versions (__internal_endnetgrent, __internal_getnetgrent_r,
872         __internal_setnetgrent): Likewise.
873         * io/Versions (__libc_open, __libc_close, __libc_read, __libc_write,
874         __libc_lseek, __libc_fcntl, __libc_open64, __libc_lseek64): Likewise.
875         * locale/Versions (__collate_element_hash, __collate_element_strings,
876         __collate_symbol_classes, __collate_symbol_hash,
877         __collate_symbol_strings, _nl_current_LC_COLLATE,
878         _nl_current_LC_CTYPE): Likewise.
879         * misc/Versions (__libc_fsync, __libc_msync): Likewise.
880         * nis/Versions (libnss_compat): Move all symbols to GLIBC_PRIVATE.
881         (libnss_nis, libnss_nisplus): Likewise.
882         * nss/Versions (_nss_files_parse_grent, _nss_files_parse_pwent,
883         _nss_files_parse_spent): Move to GLIBC_PRIVATE.
884         (libnss_files): Move all symbols to GLIBC_PRIVATE.
885         * posix/Versions (__libc_wait, __libc_waitpid, __libc_pause,
886         __libc_nanosleep, __libc_fork, __libc_pread, __libc_pread64,
887         __libc_pwrite, __libc_pwrite64): Move to GLIBC_PRIVATE.
888         * resolv/Versions (__gai_sigqueue, __ns_name_unpack, __ns_name_ntop,
889         __ns_get16, __ns_samename): Likewise.
890         (libnss_dns): Move all symbols to GLIBC_PRIVATE.
891         * setjmp/Versions (__libc_longjmp, __libc_siglongjmp): Move to
892         GLIBC_PRIVATE.
893         * socket/Versions (__libc_accept, __libc_send, __libc_recvfrom,
894         __libc_recvmsg, __libc_sendmsg, __libc_recv, __libc_sendto,
895         __libc_connect): Likewise.
896         * stdio-common/Versions (_itoa_lower_digits, _itoa_upper_digits):
897         Likewise.
898         * stdlib/Versions (__libc_system): Likewise.
899         * sunrpc/Versions (__rpc_thread_destroy): Likewise.
900         * sysdeps/hppa/Versions: Move all symbols to GLIBC_PRIVATE.
901         * sysdeps/ia64/fpu/Versions: Likewise.
902         * sysdeps/ia64/Versions: Likewise.
903         * sysdeps/unix/sysv/linux/ia64/Versions: Likewise.
904         * sysdeps/unix/sysv/linux/i386/Versions (__modify_ldt): Move
905         to GLIBC_PRIVATE.
906         * sysdeps/unix/sysv/linux/x86_64/Versions (__modify_ldt): Likewise.
907         * sysdeps/unix/sysv/linux/Versions (__syscall_rt_sigqueueinfo,
908         __libc_sigaction): Likewise.
909         * termios/Versions (__libc_tcdrain): Likewise.
911         * misc/sys/cdefs (__attribute_noinline__): Define.
912         * elf/dl-lookup.c (_dl_do_lookup, _dl_do_lookup_versioned): Add
913         __attribute_noinline__.
915         * elf/Makefile (rtld-routines): Add dl-xstat64, dl-fxstat64.
916         * elf/dl-xstat64.c: New file.
917         * elf/dl-fxstat64.c: New file.
918         * sysdeps/unix/sysv/linux/fxstat64.c: If RTLD_STAT64 is defined,
919         don't export __fxstat64 at multiple versions.
920         * sysdeps/unix/sysv/linux/lxstat64.c: Similarly.
921         * sysdeps/unix/sysv/linux/xstat64.c: Similarly.
923 2002-01-18  Isamu Hasegawa  <isamu@yamato.ibm.com>
925         * locale/program/ld-collate.c (collate_finish): Assign a wide
926         char collation sequence value to multi character collating
927         elements, and avoid over writing by non-character elements.
929 2002-02-01  Ulrich Drepper  <drepper@redhat.com>
931         * elf/Makefile (distribute): Add dl-procinfo.c.
932         * sysdeps/unix/sysv/linux/i386/Dist: Remove dl-procinfo.c.
933         * sysdeps/unix/sysv/linux/arm/Dist: Likewise.
935 2002-02-01  Jakub Jelinek  <jakub@redhat.com>
937         * sysdeps/generic/ldsodefs.h (_dl_load_lock): Remove duplicate
938         definition.
939         * sysdeps/ia64/hp-timing.h: Move _dl_hp_timing_overhead in
940         _rtld_global struct.
941         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise.
942         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
943         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
944         * sysdeps/sparc/sparc64/Makefile: Make hp-timing static only.
945         * sysdeps/unix/sysv/aix/init-first.c (_dl_fpu_control,
946         _dl_fpu_control_set): Remove unused externs.
947         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c: New file.
948         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c: New file.
949         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Move procinfo
950         related variables in _rtld_global struct.
951         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise.
952         * sysdeps/unix/sysv/linux/init-first.c (_dl_fpu_control_set): Remove
953         unused extern.
955 2002-02-01  Ulrich Drepper  <drepper@redhat.com>
957         * sysdeps/generic/dl-procinfo.c: New file.
959 2002-02-01  Andreas Schwab  <schwab@suse.de>
961         * sysdeps/m68k/dl-machine.h: Don't use multi-line string literals.
963 2002-02-01  Ulrich Drepper  <drepper@redhat.com>
965         * elf/rtld.c (_dl_start): Mark as internal_function.
966         * sysdeps/i386/dl-machine.h (RTLD_START): Pass parameter for _dl_start
967         in register.
968         (elf_machine_rel): Cleanup and minor optimization for RTLD_BOOTSTRAP.
969         General pretty printing.
971 2002-01-31  Ulrich Drepper  <drepper@redhat.com>
973         * elf/dl-minimal.c: Define _itoa for 32-bit machines with HP timing.
974         * elf/dl-reloc.c: Pretty printing.
975         * sysdeps/generic/ldsodefs.h: Move _dl_hp_timing_overhead and
976         procinfo-related variables in rtld_global struct.
977         * elf/dl-support.c: Likewise.
978         * elf/rtld.c: Likewise.
979         * sysdeps/i386/i686/Makefile: Likewise.
980         * sysdeps/i386/i686/hp-timing.c: Likewise.
981         * sysdeps/i386/i686/hp-timing.h: Likewise.
982         * sysdeps/ia64/Makefile: Likewise.
983         * sysdeps/ia64/hp-timing.c: Likewise.
984         * sysdeps/sparc/sparc32/sparcv9/Makefile: Likewise.
985         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
986         * sysdeps/unix/sysv/linux/arm/dl-procinfo.c: Likewise.
987         * sysdeps/unix/sysv/linux/arm/dl-procinfo.h: Likewise.
988         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
989         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Likewise.
990         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Likewise.
991         * sysdeps/x86_64/Makefile: Likewise.
993         * sysdeps/generic/ldsodefs.h: Add _dl_load_lock, _dl_lazy,
994         _dl_dynamic_weak, _dl_fpu_control, _dl_cpuclock_offset, and
995         _dl_debug_fd to rtld_global.
996         * elf/Versions: Likewise.
997         * elf/dl-close.c: Likewise.
998         * elf/dl-iteratephdr.c: Likewise.
999         * elf/dl-lookup.c: Likewise.
1000         * elf/dl-misc.c: Likewise.
1001         * elf/dl-open.c: Likewise.
1002         * elf/dl-support.c: Likewise.
1003         * elf/do-lookup.h: Likewise.
1004         * elf/rtld.c: Likewise.
1005         * sysdeps/generic/dl-cache.c: Likewise.
1006         * sysdeps/generic/dl-sysdep.c: Likewise.
1007         * sysdeps/ia64/Versions: Likewise.
1008         * sysdeps/unix/clock_gettime.c: Likewise.
1009         * sysdeps/unix/clock_settime.c: Likewise.
1010         * sysdeps/unix/sysv/linux/init-first.c: Likewise.
1011         * sysdeps/sparc/Versions: Removed.
1012         * sysdeps/i386/i686/Versions : Removed.
1013         * sysdeps/x86_64/Versions: Removed.
1014         * configure.in: Define HAVE_PROTECTED if .protected is available.
1015         * config.h.in: Add entry for HAVE_PROTECTED.
1017 2002-01-31  Jakub Jelinek  <jakub@redhat.com.
1019         * sysdeps/alpha/dl-machine.h: Move global variables for SHARED
1020         code in struct _rtld_global.  Export this struct, remove all
1021         exports for the signal variables.
1022         * sysdeps/arm/dl-machine: Likewise.
1023         * sysdeps/generic/dl-origin: Likewise.
1024         * sysdeps/generic/dl-sysdep: Likewise.
1025         * sysdeps/generic/dl-cache: Likewise.
1026         * sysdeps/hppa/dl-fptr: Likewise.
1027         * sysdeps/hppa/dl-machine: Likewise.
1028         * sysdeps/cris/dl-machine: Likewise.
1029         * sysdeps/i386/dl-machine: Likewise.
1030         * sysdeps/ia64/dl-machine: Likewise.
1031         * sysdeps/m68k/dl-machine: Likewise.
1032         * sysdeps/mach/hurd/dl-sysdep: Likewise.
1033         * sysdeps/mips/mips64/dl-machine: Likewise.
1034         * sysdeps/mips/dl-machine: Likewise.
1035         * sysdeps/powerpc/elf/libc-start: Likewise.
1036         * sysdeps/powerpc/dl-machine: Likewise.
1037         * sysdeps/powerpc/dl-start: Likewise.
1038         * sysdeps/sparc/sparc32/dl-machine: Likewise.
1039         * sysdeps/sparc/sparc64/dl-machine: Likewise.
1040         * sysdeps/sh/dl-machine: Likewise.
1041         * sysdeps/s390/s390-32/dl-machine: Likewise.
1042         * sysdeps/s390/s390-64/dl-machine: Likewise.
1043         * sysdeps/unix/sysv/aix/libc-start: Likewise.
1044         * sysdeps/unix/sysv/aix/start-libc: Likewise.
1045         * sysdeps/unix/sysv/linux/ia64/dl-static: Likewise.
1046         * sysdeps/unix/sysv/linux/m68k/getpagesize: Likewise.
1047         * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize: Likewise.
1048         * sysdeps/x86_64/dl-machine: Likewise.
1050 2002-01-31  Ulrich Drepper  <drepper@redhat.com>
1052         * sysdeps/posix/readv.c: Don't use alloca if the memory requirements
1053         are too high.
1055 2002-01-31  Andreas Schwab  <schwab@suse.de>
1057         * sysdeps/posix/readv.c: Check for ssize_t overflow.
1059 2002-01-31  Andreas Schwab  <schwab@suse.de>
1061         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Fix leftover
1062         reference to _dl_pagesize.
1064 2002-01-30  Ulrich Drepper  <drepper@redhat.com>
1066         * Versions.def [ld]: Add GLIBC_2.3.
1067         * elf/dl-addr.c: Move global variables for SHARED code in struct
1068         _rtld_global.  Export this struct, remove all exports for the
1069         signal variables.
1070         * elf/dl-close.c: Likewise.
1071         * elf/dl-conflict.c: Likewise.
1072         * elf/dl-debug.c: Likewise.
1073         * elf/dl-deps.c: Likewise.
1074         * elf/dl-dst.h: Likewise.
1075         * elf/dl-error.c: Likewise.
1076         * elf/dl-fini.c: Likewise.
1077         * elf/dl-init.c: Likewise.
1078         * elf/dl-iteratephdr.c: Likewise.
1079         * elf/dl-libc.c: Likewise.
1080         * elf/dl-load.c: Likewise.
1081         * elf/dl-lookup.c: Likewise.
1082         * elf/dl-minimal.c: Likewise.
1083         * elf/dl-object.c: Likewise.
1084         * elf/dl-open.c: Likewise.
1085         * elf/dl-profile.c: Likewise.
1086         * elf/dl-profstub.c: Likewise.
1087         * elf/dl-reloc.c: Likewise.
1088         * elf/dl-runtime.c: Likewise.
1089         * elf/dl-support.c: Likewise.
1090         * elf/dl-sym.c: Likewise.
1091         * elf/dl-version.c: Likewise.
1092         * elf/do-lookup.h: Likewise.
1093         * elf/do-rel.h: Likewise.
1094         * elf/dynamic-link.h: Likewise.
1095         * elf/rtld.c: Likewise.
1096         * sysdeps/generic/dl-cache.c: Likewise.
1097         * sysdeps/generic/dl-sysdep.c: Likewise.
1098         * sysdeps/generic/ldsodefs.h: Likewise.
1099         * sysdeps/generic/libc-start.c: Likewise.
1100         * sysdeps/i386/dl-machine.h: Likewise.
1101         * sysdeps/ia64/dl-fptr.c: Likewise.
1102         * sysdeps/ia64/dl-machine.h: Likewise.
1103         * sysdeps/unix/sysv/linux/dl-librecon.h: Likewise.
1104         * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
1105         * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise.
1106         * sysdeps/unix/sysv/linux/getclktck.c: Likewise.
1107         * sysdeps/unix/sysv/linux/getpagesize.c: Likewise.
1108         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
1109         * sysdeps/unix/sysv/linux/ia64/dl-static.c: Likewise.
1110         * sysdeps/unix/sysv/linux/ia64/getpagesize.c: Likewise.
1112 2002-01-29  Ulrich Drepper  <drepper@redhat.com>
1114         * sysdeps/ia64/dl-lookupcfg.h (DL_AUTO_FUNCTION_ADDRESS): Add cast
1115         to avoid warning
1116         (DL_STATIC_FUNCTION_ADDRESS): Likewise.
1118         * elf/dl-lookup.c: Only define or handle _dl_num_relocations for the
1119         SHARED version.
1120         * elf/dl-reloc.c: Likewise for _dl_num_cache_relocations.
1122         * elf/rtld.c (_dl_start): Use __builtin_memset if available.
1124 2002-01-29  Ben Collins  <bcollins@debian.org>
1126         * string/bits/string2.h (__mempcpy): Protect size arg for
1127         addition when using __builtin_memcpy.
1129 2002-01-29  Ulrich Drepper  <drepper@redhat.com>
1131         * stdlib/Makefile (tests): Add tst-qsort.
1132         * stdlib/tst-qsort.c: New file.  Written by Paul Eggert.
1134         * manual/signal.texi (Process Signal Mask): Document that
1135         pthread_sigmask, not sigprocmask, must be used in MT programs.
1136         Patch by Bertold Kolics <Bertold.Kolics@Sun.COM>.
1138         * misc/hsearch_r.c (hsearch_r): Don't insert anything if entry is
1139         found.
1140         * misc/Makefile (tests): Add tst-hsearch.
1141         * misc/tst-hsearch.c: New file.
1143 2002-01-18  Wolfram Gloger  <wg@malloc.de>
1145         * malloc/malloc.c: Rewrite, adapted from Doug Lea's malloc-2.7.0.c.
1146         * malloc/malloc.h: Likewise.
1147         * malloc/thread-m.h: Spinlock definitions for x86/x86_64.
1148         * malloc/arena.c: New file.
1149         * malloc/hooks.c: New file.
1150         * malloc/tst-mallocstate.c: New file.
1151         * malloc/Makefile: Add new testcase tst-mallocstate.
1152         Add arena.c and hooks.c to distribute.  Fix commented CPPFLAGS.
1154 2002-01-28  Ulrich Drepper  <drepper@redhat.com>
1156         * stdlib/msort.c: Remove last patch.  The optimization violates the
1157         same rule which qsort.c had problems with.
1159 2002-01-27  Paul Eggert  <eggert@twinsun.com>
1161         * stdlib/qsort.c (_quicksort): Do not apply the comparison function
1162         to a pivot element that lies outside the array to be sorted, as
1163         ISO C99 requires that the comparison function be called only with
1164         addresses of array elements [PR libc/2880].
1166 2002-01-28  Ulrich Drepper  <drepper@redhat.com>
1168         * elf/dl-load.c (_dl_map_object): Remove incorrect optimization
1169         for SHARED code.  Reported by Ben Collins <bcollins@debian.org>.
1171         * timezone/asia: Update from tzdata2002b.
1172         * timezone/australasia: Likewise.
1173         * timezone/backward: Likewise.
1174         * timezone/europe: Likewise.
1175         * timezone/leapseconds: Likewise.
1176         * timezone/iso3166.tab: Likewise.
1177         * timezone/zone.tab: Likewise.
1179 2002-01-23  Richard Henderson  <rth@redhat.com>
1181         * sysdeps/alpha/Makefile (pic-ccflag): New variable.
1183 2002-01-28  Ulrich Drepper  <drepper@redhat.com>
1185         * string/strxfrm.c: Allocate one more byte for rulearr and clear
1186         this element [PR libc/2855].
1188         * string/strcoll.c: Handle zero-length arguments specially
1189         [PR libc/2856].
1191 2002-01-23  Jakub Jelinek  <jakub@redhat.com>
1193         * string/bits/string2.h (__mempcpy): For gcc 3.0+, don't use
1194         __mempcpy_small but instead use __builtin_memcpy ( , , n) + n for
1195         short lengths and constant src.
1196         (strcpy): Don't optimize for gcc 3.0+.
1197         (__stpcpy): For gcc 3.0+, don't use
1198         __stpcpy_small but instead use __builtin_strcpy (, src) + strlen (src)
1199         for short string literal src.
1201 2002-01-23  Jeroen Dobbelaere  <jeroen.dobbelaere@acunia.com>
1203         * sysdeps/unix/sysv/linux/configure.in (libc_cv_gcc_unwind_find_fde):
1204         Set for arm, too.
1206 2001-01-22  Paul Eggert  <eggert@twinsun.com>
1208         * manual/llio.texi (Linked Channels, Cleaning Streams):
1209         Make it clearer that a just-opened input stream might need cleaning.
1211 2002-01-21  H.J. Lu  <hjl@gnu.org>
1213         * sysdeps/mips/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC):
1214         Don't use label at end of compound statement.
1216 2002-01-28  Stephen L Moshier  <moshier@mediaone.net>
1218         * sysdeps/ieee754/ldbl-96/e_lgammal_r.c (__ieee754_lgammal_r):
1219         Remove test for negative integer arg; sin_pi does it correctly.
1221 2002-01-20  Ulrich Drepper  <drepper@redhat.com>
1223         * nscd/Makefile (distribute): Filter out xmalloc.c.
1225 2002-01-19  Ulrich Drepper  <drepper@redhat.com>
1227         * libio/fileops.c (_IO_file_underflow_mmap): Don't define as static.
1228         Set offset if read end wasn't the buffer end.
1229         (_IO_file_seekoff_mmap): New function.
1230         (_IO_file_xsgetn_mmap): New function.
1231         (_IO_file_jumps_mmap): Use the two new functions.
1232         * libio/wfileops.c (_IO_wfile_underflow_mmap): Handle end read buffer
1233         != end buffer.
1234         * libio/libioP.h: Declare _IO_file_seekoff_mmap and
1235         _IO_file_underflow_mmap.
1236         * libio/iofopen.c: Don't position file descriptor at end of file.
1237         * libio/tst-widetext.c: Improve error messages.
1238         * stdio-common/tst-rndseek.c: Likewise.
1240 2002-01-18  Ulrich Drepper  <drepper@redhat.com>
1242         * sysdeps/unix/sysv/linux/bits/statvfs.h: Avoid warning about comma at
1243         end of enum for !_GNU_SOURCE.
1244         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: Likewise.
1245         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: Likewise.
1246         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Likewise.
1247         * sysdeps/mach/hurd/bits/statvfs.h: Don't define non-standard ST_*
1248         values unless _GNU_SOURCE.
1250         * iconvdata/tcvn5712-1.c: Minor cleanups.
1252 2002-01-18  Andreas Schwab  <schwab@suse.de>
1254         * sysdeps/unix/sysv/linux/configure.in
1255         (libc_cv_gcc_unwind_find_fde): Set for m68k, too.
1257 2002-01-16  Roger Sayle  <roger@eyesopen.com>
1259         * stdlib/msort.c (msort_with_tmp): Replace implementation with
1260         more efficient "Towers of Hanoi" mergesort.
1261         (hanoi_sort, hanoi_sort_int, hanoi_sort_long): New functions,
1262         for generic, sizeof(int) and sizeof(long) variants respectively.
1264 2002-01-17  Ulrich Drepper  <drepper@redhat.com>
1266         * manual/syslog.texi (openlog): Describe possible problems with
1267         first parameter.
1268         Patch by Christopher Allen Wing <wingc@engin.umich.edu>.
1270         * nscd/nscd.c (drop_privileges): Removed.  Adjust caller.
1271         * nscd/connections.c (begin_drop_privileges): New function.
1272         (finish_drop_privileges): New function.
1273         (nscd_init): Call the new functions which also install all groups
1274         for the server user.
1275         * nscd/Makefile (nscd-modules): Add xmalloc for nscd.
1276         Patch by Christopher Allen Wing <wingc@engin.umich.edu>.
1278 2002-01-17  H.J. Lu  <hjl@gnu.org>
1280         * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Remove
1281         `const' from `got'.
1283 2002-01-17  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1285         * sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S: Use 64 bit
1286         instructions for pointer operations.
1287         * sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S: Likewise.
1289 2002-01-17  Andreas Jaeger  <aj@suse.de>
1291         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h: GCC 3.1 has
1292         __uint128_t build-in.
1294         * sysdeps/unix/sysv/linux/configure.in: Fix check for S390 and
1295         PowerPC, sync with 2.2 branch.
1297 2002-01-16  Ulrich Drepper  <drepper@redhat.com>
1299         * posix/getconf.c: Update copyright year.
1300         * nss/getent.c: Likewise.
1301         * nscd/nscd_nischeck.c: Likewise.
1302         * iconv/iconvconfig.c: Likewise.
1303         * iconv/iconv_prog.c: Likewise.
1304         * elf/ldconfig.c: Likewise.
1305         * catgets/gencat.c: Likewise.
1306         * csu/version.c: Likewise.
1307         * elf/ldd.bash.in: Likewise.
1308         * elf/sprof.c (print_version): Likewise.
1309         * locale/programs/locale.c: Likewise.
1310         * locale/programs/localedef.c: Likewise.
1311         * nscd/nscd.c (print_version): Likewise.
1312         * debug/xtrace.sh: Likewise.
1313         * malloc/memusage.sh: Likewise.
1314         * malloc/mtrace.pl: Likewise.
1316 2002-01-16  Andreas Schwab  <schwab@suse.de>
1318         * sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed: Fix regexp to
1319         reliably remove "-ia64" from rtld name.
1321 2002-01-16  Ulrich Drepper  <drepper@redhat.com>
1323         * iconvdata/gb18030.c: Bug fixes and support for more characters.
1324         Patch by Yu Shao <yshao@redhat.com>.
1326 2002-01-16  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1328         * sysdeps/unix/sysv/linux/s390/swapcontext.c: Remove.
1329         * sysdeps/unix/sysv/linux/s390/s390-32/swapcontext.S: New file.
1330         * sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S: New file.
1332 2002-01-14  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1334         * sysdeps/s390/fpu/libm-test-ulps: Update.
1336 2002-01-11  Ulrich Drepper  <drepper@redhat.com>
1338         * elf/elf.h: Update x86 relocations.
1340 2002-01-10  Ulrich Drepper  <drepper@redhat.com>
1342         * locale/programs/charmap.c (new_width): Check whether byte
1343         sequences for both ends of range have the same length.
1345 2002-01-09  Jakub Jelinek  <jakub@redhat.com>
1347         * elf/elf.h (SHN_UNDEF): Remove duplicate definition.
1349 2002-01-09  Jakub Jelinek  <jakub@redhat.com>
1351         * sysdeps/alpha/fpu/e_sqrt.c (__ieee754_sqrt): Don't use multi-line
1352         string literals.
1353         (__full_ieee754_sqrt): Add __attribute_used__.
1355 2002-01-10  Ulrich Drepper  <drepper@redhat.com>
1357         * sysdeps/generic/group_member.c (__group_member): Also check
1358         groups[0] [PR libc/2781].
1360 2002-01-08  Ulrich Drepper  <drepper@redhat.com>
1362         * Makefile (distribute): Add scripts/cpp.
1363         * elf/Makefile (distribute): Add reldep6mod[01234].c,
1364         unwind-dw2.c, unwind-dw2-fde.c, unwind.h, unwind-pe.h,
1365         unwind-dw2-fde.h, and dwarf2.h.
1366         * sysdeps/unix/bsd/bsd4.4/Dist: New file.
1367         * sysdeps/unix/sysv/aix/Dist: Add sysv_termio.h and start-libc.c.
1368         * sysdeps/unix/sysv/linux/ia64/Dist: Add ldd-rewrite.sed.
1369         * sysdeps/unix/sysv/linux/s390/Dist: Likewise.
1371 2002-01-07  Roland McGrath  <roland@frob.com>
1373         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Use
1374         volatile on type of ARGC so the compiler doesn't get clever.
1376 2002-01-07  Andreas Jaeger  <aj@suse.de>
1378         * sysdeps/generic/bits/byteswap.h: Prevent double inclusion.
1379         * sysdeps/i386/bits/byteswap.h: Likewise.
1380         * sysdeps/ia64/bits/byteswap.h: Likewise.
1381         * sysdeps/m68k/bits/byteswap.h: Likewise.
1382         * sysdeps/s390/s390-32/bits/byteswap.h: Likewise.
1383         * sysdeps/s390/s390-64/bits/byteswap.h: Likewise.
1385 2002-01-02  Bruno Haible  <bruno@clisp.org>
1387         * intl/plural.y: Fix %expect count.
1389 2002-01-03  Jakub Jelinek  <jakub@redhat.com>
1391         * elf/Makefile (routines, shared-only-routines): Add
1392         unwind-dw2-fde-glibc instead of unwind-dw2-fde.
1393         * elf/elf.h (PT_GNU_EH_FRAME): Define.
1394         * sysdeps/generic/unwind-dw2-fde-glibc.c: New file.
1395         * sysdeps/generic/unwind-dw2-fde.c (__register_frame_info_bases):
1396         Optimize if .eh_frame section contains no FDEs.
1397         (__register_frame, __deregister_frame_info_bases,
1398         __deregister_frame): Likewise.
1399         * sysdeps/generic/unwind-dw2.c (execute_cfa_program): Fix
1400         DW_CFA_restore handling.
1402 2002-01-07  Stephen L Moshier  <moshier@mediaone.net>
1404         * sysdeps/ieee754/ldbl-96/s_erfl.c (erfcl): Fix K&R header.
1406         * sysdeps/ieee754/ldbl-96/e_lgammal_r.c (sin_pi): Fix typo in test
1407         for x < 0.25 and restore original range reduction method.
1408         (__ieee754_lgammal_r): Make sure signgam is set before returning.
1410 2002-01-07  Ulrich Drepper  <drepper@redhat.com>
1412         * libio/fileops.c (_IO_file_underflow_mmap): New function.
1413         (_IO_file_close_mmap): New function.
1414         (_IO_file_jumps_mmap): New variable.
1415         * libio/wfileops.c (_IO_wfile_underflow): Reset read pointer before
1416         trying to convert rest of byte buffer.
1417         (_IO_wfile_underflow_mmap): New function.
1418         (_IO_wfile_jumps_mmap): New variable.
1419         * libio/iofopen.c (__fopen_maybe_mmap): New function.
1420         (__fopen_internal): New function.  Split out from _IO_new_fopen.
1421         (_IO_new_fopen): Call __fopen_internal.
1422         * libio/iofopen64.c: Just call __fopen_internal.
1423         * libio/iofdopen.c: Call __fopen_maybe_mmap before returning
1424         successfully.
1425         * libio/iolibio.h: Declare __fopen_internal and __fopen_maybe_mmap.
1426         * libio/libioP.h: Declare _IO_file_jumps_mmap, _IO_wfile_jumps_mmap,
1427         _IO_file_close_mmap.
1429         * sysdeps/gnu/_G_config.h: Define _G_MMAP64.
1430         * sysdeps/unix/sysv/linux/cris/_G_config.h: Likewise.
1432         * stdio-common/Makefile (tests): Add tst-rndseek.
1433         * stdio-common/tst-rndseek.c: New file.
1435 2002-01-05  Roland McGrath  <roland@frob.com>
1437         * config.h.in (HAVE_MIG_RETCODE): New #undef.
1438         * sysdeps/mach/hurd/configure.in (hurd_MIG_RETCODE: New macro
1439         swiped from hurd package's aclocal.m4; use it to set HAVE_MIG_RETCODE.
1440         * sysdeps/mach/hurd/configure: Regenerated.
1442 2002-01-03  Ulrich Drepper  <drepper@redhat.com>
1444         * elf/elf.h: Add more TLS definitions.
1446 2002-01-02  Ulrich Drepper  <drepper@redhat.com>
1448         * include/features.h (__GLIBC_MINOR__): Bump to 3.
1450 2002-01-02  Roland McGrath  <roland@frob.com>
1452         * sysdeps/mach/hurd/sigwait.c (__sigwait): Use __sigandset,
1453         __sigisemptyset.  Don't use MASK uninitialized.
1455         * sysdeps/mach/hurd/sigprocmask.c (__sigprocmask): Use __sigorset.
1456         * hurd/hurdinit.c (_hurd_new_proc_init): Use __sigisemptyset.
1457         * hurd/hurdsig.c (_hurd_internal_post_signal): Use __sigismember,
1458         __sigdelset, __sigaddset, __sigorset.
1460         * sysdeps/generic/htonl.c: Use uint32_t instead of u_int32_t.
1461         * sysdeps/generic/htons.c: Use uint16_t instead of u_int16_t.
1463         * hurd/hurdinit.c (_hurd_ports_use): Return EGRATUITOUS when
1464         _hurd_ports is null.
1466         * hurd/hurdsig.c (_hurdsig_init): Conditionalize exception port setup
1467         for old CMU and new OSF Mach interface flavors.
1468         * hurd/hurdfault.c (_hurdsig_fault_init): Likewise.
1469         * sysdeps/mach/hurd/fork.c (__fork): Likewise.
1471         * hurd/hurdsig.c (_hurd_internal_post_signal): Leave msgh_seqno unset.
1473         * sysdeps/mach/hurd/spawni.c (__spawni) [KERN_INVALID_LEDGER]:
1474         Pass extra arguments to task_create for OSF variant.
1475         * sysdeps/mach/hurd/fork.c (__fork): Likewise.
1477         * sysdeps/powerpc/elf/libc-start.c: Make AUXVEC diddling code
1478         conditional on [HAVE_AUX_VECTOR].
1480         * mach/mach/mach_traps.h (thread_switch, __thread_switch): Use
1481         mach_msg_timeout_t as type of final argument.
1483         * hurd/privports.c (__get_privileged_ports):
1484         Change host_priv_t to mach_port_t in argument type.
1485         * hurd/hurd.h (get_privileged_ports, __get_privileged_ports):
1486         Update decls.
1488         * sysdeps/mach/hurd/i386/bits/sigcontext.h: Protect from
1489         multiple inclusion.  Inhibit #error under [_SYS_UCONTEXT_H].
1490         * sysdeps/mach/hurd/alpha/bits/sigcontext.h: Likewise.
1491         * sysdeps/mach/hurd/hppa/bits/sigcontext.h: Likewise.
1492         * sysdeps/mach/hurd/mips/bits/sigcontext.h: Likewise.
1493         * sysdeps/mach/hurd/powerpc/bits/sigcontext.h: Likewise.
1495 2002-01-01  Roland McGrath  <roland@frob.com>
1497         * sysdeps/mach/hurd/errnos.awk: Tighten up device_types.h matching.
1499 2002-01-01  Ulrich Drepper  <drepper@redhat.com>
1501         * include/stdlib.h: Define inlines for the _l variants of the strto*
1502         functions.
1504 2002-01-01  Roland McGrath  <roland@frob.com>
1506         * sysdeps/mach/hurd/powerpc/intr-msg.h: Remove extraneous backslash.
1508         * mach/Machrules (MIG): Set CPP as well as CC.
1510 2001-12-31  Ulrich Drepper  <drepper@redhat.com>
1512         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Always use C
1513         locale to parse /proc/loadavg [PR libc/2760].
1515 2001-12-31  Jakub Jelinek  <jakub@redhat.com>
1517         * elf/dl-conflict.c: Include sys/param.h.
1518         (RESOLVE_CONFLICT_FIND_MAP): Cast r_offset to ElfW(Addr).
1519         * sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): Avoid
1520         warning.
1521         (TRAMPOLINE_TEMPLATE, RTLD_START): Don't use multi-line string
1522         literals to avoid warnings.
1524 2001-12-31  Andreas Jaeger  <aj@suse.de>
1526         * configure.in: Don't check for gsed since we do not use it anywhere.
1528 2001-12-25  Dmitry V. Levin  <ldv@alt-linux.org>
1530         * io/fts.c: Update from BSD to fix memory leaks.
1532 2001-12-25  Dmitry V. Levin  <ldv@alt-linux.org>
1534         * crypt/md5-crypt.c: Realloc error handling memory leak fix.
1535         * elf/chroot_canon.c: Likewise.
1536         * elf/dl-object.c: Likewise.
1537         * iconv/iconv_charmap.c: Likewise.
1538         * iconv/iconv_prog.c: Likewise.
1539         * libio/iogetdelim.c: Likewise.
1540         * locale/lc-time.c: Likewise.
1541         * stdlib/canonicalize.c: Likewise.
1542         * sunrpc/svc.c: Likewise.
1543         * sysdeps/generic/glob.c: Likewise.
1545 2001-12-19  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1547         * sysdeps/unix/sysv/linux/s390/profil-counter.h: Move/copy to ...
1548         * sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: ... here,
1549         remove high order bit from the program counter.
1550         * sysdeps/unix/sysv/linux/s390/s390-64/profil-counter.h: ... and here.
1552 2001-12-19  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1554         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Remove
1555         unnecessary code and add missing reloc types.
1556         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Add empty
1557         case for reloc type R_390_NONE.
1559 2001-12-28  Andreas Jaeger  <aj@suse.de>
1561         * io/bug-ftw3.c: Include string.h for prototypes.
1563         * crypt/md5test.c (main): Remove unused variable.
1565         * dlfcn/modstatic.c: Add prototype to avoid warning.
1567 2001-12-26  Roland McGrath  <roland@frob.com>
1569         * sysdeps/mach/hurd/sigwait.c (__sigwait): When returning immediately,
1570         check only (SS->pending & MASK) for the signal to return.
1571         From Jeroen Dekkers <jeroen@dekkers.cx>.
1573 2001-12-22  Roland McGrath  <roland@frob.com>
1575         * iconv/skeleton.c [!RESET_INPUT_BUFFER && !SAVE_RESET_STATE]:
1576         Use preprocessor #if conditionals instead of `if' to avoid
1577         warnings about divide by zero in dead code.
1579         * hurd/Versions (libc: GLIBC_2.2.5): Add _hurd_port_set,
1580         _hurd_port_init, and __hurd_self_sigstate.
1582         * mach/Versions (libc: GLIBC_2.2.5): Add mig_strncpy.
1584 2001-12-21  Andreas Jaeger  <aj@suse.de>
1586         * elf/dblloadmod1.c: Add prototype to avoid warning.
1587         * elf/dblloadmod2.c: Likewise.
1588         * elf/dblloadmod3.c: Likewise.
1589         * elf/reldepmod5.c: Likewise.
1590         * elf/reldepmod6.c: Likewise.
1592         * elf/dl-conflict.c (_dl_resolve_conflicts): Add unused attribute
1593         for resolve_conflict_map since RESOLVE_CONFLICT_FIND_MAP is not
1594         used on all architectures.
1596         * sunrpc/svc_tcp.c: Add noreturn attribute for
1597         svctcp_rendezvous_abort.
1598         * sunrpc/svc_unix.c: Likewise for svcunix_rendezvous_abort.
1600         * sysdeps/generic/strstr.c (strstr): Add paranthese for assignment
1601         to avoid warning.
1603 2001-12-19  Jakub Jelinek  <jakub@redhat.com>
1605         * manual/llio.texi (aio_fsync): Fix a typo.
1606         Patch by Tammy Fox <tfox@redhat.com>.
1608 2001-12-18  Jakub Jelinek  <jakub@redhat.com>
1610         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (clone): Subtract
1611         stack bias from child stack pointer before passing it to clone syscall.
1613 2001-12-18  Ulrich Drepper  <drepper@redhat.com>
1615         * sysdeps/posix/sysconf.c (__sysconf): Respect POSIX minimum for
1616         _SC_TZNAME_MAX.
1617         * sysdeps/generic/sysconf.c (__sysconf): Likewise.
1618         Reported by Thorsten Kukuk <kukuk@suse.de>.
1620         * sysdeps/unix/grantpt.c (grantpt): Correct typo in comment and
1621         add some casts.
1623         * sysdeps/unix/sysv/linux/grantpt.c: Make __unix_grantpt static.
1625 2001-12-18  Thorsten Kukuk  <kukuk@suse.de>
1627         * sysdeps/unix/sysv/linux/grantpt.c: Make errno results standard
1628         conforming: return EBADF if file descriptor is invalid and EINVAL
1629         if file descriptor is no valid tty.
1630         * login/tst-grantpt.c: New file.
1631         * login/Makefile (tests): Add tst-grantpt.
1633 2001-12-17  Ulrich Drepper  <drepper@redhat.com>
1635         * io/ftw.c (ftw_dir): Handle inaccessibility of toplevel dir
1636         different than implemented in last patch.
1637         * io/bug-ftw3.c: Adjust test for changed handling of
1638         inaccessibility of toplevel dir.
1640 2001-12-16  Roland McGrath  <roland@frob.com>
1642         * nss/nsswitch.c (__nss_next): Don't use __FUNCTION__ as literal.
1643         * grp/initgroups.c (internal_getgrouplist): Likewise.
1645         * hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): Add `break' after
1646         `default:' to silence new GCC warning.
1647         Rewrite cast of lvalue to silence new GCC warning.
1649         * sysdeps/mach/hurd/i386/init-first.c: Avoid multi-line strings in asm.
1651         * sysdeps/mach/hurd/spawni.c: New file, by me with a
1652         couple fixes by Neal H Walfield <neal@cs.uml.edu>.
1654 2001-12-14  Ulrich Drepper  <drepper@redhat.com>
1656         * sysdeps/generic/strstr.c (strstr): Update.  New optimized version.
1657         Patch by Stephen R. van den Berg.
1659         * crypt/md5.h: Define md5_uintptr.
1661 2001-12-13  Ulrich Drepper  <drepper@redhat.com>
1663         * libio/tst_swprintf.c (main): Add test for string argument with
1664         zero precision.
1665         * stdio-common/Makefile (tests): Add tst-sprintf.
1666         * stdio-common/tst-sprintf.c: New file.
1668 2001-12-13  Andreas Schwab  <schwab@suse.de>
1670         * stdio-common/vfprintf.c (process_string_arg): Correctly handle
1671         zero precision with wide character string format.
1673 2001-12-13  Thorsten Kukuk  <kukuk@suse.de>
1675         * sysdeps/posix/cuserid.c (cuserid): If we don't find the UID,
1676         but have a user supplied buffer, return the empty buffer, not NULL.
1678 2001-12-13  Ulrich Drepper  <drepper@redhat.com>
1680         * crypt/md5.c (md5_process_bytes): Correct handling of alignment.
1681         Patch by Eric Sharkey <sharkey@netrics.com>.
1683         * crypt/md5test.c (main): Add test for multiple calls to
1684         __md5_process_bytes to itererate over input string.
1686 2001-12-12  Ulrich Drepper  <drepper@redhat.com>
1688         * nis/nis_findserv.c (__nis_findfastest_with_timeout): Mostly the code
1689         from __nis_findfastest.  Take timeout value from parameter.
1690         (__nis_findfastest): Call __nis_findfastest_with_timeout repeatedly.
1691         * nis/nis_intern.h: Define parameters controlling __nis_findfastest
1692         [PR libc/2520].  Patch by Alexander Belopolsky <alexb@rentec.com>.
1694 2001-12-12  Andreas Jaeger  <aj@suse.de>
1696         * configure.in: Use -nostartfiles -nostdlib for linker tests, fix
1697         combreloc test so that it works in this case.
1699         * sysdeps/arm/dl-machine.h (elf_machine_rela): Fix typo in last patch.
1701 2001-12-12  NIIBE Yutaka  <gniibe@m17n.org>
1703         * sysdeps/sh/Makefile: New file.
1704         * sysdeps/sh/_mcount.S: New file.
1705         * sysdeps/sh/sysdep.h (CALL_MCOUNT): Implemented.
1706         * sysdeps/sh/machine-gmon.h: Remove "NOTYET" comment, as we are ready.
1708 2001-12-11  Ulrich Drepper  <drepper@redhat.com>
1710         * resolv/nss_dns/dns-host.c (getanswer_r): Remove MAX_NR_ADDRS
1711         limitation [PR libc/2564].
1713 2001-12-11  Jakub Jelinek  <jakub@redhat.com>
1715         * elf/Makefile (dl-routines): Add conflict.
1716         (rtld-ldscript-in, rtld-ldscript, rtld-parms): Remove.
1717         (ld.so): Add _begin local symbol.
1718         * elf/elf.h (DT_VALTAGIDX, DT_VALNUM, DT_ADDRTAGIDX, DT_ADDRNUM):
1719         Define.
1720         * elf/dl-deps.c (_dl_build_local_scope): New.
1721         (_dl_map_object_deps): If LD_TRACE_PRELINKING, compute local scopes
1722         of all libraries.
1723         * elf/do-rel.h (VALIDX): Define.
1724         (elf_dynamic_do_rel): If ELF_MACHINE_PLT_REL is defined, don't do
1725         lazy binding for RELA.  If DT_GNU_PRELINKED, DT_RELACOUNT relocations
1726         can be skipped.
1727         * elf/dl-conflict.c: New file.
1728         * elf/dl-lookup.c (_dl_debug_bindings): New.
1729         (_dl_lookup_symbol): Use _dl_debug_bindings.  Reference_name is always
1730         non-NULL.
1731         (_dl_lookup_symbol_skip): Likewise.
1732         (_dl_lookup_versioned_symbol): Likewise.
1733         (_dl_lookup_versioned_symbol_skip): Likewise.
1734         * elf/dl-runtime.c (PLTREL): If ELF_MACHINE_PLT_REL is defined,
1735         define to ElfW(Rel).
1736         * elf/dynamic-link.h (elf_get_dynamic_info): Record selected dynamic
1737         tags in the DT_VALRNGLO..DT_VALRNGHI and DT_ADDRRNGLO..DT_ADDRRNGHI
1738         ranges.
1739         Don't adjust address dynamic tags if l_addr is 0.
1740         * elf/rtld.c (_dl_trace_prelink, _dl_trace_prelink_map): New variables.
1741         (_dl_start): Skip ELF_DYNAMIC_RELOCATE if ld.so is prelinked.
1742         (VALIDX, ADDRIDX): Define.
1743         (_dl_start_final): Initialize _dl_rtld_map's l_map_start and l_map_end.
1744         (dl_main): Print library list for LD_TRACE_PRELINKING.
1745         If prelinking information can be used, skip relocating libraries and
1746         call _dl_resolve_conflicts instead.
1747         (process_envvars): Handle LD_TRACE_PRELINKING envvar.
1748         * elf/dl-load.c (_dl_map_object): Don't create fake libs
1749         if LD_TRACE_PRELINKING.
1750         * include/link.h (struct link_map) [l_info]: Add DT_VALNUM
1751         + DT_ADDRNUM.
1752         * sysdeps/generic/ldsodefs.h (_dl_trace_prelink_map): New declaration.
1753         (DL_DEBUG_PRELINK): Define.
1754         (_dl_resolve_conflicts): Add prototype.
1756         * sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): Reinitialize
1757         .plt for prelinked libraries where prelinking info cannot be used.
1758         (elf_machine_rela): If relocating R_ALPHA_JMP_SLOT in .gnu.conflict
1759         section, use RESOLVE_CONFLICT_FIND_MAP to find out reloc's link_map.
1760         * sysdeps/arm/bits/link.h: New file.
1761         * sysdeps/arm/dl-machine.h (elf_machine_runtime_setup): Save original
1762         content of .got[1].
1763         (ELF_MACHINE_NO_RELA): Only define if RTLD_BOOTSTRAP.
1764         (ELF_MACHINE_PLT_REL): Define.
1765         (elf_machine_rela, elf_machine_rela_relative): New.
1766         (elf_machine_lazy_rel): Reinitialize R_ARM_JUMP_SLOT address instead
1767         of adjusting it if prelinked and prelinking cannot be used.
1768         * sysdeps/i386/bits/link.h: New file.
1769         * sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Save original
1770         content of .got[1].
1771         (ELF_MACHINE_NO_RELA): Only define if RTLD_BOOTSTRAP.
1772         (ELF_MACHINE_PLT_REL): Define.
1773         (elf_machine_rela, elf_machine_rela_relative): New.
1774         (elf_machine_lazy_rel): Reinitialize R_386_JUMP_SLOT address instead
1775         of adjusting it if prelinked and prelinking cannot be used.
1776         * sysdeps/powerpc/dl-machine.h (elf_machine_rela): If relocating
1777         conflicts, skip finaladdr computation.  Use RESOLVE_CONFLICT_FIND_MAP
1778         to find out map for R_PPC_JMP_SLOT relocs.
1779         * sysdeps/sparc/sparc32/dl-machine.h (VALIDX): Define.
1780         (OPCODE_BA): Define.
1781         (elf_machine_runtime_setup): Reinitialize .plt for prelinked
1782         libraries where prelinking info cannot be used.
1783         (sparc_fixup_plt): Renamed from elf_machine_fixup_plt.
1784         (elf_machine_fixup_plt): Call sparc_fixup_plt.
1785         (elf_machine_rela): Set value to 0 if relocating conflicts.
1786         Call sparc_fixup_plt for R_SPARC_JMP_SLOT.
1787         * sysdeps/sparc/sparc64/dl-machine.h (VALIDX): Define.
1788         (sparc64_fixup_plt): Fix a typo.
1789         (elf_machine_rela): Set value to 0 if relocating conflicts.
1790         Handle R_SPARC_JMP_SLOT relocs when relocating conflicts.
1791         (elf_machine_runtime_setup): Reinitialize .plt for prelinked
1792         libraries where prelinking info cannot be used.
1793         * sysdeps/sh/bits/link.h: New file.
1794         * sysdeps/sh/dl-machine.h (elf_machine_runtime_setup): Save original
1795         content of .got[1].
1796         (elf_machine_lazy_rel): Reinitialize R_SH_JMP_SLOT address instead
1797         of adjusting it if prelinked and prelinking cannot be used.
1798         * sysdeps/s390/s390-32/bits/link.h: New file.
1799         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_runtime_setup):
1800         Save original content of .got[1].
1801         (elf_machine_lazy_rel): Reinitialize R_390_JMP_SLOT address instead
1802         of adjusting it if prelinked and prelinking cannot be used.
1803         * sysdeps/s390/s390-64/bits/link.h: New file.
1804         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_runtime_setup):
1805         Save original content of .got[1].
1806         (elf_machine_lazy_rel): Reinitialize R_390_JMP_SLOT address instead
1807         of adjusting it if prelinked and prelinking cannot be used.
1808         * sysdeps/x86_64/bits/link.h: New file.
1809         * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup):
1810         Save original content of .got[1].
1811         (elf_machine_lazy_rel): Reinitialize R_X86_64_JMP_SLOT address instead
1812         of adjusting it if prelinked and prelinking cannot be used.
1814 2001-12-11  Ulrich Drepper  <drepper@redhat.com>
1816         * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Use sizeof
1817         where appropriate instead of numbers.  Little optimizations.
1819 2001-12-10  Roland McGrath  <roland@frob.com>
1821         * sysdeps/mach/hurd/bind.c (bind): Don't deallocate IFSOCK if we never
1822         set it.
1824         * shlib-versions [USE_IN_LIBIO] (.*-.*-gnu-gnu.*): Set default
1825         set to GLIBC_2.2.5, not GLIBC_2.2.4.
1827         * sysdeps/mach/hurd/configure.in (libc_cv_gcc_unwind_find_fde):
1828         Fix conditionals so this is set by default for stdio and not for libio.
1829         * sysdeps/mach/hurd/configure: Regenerated.
1831 2001-12-10  Thorsten Kukuk  <kukuk@suse.de>
1833         * io/ftw.c (ftw_startup): Check, if the path is search and readable.
1835 2001-12-10  Ulrich Drepper  <drepper@redhat.com>
1837         * io/Makefile (tests): Add bug-ftw3.
1838         * io/bug-ftw3.c: New file.
1840         * sysdeps/generic/glob.c (glob): Return only pattern if nothing
1841         matches and GLOB_NOCHECK is set.
1842         * posix/globtest.sh: Correct expected result for NOCHECK test.
1844         * po/ca.po: Update from translation team.
1846 2001-12-09  Ulrich Drepper  <drepper@redhat.com>
1848         Implement transliteration of characters in strings of the locale
1849         definitions.
1850         * locale/programs/linereader.c: Adjust for additional parameter to
1851         lr_token.
1852         (get_string): If character <Uxxxx> is not found try to transliterate
1853         it.
1854         * locale/programs/ld-ctype.c: Adjust for additional parameter to
1855         lr_token.  Add const to charmap parameter of all functions.
1856         (find_translit, find_translit2): New functions.
1857         * locale/programs/charmap.c: Adjust for additional parameter to
1858         lr_token.
1859         * locale/programs/repertoire.c: Likewise.
1860         * locale/programs/linereader.h: Likewise.
1861         * locale/programs/ld-address.c: Likewise.  Add const to charmap
1862         parameter of all functions.
1863         * locale/programs/ld-collate.c: Likewise.
1864         * locale/programs/ld-identification.c: Likewise.
1865         * locale/programs/ld-measurement.c: Likewise.
1866         * locale/programs/ld-messages.c: Likewise.
1867         * locale/programs/ld-monetary.c: Likewise.
1868         * locale/programs/ld-name.c: Likewise.
1869         * locale/programs/ld-numeric.c: Likewise.
1870         * locale/programs/ld-paper.c: Likewise.
1871         * locale/programs/ld-paper.c: Likewise.
1872         * locale/programs/ld-telephone.c: Likewise.
1873         * locale/programs/ld-time.c: Likewise.
1874         * locale/programs/locfile.c: Likewise.
1875         * locale/programs/localedef.c: Likewise.
1876         * locale/programs/localedef.h: Likewise.
1877         * locale/programs/locfile.h: Likewise.  Add declaration for
1878         find_translit.
1879         * locale/programs/simple-hash.c: Add const to first parameter of
1880         find_entry, iterate_table, and lookup.
1881         * locale/programs/simple-hash.h: Likewise.
1882         * locale/localeinfo.h: Don't define __LC_LAST here.  Include <locale.h>
1883         instead.
1884         * include/locale.h: Define __LC_LAST.
1885         * iconv/Makefile (CFLAGS-linereader.c): Define to -DNO_TRANSLITERATION.
1887 2001-12-07  Geoff Keating  <geoffk@redhat.com>
1889         * sysdeps/powerpc/Dist: Update for recent FP changes.
1890         * sysdeps/powerpc/fpu/Dist: Likewise.
1892 2001-12-07  Andreas Schwab  <schwab@suse.de>
1894         * sysdeps/unix/sysv/linux/opensock.c: Include <string.h>.
1896 2001-12-06  Geoff Keating  <geoffk@redhat.com>
1898         * sysdeps/powerpc/Makefile (sysdep_routines): Don't build the fpr
1899         save/restore functions here.
1900         (libm-support): Don't define these functions here.
1901         * sysdeps/powerpc/fpu/Makefile: Build the fpr save/restore
1902         functions here.
1903         * sysdeps/powerpc/fe_nomask.c: Move to...
1904         * sysdeps/powerpc/fpu/fe_nomask.c: ... here.
1905         * sysdeps/powerpc/fprrest.S: Move to...
1906         * sysdeps/powerpc/fpu/fprrest.S: ... here.
1907         * sysdeps/powerpc/fprsave.S: Move to...
1908         * sysdeps/powerpc/fpu/fprsave.S: ... here.
1910 2001-12-06  Ulrich Drepper  <drepper@redhat.com>
1912         * sysdeps/unix/sysv/linux/opensock.c: New file.
1914 2001-12-06  Geoff Keating  <geoffk@redhat.com>
1916         * config.make.in (with-fp): Define from configure.
1917         * configure.in: Substitute with_fp.
1918         * configure: Regenerate.
1919         * sysdeps/powerpc/Makefile: Set -msoft-float when --without-fp is
1920         specified, and don't change FPU environment.
1922 2001-12-06  Ulrich Drepper  <drepper@redhat.com>
1924         * libio/vasprintf.c (_IO_vasprintf): Free buffer on failure.
1925         * assert/assert.c: Check result of __asprintf call and don't use
1926         string if it failed.
1927         * assert/assert-perr.c: Likewise.
1928         * inet/rcmd.c: Likewise.
1929         * locale/programs/localedef.c (main): Check result of
1930         construct_output_path and exit if it failed.
1931         (construct_output_path): Check result of asprintf and mkdir calls and
1932         fail if they failed.
1933         * posix/getopt.c: Check result of __asprintf calls and fail if
1934         they failed.
1935         Patch by Dmitry V. Levin <ldv@alt-linux.org>.
1937 2001-12-05  Ulrich Drepper  <drepper@redhat.com>
1939         * sysdeps/generic/strcasecmp.c (__strcasecmp): Little performance
1940         patch.
1941         * sysdeps/generic/strncase.c: Likewise.
1942         * string/tester.c: Add tests for strcasecmp and strncasecmp.
1944 2001-12-05  Geoff Keating  <geoffk@redhat.com>
1946         * scripts/cpp: Test the exit status from 'type', not 'awk'.
1948         * sysdeps/powerpc/__longjmp.S: Don't restore FP registers.
1949         * sysdeps/powerpc/fpu/__longjmp.S: Do restore FP registers.
1950         * sysdeps/powerpc/setjmp.S: Don't save FP registers.
1951         * sysdeps/powerpc/fpu/setjmp.S: Do save FP registers.
1952         * sysdeps/powerpc/fclrexcpt.c: Move to...
1953         * sysdeps/powerpc/fpu/fclrexcpt.c: ... here.
1954         * sysdeps/powerpc/fpu_control.h: Move to...
1955         * sysdeps/powerpc/fpu/fpu_control.h: ... here.
1957 2001-12-05  Ulrich Drepper  <drepper@redhat.com>
1959         * iconvdata/ibm1129.h: Remove duplicate mappings.
1960         * iconvdata/ibm937.c: Handle overflow errors.  Handle new tables.
1961         * iconvdata/ibm937.h: Reorganize table to safe a lot of space.
1962         Patch by Masahide Washizawa <WASHI@jp.ibm.com>.
1964         * timezone/zic.c: Fix handling of turnaround times.
1965         Patch by Arthur David Olson <olsona@dc37a.nci.nih.gov>.
1967 2001-12-02  Moshe Olshansky  <OLSHANSK@il.ibm.com>
1969         * sysdeps/ieee754/dbl-64/e_remainder.c (__ieee754_remainder): Fix
1970         overflow problem.
1972 2001-12-05  Ulrich Drepper  <drepper@redhat.com>
1974         * posix/regex.c: For use outside glibc defined bounded pointer
1975         macros here.  Patch by Jim Meyering <jim@meyering.net>.
1977         * iconvdata/Makefile (modules): Add TCVN5712-1.
1978         * iconvdata/TESTS: Add TCVN5712-1.
1979         * iconvdata/gconv-modules: Likewise.
1980         * iconvdata/tcvn5712-1.c: New file.
1981         * iconvdata/testdata/TCVN-5712: New file.
1982         * iconvdata/testdata/TCVN-5712..UTF8: New file.
1984 2001-12-04  Ulrich Drepper  <drepper@redhat.com>
1986         * iconvdata/cp1258.c: Optimize conversion from UCS4.
1988 2001-12-02  Roland McGrath  <roland@frob.com>
1990         * mach/Makefile, mach/Machrules: Move comments out of \ continuations.
1992         * hurd/hurd.h (__hurd_fail): Add `break;' to silence new gcc-3 warning.
1993         Reported by Jeff Bailey <jbailey@nisa.net>.
1995         * hurd/hurd.h (_hurd_umask): Remove volatile qualifier from decl.
1996         Reported by Jeff Bailey <jbailey@nisa.net>.
1998         * mach/Makefile ($(objpfx)mach-syscalls.mk): Pass $(CFLAGS) to $(CC).
1999         * mach/Machrules ($(objpfx)%.udeps static pattern rule): Likewise.
2000         Reported by Jeff Bailey <jbailey@nisa.net>.
2002 2001-12-01  Roland McGrath  <roland@frob.com>
2004         * sysdeps/mach/hurd/configure.in (libc_cv_gcc_unwind_find_fde): Add
2005         missing backslash in test arguments.
2006         * sysdeps/mach/hurd/configure: Regenerated.
2008 2001-11-26  Roland McGrath  <roland@frob.com>
2010         * hurd/hurdinit.c (_hurd_ports_use): Check if _hurd_ports is null.
2011         Reported by John Tobey <jtobey@john-edwin-tobey.org>.
2013 2001-11-30  Ulrich Drepper  <drepper@redhat.com>
2015         * iconvdata/Makefile (modules): Add ARMSCII-8.
2016         * iconvdata/gconv-modules: Add entries for ARMSCII-8.
2017         * iconvdata/armscii-8.c: New file.
2019 2001-11-29  Jakub Jelinek  <jakub@redhat.com>
2021         * sysdeps/generic/glob.c (next_brace_sub): Return NULL if braces
2022         don't match, fix {{a,b},c} globbing, clean up.
2023         Patch by Flavio Veloso <flaviovs@magnux.com>.
2024         * posix/globtest.sh: Add new tests.
2026 2001-11-29  Andreas Jaeger  <aj@suse.de>
2028         * sysdeps/unix/sysv/linux/x86_64/Versions: Add arch_prctl.
2029         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Add arch_prctl call.
2031         * sysdeps/generic/abort.c: Include libioP.h for
2032         _IO_flush_all_lockp prototype.
2034 2001-11-29  Ulrich Drepper  <drepper@redhat.com>
2036         * posix/regex.h: Define __restrict_arr correctly.
2038 2001-11-28  Ulrich Drepper  <drepper@redhat.com>
2040         * iconvdata/ibm1163.c: New file.
2041         * iconvdata/ibm1163.h: New file.
2042         * iconvdata/ibm1164.c: New file.
2043         * iconvdata/ibm1164.h: New file.
2044         * iconvdata/TESTS: Add entries for IBM1163 and IBM1164.
2045         * iconvdata/Makefile: Likewise.
2046         * iconvdata/testdata/IBM1163: New file.
2047         * iconvdata/testdata/IBM1163..UTF8: New file.
2048         * iconvdata/testdata/IBM1164: New file.
2049         * iconvdata/testdata/IBM1164..UTF8: New file.
2050         Patch by Masahide Washizawa <WASHI@jp.ibm.com>.
2052         * iconvdata/ibm1046.h: Optimize.  Remove duplicate mappings.
2053         * iconvdata/ibm1124.h: Likewise.
2054         * iconvdata/ibm1132.h: Likewise.
2055         * iconvdata/ibm1133.h: Likewise.
2056         * iconvdata/ibm1160.h: Likewise.
2057         * iconvdata/ibm1161.h: Likewise.
2058         * iconvdata/ibm1162.h: Likewise.
2059         * iconvdata/ibm856.h: Likewise.
2060         * iconvdata/ibm922.h: Likewise.
2061         * iconvdata/ibm930.h: Likewise.
2062         * iconvdata/ibm932.h: Likewise.
2063         * iconvdata/ibm933.h: Likewise.
2064         * iconvdata/ibm935.h: Likewise.
2065         * iconvdata/ibm937.h: Likewise.
2066         * iconvdata/ibm939.h: Likewise.
2067         * iconvdata/ibm943.h: Likewise.
2068         * iconvdata/ibm930.c: Pretty printing.
2069         * iconvdata/ibm937.c: Avoid access accross array boundary.
2071         * iconv/gconv_open.c (__gconv_open): Empty codeset name now means using
2072         the current locale's codeset.
2073         * iconv/iconv_open.c (iconv_open): Don't strip out everything for
2074         empty input string.
2075         * iconv/iconv_prog.c: Pass empty strings as default value for to-
2076         and from-charset.  Don't determine locale's charset here.
2078         * libio/genops.c (_IO_flush_all_lockp): New function.  The same code
2079         as the old _IO_flush_all but lock only if parameter is nonzero.
2080         (_IO_flush_all): Call _IO_flush_all_lockp with 1 as parameter.
2081         * libio/libioP.h: Add prototype for _IO_flush_all_lockp.
2082         * sysdeps/generic/abort.c (fflush): Define to _IO_flush_all_lockp(0)
2083         if libio is used [PR libc/2575].
2085 2001-11-28  Jakub Jelinek  <jakub@redhat.com>
2087         * sysdeps/sparc/fpu/bits/mathinline.h (__signbitf, __signbit,
2088         __signbitl): Only define for ISO C99.
2090 2001-11-22  Thorsten Kukuk  <kukuk@suse.de>
2092         * nss/nss_files/files-hosts.c (_nss_files_get##name##_r): Set
2093         herrnop to NETDB_INTERNAL if we run out of buffer space.
2095 2001-11-28  Ulrich Drepper  <drepper@redhat.com>
2097         * nss/nss_files/files-XXX.c (internal_getent): Correct input
2098         overflow test for platforms with signed char.
2099         Reported by Andrew Haley <aph@cambridge.redhat.com>.
2101 2001-11-28  Bruno Haible  <bruno@clisp.org>
2103         * locale/programs/simple-hash.c (lookup_2): Remove function.
2104         (insert_entry_2): Call lookup instead of lookup_2.
2106 2001-03-04  Bruno Haible  <bruno@clisp.org>
2108         * intl/dcigettext.c (DCIGETTEXT): Increment path_max proportionally.
2110 2001-10-31  Bruno Haible  <bruno@clisp.org>
2112         * intl/plural.y: Include <stddef.h>, needed for NULL with SunOS 4 cc.
2114 2001-03-21  Bruno Haible  <bruno@clisp.org>
2116         * intl/dcigettext.c (_nl_state_lock): Mark as #ifdef _LIBC. AIX 3 xlc
2117         chokes on empty macro arguments.
2118         * intl/plural.y: Add #pragma for alloca on AIX 3.
2120 2001-11-27  Ulrich Drepper  <drepper@redhat.com>
2122         * intl/dcigettext.c (guess_category_value): Only implement for
2123         glibc.  Otherwise rely on function _nl_locale_name which isn't
2124         present in the glibc sources.
2126 2001-09-24  Bruno Haible  <bruno@clisp.org>
2128         * intl/loadmsgcat.c (_nl_init_domain_conv): Also enable
2129         transliteration when building on a glibc system but outside glibc.
2131 2001-09-22  Bruno Haible  <bruno@clisp.org>
2133         * intl/plural-eval.c: New file, extracted from dcigettext.c.
2134         * intl/dcigettext.c (plural_eval): Remove function, moved to
2135         intl/plural-eval.c.
2136         (plural_lookup): Call PLURAL_EVAL instead of plural_eval.
2137         Include plural-eval.c.
2139 2001-09-22  Bruno Haible  <bruno@clisp.org>
2141         * intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Reject numbers that
2142         don't start with a digit; nplurals must be positive.
2144 2001-09-02  Bruno Haible  <bruno@clisp.org>
2146         * intl/plural-exp.h: New file, extracted from gettextP.h.
2147         * intl/plural-exp.c: New file, extracted from loadmsgcat.c.
2148         * intl/gettextP.h (struct expression, struct parse_args,
2149         __gettext_free_exp, __gettextparse): Move to plural-exp.h.
2150         * intl/loadmsgcat.c: Include plural-exp.h.
2151         (PLURAL_PARSE): Move macro to plural-exp.h.
2152         (plvar, plone, germanic_plural, INIT_GERMANIC_PLURAL): Move to
2153         plural-exp.c.
2154         (_nl_load_domain): Move plural handling code to plural-exp.c.  Call
2155         EXTRACT_PLURAL_EXPRESSION.
2156         (_nl_unload_domain): Update.
2157         * intl/dcigettext.c: Include plural-exp.h.
2158         * intl/plural.y: Include plural-exp.h, not gettextP.h.
2159         (FREE_EXPRESSION): Move macro to plural-exp.h.
2160         * intl/Makefile (routines): Add plural-exp.
2161         (distribute): Add plural-exp.h.
2163 2001-07-28  Bruno Haible  <bruno@clisp.org>
2165         * intl/l10nflist.c (_nl_normalize_codeset): Cast isalnum, isalpha,
2166         isdigit, tolower argument to 'unsigned char'.
2167         * intl/loadmsgcat.c (_nl_load_domain): Cast isspace argument to
2168         'unsigned char'.
2169         * intl/localealias.c (read_alias_file): Cast isspace argument to
2170         'unsigned char'.
2172 2001-10-20  Bruno Haible  <bruno@clisp.org>
2174         Assume strchr() exists. (Without it, intl/explodename.c wouldn't link
2175         anyway.)
2176         * intl/dcigettext.c (strchr): Remove fallback definition; it conflicts
2177         with the variable 'index' in plural_lookup.
2178         * intl/l10nflist.c (strchr): Likewise.
2179         * intl/localealias.c (strchr): Likewise.
2181         Assume <stddef.h>, <stdlib.h>, <string.h>, <locale.h> exist.
2182         * intl/bindtextdom.c: Likewise.
2183         * intl/dcigettext.c: Likewise.
2184         * intl/dgettext.c: Likewise.
2185         * intl/dngettext.c: Likewise.
2186         * intl/explodename.c: Likewise.
2187         * intl/finddomain.c: Likewise.
2188         * intl/gettext.c: Likewise.
2189         * intl/l10nflist.c: Likewise.
2190         * intl/loadmsgcat.c: Likewise.
2191         * intl/localealias.c: Likewise.
2192         * intl/ngettext.c: Likewise.
2193         * intl/textdomain.c: Likewise.
2194         * intl/gettext.h: Assume <limits.h> exists.
2196 2001-11-27  Ulrich Drepper  <drepper@redhat.com>
2198         * stdio-common/Makefile (tests): Add scanf11.
2199         * stdio-common/scanf11.c: New file.
2201 2001-11-26  Ulrich Drepper  <drepper@redhat.com>
2203         * version.h (RELEASE): Define as development.
2204         (VERSION): Set to 2.2.90.
2206 2001-11-22  Thorsten Kukuk  <kukuk@suse.de>
2208         * nis/nss_compat/compat-grp.c: Print group id as unsigned long.
2209         * nis/nss_nis/nis-grp.c: Likewise.
2210         * nis/nss_nisplus/nisplus-grp.c: Likewise.
2212         * nis/nss_compat/compat-pwd.c: Print user id as unsigned long.
2213         * nis/nss_nis/nis-pwd.c: Likewise.
2214         * nis/nss_nisplus/nisplus-pwd.c: Likewise.
2216         * nis/nss_nis/nis-publickey.c: Use strtoul instead of atoi.
2217         * nis/nss_nisplus/nisplus-parser.c: Likewise.
2218         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
2220         * nscd/grpcache.c: Use strtoul instead of atol.
2221         * nscd/pwdcache.c: Likewise.
2222         * nss/getent.c: Likewise.
2224 2001-11-27  Paul Eggert  <eggert@twinsun.com>
2226         * sysdeps/posix/tempname.c (__gen_tempname): Try at least
2227         ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
2229 2001-11-19  Bruno Haible  <bruno@clisp.org>
2231         * locale/programs/simple-hash.c (insert_entry_2): Resize at 75%, not
2232         90%.
2233         (compute_hashval): Shift by 9 bits, not by 4 bits. This drastically
2234         improves the quality of the hash function, especially for short
2235         strings.
2237 2001-11-26  Ulrich Drepper  <drepper@redhat.com>
2239         * stdio-common/vfscanf.c: If incomplete nan of inf(inity) strings
2240         are found call conv_error and not input_error [PR libc/2669].
2242         * math/bits/mathcalls.h: Mark ceil and floor as const.
2243         Reported by David Mosberger.
2245 2001-11-21  Jim Meyering  <meyering@lucent.com>
2247         * posix/regex.c (iswctype, mbrtowc, wcslen, wcscoll, wcrtomb) [_LIBC]:
2248         Define to be __-prefixed.
2249         Remove unnecessary duplication in `#ifdef _LIBC' blocks.
2251 2001-11-26  Andreas Jaeger  <aj@suse.de>
2253         * sysdeps/unix/sysv/linux/hppa/brk.c: Remove __brk_addr alias,
2254         avoid warning.
2256 2001-11-26  Stephen L Moshier <moshier@mediaone.net>
2258         * sysdeps/ieee754/ldbl-128/e_log10l.c (L102B): Fix typo in
2259         initialization.
2261         * sysdeps/ieee754/ldbl-128/e_coshl.c (__ieee754_coshl): Remove
2262         unused variables.  Fix threshold for returning 1.0.
2264         * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (neval, deval): Constify
2265         argument.
2267         * sysdeps/ieee754/ldbl-128/s_erfl.c (neval, deval): Likewise, and
2268         remove unused variables.
2270         * sysdeps/ieee754/ldbl-128/e_j0l.c (neval, deval): Likewise.
2272         * sysdeps/ieee754/ldbl-128/e_j1l.c (neval, deval): Likewise, and
2273         include local math header files.
2275 2001-11-22  Andreas Jaeger  <aj@suse.de>
2277         * sysdeps/ieee754/ldbl-96/s_ilogbl.c (__ilogbl): Add brace to
2278         avoid warning.
2280 2001-11-21  Andreas Jaeger  <aj@suse.de>
2282         * sysdeps/unix/sysv/linux/x86_64/sys/debugreg.h: New file.
2284         * sysdeps/unix/sysv/linux/x86_64/Makefile (sysdep_headers): Add
2285         sys/debugreg.h
2287 2001-11-15  Andreas Jaeger  <aj@suse.de>
2289         * include/features.h (__GLIBC_HAVE_LONG_LONG): Define for
2290         compilers that support it.
2292         * posix/sys/types.h: Use __GLIBC_HAVE_LONG_LONG.
2293         * sysdeps/unix/sysv/linux/bits/types.h: Likewise.
2294         * stdlib/stdlib.h: Likewise.
2296 2001-11-17  Ulrich Drepper  <drepper@redhat.com>
2298         * posix/regex.c (byte_re_match_2_internal): For gcc replace switch
2299         statement with gotos.
2300         Based on a patch by Paolo Bonzini <bonzini@pc-amo3.elet.polimi.it>.
2302 2001-11-16  Stephen L Moshier  <moshier@mediaone.net>
2304         * sysdeps/ieee754/ldbl-96/s_erfl.c (__erfcl): Fix K&R header.
2306 2001-11-15  Ulrich Drepper  <drepper@redhat.com>
2308         * sysdeps/generic/unwind-dw2-fde.c: Don't use recursive mutexes.
2310 2001-10-02  Jakub Jelinek  <jakub@redhat.com>
2311             H.J. Lu  <hjl@gnu.org>
2313         * Versions.def (libc): Add GCC_3.0.
2314         * configure.in (libc_cv_gcc_static_libgcc): Set to -static-libgcc
2315         if gcc supports this flag.
2316         (EXPORT_UNWIND_FIND_FDE): Define unless target configure disables it.
2317         (gcc3): Allow glibc to be compiled with gcc 3.x.
2318         * config.h.in (EXPORT_UNWIND_FIND_FDE): Add.
2319         * config.make.in (static-libgcc, unwind-find-fde): Add.
2320         * Makerules (build-shlib-helper, build-module-helper): Use it.
2321         * scripts/versions.awk: Make sure GLIBC_ versions come first.
2322         * elf/soinit.c (__libc_global_ctors): Set tbases and dbases if
2323         necessary.
2324         (_fini): Call __deregister_frame_info_bases if
2325         __register_frame_info_bases was used to register.
2326         * elf/Versions (__register_frame_info, __deregister_frame_info): Add
2327         for GLIBC_2.0.
2328         (__register_frame_info_bases, __register_frame_info_table_bases,
2329         __deregister_frame_info_bases, _Unwind_Find_FDE): Add for GCC_3.0.
2330         * elf/Makefile (routines): Add unwind-dw2-fde.
2331         (shared-only-routines): Add unwind-dw2-fde.
2332         * sysdeps/alpha/gccframe.h: New file.
2333         * sysdeps/arm/gccframe.h: New file.
2334         * sysdeps/generic/framestate.c: New file.
2335         * sysdeps/generic/dwarf2.h: New file.
2336         * sysdeps/generic/gccframe.h (struct object): Update from gcc 3.0.
2337         * sysdeps/generic/unwind-dw2-fde.c: New file.
2338         * sysdeps/unix/sysv/linux/ia64/unwind-dw2-fde.c: New file.
2339         * sysdeps/generic/unwind-dw2-fde.h: New file.
2340         * sysdeps/generic/unwind-dw2.c: New file.
2341         * sysdeps/generic/unwind-pe.h: New file.
2342         * sysdeps/generic/unwind.h: New file.
2343         * sysdeps/hppa/gccframe.h: New file.
2344         * sysdeps/i386/gccframe.h: New file.
2345         * sysdeps/m68k/gccframe.h: New file.
2346         * sysdeps/mips/gccframe.h: New file.
2347         * sysdeps/powerpc/gccframe.h: New file.
2348         * sysdeps/s390/gccframe.h: New file.
2349         * sysdeps/sh/gccframe.h: New file.
2350         * sysdeps/sparc/gccframe.h: New file.
2351         * sysdeps/vax/gccframe.h: New file.
2352         * sysdeps/unix/sysv/linux/configure.in (libc_cv_gcc_unwind_find_fde):
2353         Set on all architectures except ia64.
2354         * sysdeps/mach/hurd/configure.in (libc_cv_gcc_unwind_find_fde): Set
2355         for i386.
2356         * sysdeps/mach/hurd/i386/Versions (__register_frame_info,
2357         __deregister_frame_info): Move to elf/Versions.
2358         * sysdeps/unix/sysv/linux/m68k/Versions: Likewise.
2359         * sysdeps/unix/sysv/linux/arm/Versions: Likewise.
2360         * sysdeps/unix/sysv/linux/alpha/Versions: Likewise.
2361         * sysdeps/unix/sysv/linux/i386/Versions: Likewise.
2362         * sysdeps/unix/sysv/linux/mips/Versions: Likewise.
2363         * sysdeps/unix/sysv/linux/powerpc/Versions: Likewise.
2364         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
2365         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
2366         * sysdeps/unix/sysv/linux/sparc/sparc64/Versions: Likewise.
2367         * sysdeps/mach/hurd/i386/Makefile (sysdep-routines): Add framestate.
2368         * sysdeps/unix/sysv/linux/arm/Makefile: Likewise.
2369         * sysdeps/unix/sysv/linux/alpha/Makefile: Likewise.
2370         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
2371         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
2372         * sysdeps/unix/sysv/linux/mips/Makefile: Likewise.
2373         * sysdeps/unix/sysv/linux/powerpc/Makefile: Likewise.
2374         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
2375         * sysdeps/unix/sysv/linux/sparc/Makefile: Likewise.
2377 2001-11-15  Jeff Law  <law@redhat.com>
2379         * posix/regex.c (uintptr_t): Do not provide a definition if the
2380         system provided one.
2382 2001-11-13  Roland McGrath  <roland@frob.com>
2384         * stdio-common/tmpfile.c: Moved to ...
2385         * sysdeps/generic/tmpfile.c: ... here.
2386         * sysdeps/mach/hurd/tmpfile.c: New file.
2388         * hurd/fopenport.c (__fopenport): Renamed from fopenport.
2389         [USE_IN_LIBIO] (fopencookie): #define as _IO_fopencookie.
2390         (fopenport): Define as weak alias.
2392         * libio/iofopncook.c (_IO_fopencookie): Move forward declaration ...
2393         * libio/libioP.h: ... to here.
2395 2001-11-12  Ulrich Drepper  <drepper@redhat.com>
2397         * elf/dl-reloc.c (_dl_relocate_object): Avoid iterating over
2398         program header twice.  Construct list with the needed information.
2400 2001-11-10  Ulrich Drepper  <drepper@redhat.com>
2402         * po/ca.po: Update from translation team.
2404         * elf/dl-load.c (_dl_map_object_from_fd): Remove use of
2405         _dl_pf_to_prot.  Use arithmetic operation using PF_TO_PROT macro.
2406         * sysdeps/generic/ldsodefs.h (PF_TO_PROT): New macro.
2407         * elf/dl-reloc.c (_dl_relocate_object): Likewise.
2409 2001-11-10  Andreas Jaeger  <aj@suse.de>
2411         * sysdeps/ieee754/ldbl-128/e_log2l.c: New file.
2412         * sysdeps/ieee754/ldbl-128/e_log10l.c: Likewise.
2413         Contributed by Stephen L Moshier <moshier@mediaone.net>.
2415 2001-11-09  Ulrich Drepper  <drepper@redhat.com>
2417         * elf/dl-minimal.c (realloc): Handle NULL for first parameter
2418         correctly.
2419         * elf/dl-load.c (is_dst): New function.
2420         (_dl_dst_count): Use is_dst to check for DST variable.
2421         (_dl_dst_substitute): Likewise.
2423 2001-11-09  Roland McGrath  <roland@frob.com>
2425         Hurd/PowerPC port contributed by Peter Bruin <pjbruin@dds.nl>.
2426         * sysdeps/mach/hurd/powerpc/exc2signal.c: New file.
2427         * sysdeps/mach/hurd/powerpc/init-first.c: New file.
2428         * sysdeps/mach/hurd/powerpc/intr-msg.h: New file.
2429         * sysdeps/mach/hurd/powerpc/longjmp-ts.c: New file.
2430         * sysdeps/mach/hurd/powerpc/register-dump.h: New file.
2431         * sysdeps/mach/hurd/powerpc/sigreturn.c: New file.
2432         * sysdeps/mach/hurd/powerpc/static-start.S: New file.
2433         * sysdeps/mach/hurd/powerpc/trampoline.c: New file.
2434         * sysdeps/mach/hurd/powerpc/bits/sigcontext.h: New file.
2435         * sysdeps/mach/hurd/powerpc/Dist: New file.
2437         * hurd/privports.c (__get_privileged_ports):
2438         Only contact the proc server if necessary for this call.
2439         Suggested by Neal H Walfield <neal@cs.uml.edu>.
2440         Check error return for mach_port_mod_refs.
2442 2001-11-09  Andreas Schwab  <schwab@suse.de>
2444         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: New file.
2446 2001-11-09  Ulrich Drepper  <drepper@redhat.com>
2448         * elf/dl-load.c (lose): Remove some unnecessary code.  The new
2449         object is always the last in the list.
2450         (_dl_map_object_from_fd): Delete code to remove from object list
2451         when DF_1_NOOPEN is seen.  This is done in lose.
2453 2001-11-08  Ulrich Drepper  <drepper@redhat.com>
2455         * elf/dl-object.c (_dl_new_object): Various small optimizations.
2457 2001-11-07  Ulrich Drepper  <drepper@redhat.com>
2459         * sysdeps/generic/dl-cache.c: Optimize SEARCH_CACHE and
2460         HWCAP_CHECK macro code.
2462         * elf/dl-misc.c (_dl_sysdep_read_whole_file): Optimize code a bit.
2463         Now returns MAP_FAILED on error.
2464         * elf/rtld.c: Adjust caller.
2465         * sysdeps/generic/dl-cache.c: Likewise.
2466         * sysdeps/generic/ldsodefs.h: Adjust description.
2468         * elf/dl-version.c (match_symbol): Optimize error handling for size.
2469         (_dl_check_map_versions): Likewise.
2471 2001-11-06  Ulrich Drepper  <drepper@redhat.com>
2473         * elf/dl-load.c (_dl_map_object_from_fd): Don't call
2474         _dl_signal_error directly, always use lose.  Set fd to -1 after
2475         file is closed.
2476         (lose): Don't call close if fd == -1.
2478 2001-11-07  Kaoru Fukui  <k_fukui@highway.ne.jp>
2480         * manual/charset.texi: Fix typo @w[ISO 6937] to  @w{ISO 6937}.
2481          Also fix typo @code {mbsinit} to @code{mbsinit}.
2483 2001-11-06  Ulrich Drepper  <drepper@redhat.com>
2485         * elf/dl-profile.c: Replace state variable with simple flag named
2486         running.  Remove commented-out code.
2488         * elf/dl-load.c (decompose_rpath): Optimize error handling for size.
2489         (_dl_init_paths): Likewise.
2490         (_dl_map_object_from_fd): Likewise.
2491         * elf/dl-reloc.c (_dl_relocate_object): Likewise.
2493 2001-11-06  Roland McGrath  <roland@frob.com>
2495         * sysdeps/mach/powerpc/sysdep.h: Include sysdeps/unix/powerpc/sysdep.h
2496         instead of sysdeps/powerpc/elf/sysdep.h and sysdeps/unix/sysdep.h.
2498         * sysdeps/unix/sysv/linux/powerpc/sysdep.h: Don't include
2499         sysdeps/powerpc/elf/sysdep.h.
2500         Reported by Kaoru Fukui <k_fukui@highway.ne.jp>.
2502 2001-11-05  Ulrich Drepper  <drepper@redhat.com>
2504         * elf/rtld.c (process_dl_debug): Rewritten.  Optimized for size not
2505         speed.
2506         (process_envvars): Some more optimizations.
2507         * sysdeps/generic/ldsodefs.h (DL_DEBUG_HELP): New macro.
2509         * elf/elf.h: Add dynamic tag definitions for prelinking.
2511         * elf/rtld.c (process_envvars): Avoid using array of string pointers.
2512         Rewrite code to remove environment varables for SUID binaries.
2513         Small optimization in LD_PROFILE handling.
2514         * sysdeps/generic/unsecvars.h: Adjust format for process_envvars
2515         changes.
2516         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
2518         * sysdeps/generic/dl-sysdep.c: Don't initialize _dl_cpuclock_offset.
2520         * elf/dl-reloc.c (_dl_reloc_bad_type): Rewrite to not use writable
2521         strings.  Change type of second parameter.
2522         * sysdeps/generic/ldsodefs.h: Adjust _dl_reloc_bad_type prototype
2523         for last change.
2525         * io/fts.h: Prevent using <fts.h> with _FILE_OFFSET_BITS=64.
2527 2001-11-04  Joseph S. Myers  <jsm28@cam.ac.uk>
2529         * manual/string.texi: Fix typos.
2530         * manual/examples/argp-ex2.c: Likewise.
2532 2001-11-05  Roland McGrath  <roland@frob.com>
2534         * sysdeps/powerpc/elf/sysdep.h: Remove this file, because it overrides
2535         the more-specific unix/sysv/linux/powerpc file and breaks everything.
2536         * sysdeps/powerpc/sysdep.h (ALIGNARG, ASM_TYPE_DIRECTIVE,
2537         ASM_SIZE_DIRECTIVE, CALL_MCOUNT, ENTRY, EALIGN, DO_CALL, JUMPTARGET,
2538         PSEUDO, PSEUDO_RET, PSEUDO_END, L, C_TEXT): These macros moved here
2539         here, put under [__ELF__].
2541 2001-11-05  Ulrich Drepper  <drepper@redhat.com>
2543         * manual/charset.texi: Extensive editing work.
2544         * manual/nss.texi: Likewise.
2545         Changes by Dennis Grace <dgrace@us.ibm.com>.
2547 2001-11-04  Roland McGrath  <roland@frob.com>
2549         * hurd/set-host.c (_hurd_set_host_config): Use O_WRONLY in flags
2550         parameter to dir_mkfile.
2552 2001-11-02  Jakub Jelinek  <jakub@redhat.com>
2554         * string/bits/string2.h (__strndup): If n is smaller than len, set
2555         len to n + 1.
2556         * string/tester.c (test_strndup): New function.
2557         (main): Call it.
2559 2001-11-01  Ulrich Drepper  <drepper@redhat.com>
2561         * sunrpc/rpc_main.c: Optimize variable definitions a bit.
2563         * sunrpc/Makefile (rpcgen-cmd): Use ../scripts/cpp in rpcgen calls.
2564         * scripts/cpp: New file.
2566         * elf/dl-load.c (_dl_map_object): Correct test of DF_1_NODEFLIB
2567         for rtld_search_dirs content.  Minor optimizations.
2569 2001-10-31  Ulrich Drepper  <drepper@redhat.com>
2571         * elf/dl-load.c (_dl_map_object): Make code a bit more compact by
2572         avoiding unnecessary duplication.
2574 2001-10-31  Jakub Jelinek  <jakub@redhat.com>
2576         * elf/dl-load.c (_dl_map_object): If library was found using
2577         LD_LIBRARY_PATH, don't try RUNPATH list.
2579 2001-10-31  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2581         * sysdeps/unix/sysv/linux/s390/s390-32/register-dump.h (REGISTER_DUMP):
2582         Correct second argument of register_dump call.
2583         * sysdeps/unix/sysv/linux/s390/s390-64/register-dump.h (REGISTER_DUMP):
2584         Likewise.
2586 2001-10-31  Ulrich Drepper  <drepper@redhat.com>
2588         * iconvdata/Makefile: Add support for IBM1132, IBM1133, and IBM1162
2589         modules.
2590         * iconvdata/TESTS: Likewise.
2591         * iconvdata/gconv-modules: Likewise.
2592         * iconvdata/ibm1132.c: New file.
2593         * iconvdata/ibm1132.h: New file.
2594         * iconvdata/ibm1133.c: New file.
2595         * iconvdata/ibm1133.h: New file.
2596         * iconvdata/ibm1162.c: New file.
2597         * iconvdata/ibm1162.h: New file.
2598         * iconvdata/testdata/IBM1132: New file.
2599         * iconvdata/testdata/IBM1132..UTF8: New file.
2600         * iconvdata/testdata/IBM1133: New file.
2601         * iconvdata/testdata/IBM1133..UTF8: New file.
2602         * iconvdata/testdata/IBM1162: New file.
2603         * iconvdata/testdata/IBM1162..UTF8: New file.
2604         Patches by Masahide Washizawa <WASHI@jp.ibm.com>.
2606         * string/string.h: Fix typo in comment.
2607         * wcsmbs/wchar.h: Likewise.
2609 2001-10-30  Joseph S. Myers  <jsm28@cam.ac.uk>
2611         * manual/getopt.texi (getopt_long, getopt_long_only): Include
2612         const in type of longopts parameter.
2614 2001-10-29  Andreas Jaeger  <aj@suse.de>
2616         * sysdeps/ieee754/dbl-64/mpa.h: Add prototypes for internal functions.
2618 2001-10-29  Kevin Ryde  <user42@zip.com.au>
2620         * manual/stdio.texi (Integer Conversions): Corrections to sample printf
2621         output, clarify `#' behaviour on 0.
2622         (Floating-Point Conversions): Clarify that %g only uses %e when
2623         the exponent would be greater than 1.
2625 2001-10-28  Roland McGrath  <roland@frob.com>
2627         Support for Mach/PowerPC contributed by Peter Bruin <pjbruin@dds.nl>.
2628         * sysdeps/mach/powerpc/machine-sp.h: New file.
2629         * sysdeps/mach/powerpc/sysdep.h: New file.
2630         * sysdeps/mach/powerpc/thread_state.h: New file.
2632         * sysdeps/mach/hurd/i386/Makefile: File removed; crt0.o rules moved ...
2633         * sysdeps/mach/hurd/Makefile: ... to here.  For the time being, we can
2634         expect to need the same thing on every platform.
2636         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: File moved ...
2637         * sysdeps/generic/sys/ucontext.h: ... to replace this one.
2639         * sysdeps/unix/sysv/linux/powerpc/sysdep.h (ALIGNARG,
2640         ASM_TYPE_DIRECTIVE, ASM_SIZE_DIRECTIVE, CALL_MCOUNT, ENTRY, EALIGN,
2641         DO_CALL, JUMPTARGET, PSEUDO, PSEUDO_RET, PSEUDO_END, L, C_TEXT):
2642         Move all these assembly-related definitions to ...
2643         * sysdeps/powerpc/elf/sysdep.h: ... this new file.
2645         * sysdeps/mach/powerpc/machine-lock.h: Assembly code rewritten
2646         by Peter Bruin <pjbruin@dds.nl>.
2648         * hurd/hurdselect.c (_hurd_select): Check SELECT_RETURNED bit when
2649         packing results for a `poll' call.
2651 2001-10-26  Ulrich Drepper  <drepper@redhat.com>
2653         * posix/fnmatch_loop.c: Recognize - at end of bracket expression
2654         correctly.
2655         * posix/tst-fnmatch.input: Add tests for - at beginning and end of
2656         bracket expression.
2658         * string/strxfrm.c [USE_IN_EXTENDED_LOCALE_MODEL]: Correctly get
2659         nrules value.
2660         * string/tst-strxfrm.c (test): Also test __strxfrm_l.
2662 2001-10-24  H.J. Lu  <hjl@gnu.org>
2664         * sysdeps/generic/bits/dlfcn.h (DL_CALL_FCT): Cast to void *.
2665         Use __BEGIN_DECLS/__END_DECLS around prototypes.
2666         * sysdeps/mips/bits/dlfcn.h (DL_CALL_FCT): Likewise.
2668 2001-10-21  Jim Meyering  <meyering@lucent.com>
2670         * malloc/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
2671         this code would end up calling gettext even in packages built
2672         with --disable-nls.
2673         * posix/getopt.c (_): Likewise.
2674         * posix/regex.c (_): Likewise.
2676 2001-10-26  Ulrich Drepper  <drepper@redhat.com>
2678         * resolv/gethnamaddr.c (gethostbyaddr): Use ip6.addr for reverse
2679         lookup not ip6.int.
2680         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise.
2681         Reported by Martin.v.Loewis@t-online.de [PR libc/2598].
2683 2001-10-19  Jakub Jelinek  <jakub@redhat.com>
2685         * misc/sys/cdefs.h (__attribute_used__): Define.
2686         * elf/rtld.c (_dl_start): Add __attribute_used__.
2687         * elf/dl-runtime.c (fixup, profile_fixup): Likewise.
2689 2001-10-25  Andreas Schwab  <schwab@suse.de>
2691         * stdlib/a64l.c: Expect least significant digit first.
2692         * stdlib/l64a.c: Produce least significant digit first.
2693         * stdlib/Makefile (tests): Add test-a64l.
2694         * stdlib/test-a64l.c: New file.
2695         Reported by Masaki Hasegawa <masaki-h@pp.iij4u.or.jp>.
2697 2001-10-21  Ulrich Drepper  <drepper@redhat.com>
2699         * po/sk.po: Update from translation team.
2701 2001-10-18  Ulrich Drepper  <drepper@redhat.com>
2703         * sysdeps/i386/elf/start.S (_fp_hw): Define object type.
2705 2001-10-18  Andreas Schwab  <schwab@suse.de>
2707         * math/libm-test.inc (print_ulps): Print ulp values rounded to
2708         next whole number.
2709         (print_function_ulps): Likewise.
2710         (print_complex_function_ulps): Likewise.
2711         (print_max_error): Likewise.
2712         (print_complex_max_error): Likewise.  Handle ignore_max_ulp.
2714 2001-10-16  Andreas Schwab  <schwab@suse.de>
2716         * sysdeps/m68k/fpu/libm-test-ulps: Updated for fixed cbrtl
2717         implementation.
2719         * sysdeps/m68k/setjmp.c: Also define setjmp and _setjmp if
2720         BSD_SETJMP or BSD__SETJMP is defined, resp.
2721         * sysdeps/m68k/bsd-setjmp.c: Inline setjmp code instead of making
2722         a tail call to __sigsetjmp that would require extending the
2723         caller's frame.
2724         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
2725         * sysdeps/m68k/bsd-setjmp.S: Deleted.
2726         * sysdeps/m68k/bsd-_setjmp.S: Deleted.
2727         Reported by Jes Sorensen <jes@trained-monkey.org>.
2729 2001-10-16  Andreas Jaeger  <aj@suse.de>
2731         * sysdeps/ieee754/ldbl-96/s_nextafterl.c (__nextafterl): Fix
2732         parentheses.  Reported by David Byron <dbyron@porto.coactive.com>,
2733         close PR libc/2589.
2735 2001-10-15  Ulrich Drepper  <drepper@redhat.com>
2737         * po/ca.po: New file.  Contributed by the translation team.
2739 2001-10-15  Ralf Baechle  <ralf@gnu.org>
2741         * sysdeps/unix/sysv/linux/mips/sys/sysmips.h: Make sysmips() prototype
2742         a varargs prototype.  Remove dependency from kernel header files.
2744         * sysdeps/unix/sysv/linux/mips/bits/termios.h: General cleanup, use
2745         __USE_MISC / __USE_XOPEN not __USE_BSD where appropriate.
2747 2001-10-14  Ulrich Drepper  <drepper@redhat.com>
2749         * locale/programs/ld-collate.c (handle_ellipsis): Use %lX not %lx
2750         to generate hexadecimal identifier.
2751         Patch by Jungshik Shin <jungshik.shin@yale.edu>.
2753 2001-10-09  Stephen L Moshier  <moshier@mediaone.net>
2755         * sysdeps/ieee754/ldbl-96/s_cbrtl.c (__cbrtl): Fix algorithm.
2757 2001-10-14  Ulrich Drepper  <drepper@redhat.com>
2759         * sysdeps/ieee754/ldbl-128/e_powl.c: New file.
2760         * sysdeps/ieee754/ldbl-128/s_cbrtl.c: New file.
2761         Contributed by Stephen L Moshier <moshier@mediaone.net>.
2763         * sysdeps/ieee754/ldbl-128/e_j0l.c: Constify float variables.
2764         * sysdeps/ieee754/ldbl-128/e_j1l.c: Likewise.
2765         * sysdeps/ieee754/ldbl-128/e_lgammal_r.c: Likewise
2766         * sysdeps/ieee754/ldbl-128/s_erfl.c: Likewise
2767         * sysdeps/ieee754/ldbl-128/s_expm1l.c: Likewise
2768         * sysdeps/ieee754/ldbl-128/s_log1pl.c: Likewise
2770         * timezone/africa: Update from tzdata2001d.
2771         * timezone/asia: Likewise.
2772         * timezone/australasia: Likewise.
2773         * timezone/backward: Likewise.
2774         * timezone/europe: Likewise.
2775         * timezone/leapseconds: Likewise.
2776         * timezone/northamerica: Likewise.
2777         * timezone/southamerica: Likewise.
2778         * timezone/zone.tab: Likewise.
2780 2001-10-09  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2782         * sysdeps/s390/s390-32/sys/ucontext.h: Correct __psw_t typedef.
2783         * sysdeps/s390/s390-64/sys/ucontext.h: Likewise.
2785 2001-10-12  Ulrich Drepper  <drepper@redhat.com>
2787         * elf/elf.h (PT_TLS): New definition.
2789 2001-10-10  Jeff Bailey  <jbailey@nisa.net>
2791         * sysdeps/mach/hurd/Makefile: Add $(CFLAGS) for generation of
2792         bits/errno.h
2794 2001-10-07  Roland McGrath  <roland@frob.com>
2796         * sysdeps/mach/hurd/setrlimit.c (__setrlimit): Never return ENOSYS.
2798 2001-10-10  Ulrich Drepper  <drepper@redhat.com>
2800         * elf/elf.h: Add more ELFOSABI_* constants.
2802 2001-10-04  Ben Collins  <bcollins@debian.org>
2804         * sysdeps/generic/inttypes.h: Fix typo (define, not defined) in
2805         decleration of __need_wchar_t.
2807 2001-10-03  Jakub Jelinek  <jakub@redhat.com>
2809         * string/bits/string2.h (__strsep_g): Add prototype.
2810         (__strsep): Use it.
2811         * string/Versions (__strsep): Remove.
2812         * sysdeps/generic/strsep.c (__strsep_g): Add alias to __strsep.
2814 2001-10-07  Ulrich Drepper  <drepper@redhat.com>
2816         * manua/llio.texi: Clarify file references added by mmap.
2817         Patch by Marcus Brinkmann <Marcus.Brinkmann@ruhr-uni-bochum.de>.
2819 2001-09-29  Jes Sorensen  <jes@trained-monkey.org>
2821         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext):
2822         Add sc_loadrs and sc_rbs_bas to match current kernel.
2824 2001-09-27  Jakub Jelinek  <jakub@redhat.com>
2826         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
2828         * sysdeps/ieee754/ldbl-128/s_erfl.c (__erfcl): Fix erfc(-inf).
2830 2001-09-27  Jakub Jelinek  <jakub@redhat.com>
2832         * elf/dl-open.c (dl_open_worker): If l_opencount of freshly loaded
2833         object has been bumped because of relocation dependency, avoid
2834         duplicates in l_scope.
2835         (show_scope): Fix typos.
2836         * elf/Makefile: Add rules to build and run reldep6.
2837         * elf/reldep6.c: New file.
2838         * elf/reldep6mod0.c: New file.
2839         * elf/reldep6mod1.c: New file.
2840         * elf/reldep6mod2.c: New file.
2841         * elf/reldep6mod3.c: New file.
2842         * elf/reldep6mod4.c: New file.
2844 2001-09-26  Jakub Jelinek  <jakub@redhat.com>
2846         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_fixup_plt): Call
2847         sparc64_fixup_plt.
2848         (sparc64_fixup_plt): Moved from elf_machine_fixup_plt.  Optimize
2849         near jumps and 0xfffff800XXXXXXXX target addresses, no thread safety
2850         for non-lazy binding. Fix .plt[32768+] handling.
2851         (elf_machine_plt_value): Don't add addend.
2852         (elf_machine_rela): Call sparc64_fixup_plt instead of
2853         elf_machine_fixup_plt.
2854         (elf_machine_runtime_setup, TRAMPOLINE_TEMPLATE): Optimize for
2855         dynamic linker at 0xfffff800XXXXXXXX.
2857         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
2859 2001-09-28  Ulrich Drepper  <drepper@redhat.com>
2861         * elf/elf.h: Define SHF_GROUP and SHF_TLS.
2863 2001-09-25  Jakub Jelinek  <jakub@redhat.com>
2865         * sysdeps/unix/bsd/bsd4.4/bits/socket.h (struct cmsghdr): Don't
2866         declare __cmsg_data field if its size would be bigger than 0.
2867         (CMSG_DATA): Adjust accordingly.
2868         * sysdeps/unix/sysv/aix/bits/socket.h: Likewise.
2869         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: Likewise.
2870         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: Likewise.
2871         * sysdeps/unix/sysv/linux/s390/s390-64/bits/socket.h: Likewise.
2872         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
2873         * sysdeps/unix/sysv/linux/mips/bits/socket.h: Likewise.
2874         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Likewise.
2876 2001-09-25  Ulrich Drepper  <drepper@redhat.com>
2878         * iconvdata/TESTS: Add entries for IBM1160 and IBM1161.
2879         * iconvdata/testdata/IBM1160: New file.
2880         * iconvdata/testdata/IBM1160..UTF8: New file.
2881         * iconvdata/testdata/IBM1161: New file.
2882         * iconvdata/testdata/IBM1161..UTF8: New file.
2883         Patch by Masahide Washizawa <WASHI@jp.ibm.com>.
2885 2001-09-24  Ulrich Drepper  <drepper@redhat.com>
2887         * sysdeps/unix/bsd/ulimit.c (ulimit): Handle overflow in
2888         UL_SETFSIZE computations better.
2890         * rt/Makefile: Remove use of filter for librt again.
2892         * sysdeps/unix/sysv/linux/ulimit.c (__ulimit): Handle overflow in
2893         UL_SETFSIZE computations better.
2895         * string/Versions: Export __strsep for GLIBC_2.2.5.
2896         * string/bits/string2.h: Define all __STRING_INLINE functions if
2897         _FORCE_INLINES is defined.
2898         Use int instead of char of parameter types.
2899         (__strsep): Don't use __strsep_g.  Don't define it.
2900         (__strsep_1c, __strsep_2c, __strsep_3c): Optimize.
2901         * sysdeps/i386/i486/string.h (__strcpy_a_small): Renamed from
2902         __strcpy_small.
2903         (__stpcpy_a_small): Renamed from __stpcpy_small.
2904         (__strcspn_c1): Don't define if _FORCE_INLINES.
2905         (__strspn_c1): Likewise.
2907 2001-09-22  Ben Collins  <bcollins@debian.org>
2909         * sysdeps/sparc/bits/sigaction.h: Define SA_RESTART and friends when
2910         _UNIX98_SOURCE is defined too.  Matches generic/bits/sigaction.h.
2911         * sysdeps/ia64/bits/sigaction.h: Likewise.
2912         * sysdeps/s390/s390-64/bits/sigaction.h: Likewise.
2914 2001-09-24  Andrew Haley  <aph@cambridge.redhat.com>
2916         * sysdeps/unix/sysv/linux/sh/Makefile (sysdep_headers): Add sys/io.h.
2918 2001-09-24  Jakub Jelinek  <jakub@redhat.com>
2920         * elf/dl-open.c (dl_open_worker): Update l_scope_max.
2922 2001-09-24  Ulrich Drepper  <drepper@redhat.com>
2924         * wcsmbs/wchar.h: Add __attribute_pure__ to mbsinit prototype.
2926 2001-09-20  H.J. Lu  <hjl@gnu.org>
2928         * include/dlfcn.h (__RTLD_SPROF): New definiton.
2929         * elf/dl-open.c (dl_open_worker): Return immediately after loading
2930         for __RTLD_SPROF.
2931         * elf/sprof.c (main): Default to the filename if soname doesn't exist.
2932         (load_shobj): Call dlopen with `RTLD_LAZY | __RTLD_SPROF'.
2934 2001-09-20  H.J. Lu  <hjl@gnu.org>
2936         * elf/dl-profile.c (_dl_mcount): Use old *narcsp value for newarc,
2937         don't add 1.
2939 2001-09-22  Ulrich Drepper  <drepper@redhat.com>
2941         * nss/getent.c: Accept -s parameter to overwrite rules in
2942         nsswitch.conf.  Patch by Nalin Dahyabhai <nalin@redhat.com>.
2944         * nss/nss_files/files-network.c (LINE_PARSER): Pad addr string
2945         with as many ".0" as necessary to form a complete address
2946         inet_network understands.
2948         * nss/getent.c: Various cleanups.  Use simpler and fewer function
2949         calls.
2951 2001-09-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2953         * sysdeps/s390/s390-32/bits/setjmp.h: Correct pointer comparison in
2954         _JMPBUF_UNWINDS.
2955         * sysdeps/s390/s390-64/bits/setjmp.h: Likewise.
2957 2001-09-22  Ulrich Drepper  <drepper@redhat.com>
2959         * iconvdata/Makefile: Add rules to build and distribute IBM1160 and
2960         IBM1161.
2961         * iconvdata/gconv-modules: Add entries for IBM1160 and IBM1161.
2962         * iconvdata/ibm1160.c: New file.
2963         * iconvdata/ibm1160.h: New file.
2964         * iconvdata/ibm1161.c: New file.
2965         * iconvdata/ibm1161.h: New file.
2966         Patch by Masahide Washizawa <WASHI@jp.ibm.com>.
2968 2001-09-19  Jakub Jelinek  <jakub@redhat.com>
2970         * sysdeps/alpha/dl-machine.h (elf_machine_load_address): Compute the
2971         difference between base address and first PT_LOAD's virtual address,
2972         not the base address.
2974 2001-09-11  Tom Rix  <trix@redhat.com>
2976         * sysdeps/unix/sysv/aix/init-first.c (init):  Use USE_NONONPTION_FLAG
2977         ifdef for __getopt_clean_environment.
2978         * sysdeps/unix/sysv/aix/libc-start.c: Add real implementation.
2980 2001-09-22  Andreas Jaeger  <aj@suse.de>
2982         * elf/reldep4.c (main): Add proper prototype to fix warning.
2984         * elf/reldep5.c (main): Remove unused variable.
2986         * math/math_private.h: Add prototypes.
2988 2001-09-21  Andreas Jaeger  <aj@suse.de>
2990         * sysdeps/unix/sysv/linux/x86_64/Dist: New file.
2991         * sysdeps/x86_64/Dist: New file.
2992         * sysdeps/x86_64/soft-fp/Dist: New file.
2994         * sysdeps/gnu/Dist: Remove eval.c.
2996 2001-09-20  Ulrich Drepper  <drepper@redhat.com>
2998         * malloc/memusage.c (realloc): Don't count already allocated
2999         memory in the sums.
3000         (me): Always use dlsym() to find the real implementations.
3002         * malloc/memusage.sh: Make -n option actually do something.
3004 2001-09-20  Andreas Jaeger  <aj@suse.de>
3006         * elf/elf.h (R_390_NUM): Correct value.
3008         * Versions.def: Add missing versions 2.2.3 for libthread_db and
3009         libpthread.
3011         * sysdeps/unix/sysv/linux/configure.in: Add minimal kernel version
3012         for x86-64, install x86-64 into */lib64.
3014         * shlib-versions: Add x86-64.
3016         * elf/elf.h: Add x86-64 relocations.
3018 2001-09-19  Ulrich Drepper  <drepper@redhat.com>
3020         * po/fr.po: Update from translation team.
3022 2001-09-19  Andreas Jaeger  <aj@suse.de>
3024         * sysdeps/unix/sysv/linux/x86_64/Makefile: New file.
3025         * sysdeps/unix/sysv/linux/x86_64/Versions: New file.
3026         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: New file.
3027         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: New file.
3028         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: New file.
3029         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: New file.
3030         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: New file.
3031         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: New file.
3032         * sysdeps/unix/sysv/linux/x86_64/brk.c: New file.
3033         * sysdeps/unix/sysv/linux/x86_64/clone.S: New file.
3034         * sysdeps/unix/sysv/linux/x86_64/fstatfs64.c: New file.
3035         * sysdeps/unix/sysv/linux/x86_64/ftruncate64.c: New file.
3036         * sysdeps/unix/sysv/linux/x86_64/fxstat.c: New file.
3037         * sysdeps/unix/sysv/linux/x86_64/fxstat64.c: New file.
3038         * sysdeps/unix/sysv/linux/x86_64/getdents.c: New file.
3039         * sysdeps/unix/sysv/linux/x86_64/getdents64.c: New file.
3040         * sysdeps/unix/sysv/linux/x86_64/getrlimit64.c: New file.
3041         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.c: New file.
3042         * sysdeps/unix/sysv/linux/x86_64/glob64.c: New file.
3043         * sysdeps/unix/sysv/linux/x86_64/lxstat.c: New file.
3044         * sysdeps/unix/sysv/linux/x86_64/lxstat64.c: New file.
3045         * sysdeps/unix/sysv/linux/x86_64/mmap64.c: New file.
3046         * sysdeps/unix/sysv/linux/x86_64/pread64.c: New file.
3047         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h: New file.
3048         * sysdeps/unix/sysv/linux/x86_64/pwrite64.c: New file.
3049         * sysdeps/unix/sysv/linux/x86_64/readdir.c: New file.
3050         * sysdeps/unix/sysv/linux/x86_64/readdir64.c: New file.
3051         * sysdeps/unix/sysv/linux/x86_64/readdir64_r.c: New file.
3052         * sysdeps/unix/sysv/linux/x86_64/readdir_r.c: New file.
3053         * sysdeps/unix/sysv/linux/x86_64/recv.c: New file.
3054         * sysdeps/unix/sysv/linux/x86_64/register-dump.h: New file.
3055         * sysdeps/unix/sysv/linux/x86_64/send.c: New file.
3056         * sysdeps/unix/sysv/linux/x86_64/setrlimit64.c: New file.
3057         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: New file.
3058         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: New file.
3059         * sysdeps/unix/sysv/linux/x86_64/sigpending.c: New file.
3060         * sysdeps/unix/sysv/linux/x86_64/sigprocmask.c: New file.
3061         * sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: New file.
3062         * sysdeps/unix/sysv/linux/x86_64/statfs64.c: New file.
3063         * sysdeps/unix/sysv/linux/x86_64/sys/perm.h: New file.
3064         * sysdeps/unix/sysv/linux/x86_64/sys/procfs.h: New file.
3065         * sysdeps/unix/sysv/linux/x86_64/sys/reg.h: New file.
3066         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h: New file.
3067         * sysdeps/unix/sysv/linux/x86_64/sys/user.h: New file.
3068         * sysdeps/unix/sysv/linux/x86_64/syscall.S: New file.
3069         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: New file.
3070         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: New file.
3071         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: New file.
3072         * sysdeps/unix/sysv/linux/x86_64/time.c: New file.
3073         * sysdeps/unix/sysv/linux/x86_64/truncate64.c: New file.
3074         * sysdeps/unix/sysv/linux/x86_64/umount.c: New file.
3075         * sysdeps/unix/sysv/linux/x86_64/vfork.S: New file.
3076         * sysdeps/unix/sysv/linux/x86_64/xstat.c: New file.
3077         * sysdeps/unix/sysv/linux/x86_64/xstat64.c: New file.
3078         * sysdeps/unix/x86_64/sysdep.S: New file.
3079         * sysdeps/unix/x86_64/sysdep.h: New file.
3080         * sysdeps/x86_64/Implies: New file.
3081         * sysdeps/x86_64/Makefile: New file.
3082         * sysdeps/x86_64/Versions: New file.
3083         * sysdeps/x86_64/__longjmp.S: New file.
3084         * sysdeps/x86_64/abort-instr.h: New file.
3085         * sysdeps/x86_64/atomicity.h: New file.
3086         * sysdeps/x86_64/bits/endian.h: New file.
3087         * sysdeps/x86_64/bits/setjmp.h: New file.
3088         * sysdeps/x86_64/bits/string.h: New file.
3089         * sysdeps/x86_64/bp-asm.h: New file.
3090         * sysdeps/x86_64/bsd-_setjmp.S: New file.
3091         * sysdeps/x86_64/bsd-setjmp.S: New file.
3092         * sysdeps/x86_64/dl-machine.h: New file.
3093         * sysdeps/x86_64/elf/initfini.c: New file.
3094         * sysdeps/x86_64/elf/start.S: New file.
3095         * sysdeps/x86_64/ffs.c: New file.
3096         * sysdeps/x86_64/ffsll.c: New file.
3097         * sysdeps/x86_64/fpu/bits/fenv.h: New file.
3098         * sysdeps/x86_64/fpu/bits/mathdef.h: New file.
3099         * sysdeps/x86_64/fpu/e_acosl.c: New file.
3100         * sysdeps/x86_64/fpu/e_atan2l.c: New file.
3101         * sysdeps/x86_64/fpu/e_exp2l.S: New file.
3102         * sysdeps/x86_64/fpu/e_expl.c: New file.
3103         * sysdeps/x86_64/fpu/e_fmodl.S: New file.
3104         * sysdeps/x86_64/fpu/e_log10l.S: New file.
3105         * sysdeps/x86_64/fpu/e_log2l.S: New file.
3106         * sysdeps/x86_64/fpu/e_logl.S: New file.
3107         * sysdeps/x86_64/fpu/e_powl.S: New file.
3108         * sysdeps/x86_64/fpu/e_rem_pio2l.c: New file.
3109         * sysdeps/x86_64/fpu/e_scalbl.S: New file.
3110         * sysdeps/x86_64/fpu/e_sqrtl.c: New file.
3111         * sysdeps/x86_64/fpu/fclrexcpt.c: New file.
3112         * sysdeps/x86_64/fpu/fedisblxcpt.c: New file.
3113         * sysdeps/x86_64/fpu/feenablxcpt.c: New file.
3114         * sysdeps/x86_64/fpu/fegetenv.c: New file.
3115         * sysdeps/x86_64/fpu/fegetexcept.c: New file.
3116         * sysdeps/x86_64/fpu/fegetround.c: New file.
3117         * sysdeps/x86_64/fpu/feholdexcpt.c: New file.
3118         * sysdeps/x86_64/fpu/fesetenv.c: New file.
3119         * sysdeps/x86_64/fpu/fesetround.c: New file.
3120         * sysdeps/x86_64/fpu/fgetexcptflg.c: New file.
3121         * sysdeps/x86_64/fpu/fraiseexcpt.c: New file.
3122         * sysdeps/x86_64/fpu/fsetexcptflg.c: New file.
3123         * sysdeps/x86_64/fpu/ftestexcept.c: New file.
3124         * sysdeps/x86_64/fpu/libm-test-ulps: New file.
3125         * sysdeps/x86_64/fpu/math_ldbl.h: New file.
3126         * sysdeps/x86_64/fpu/printf_fphex.c: New file.
3127         * sysdeps/x86_64/fpu/s_atanl.c: New file.
3128         * sysdeps/x86_64/fpu/s_cosl.S: New file.
3129         * sysdeps/x86_64/fpu/s_expm1l.S: New file.
3130         * sysdeps/x86_64/fpu/s_fpclassifyl.c: New file.
3131         * sysdeps/x86_64/fpu/s_isinfl.c: New file.
3132         * sysdeps/x86_64/fpu/s_isnanl.c: New file.
3133         * sysdeps/x86_64/fpu/s_log1pl.S: New file.
3134         * sysdeps/x86_64/fpu/s_logbl.c: New file.
3135         * sysdeps/x86_64/fpu/s_nextafterl.c: New file.
3136         * sysdeps/x86_64/fpu/s_nexttoward.c: New file.
3137         * sysdeps/x86_64/fpu/s_nexttowardf.c: New file.
3138         * sysdeps/x86_64/fpu/s_rintl.c: New file.
3139         * sysdeps/x86_64/fpu/s_significandl.c: New file.
3140         * sysdeps/x86_64/fpu/s_sincosl.S: New file.
3141         * sysdeps/x86_64/fpu/s_sinl.S: New file.
3142         * sysdeps/x86_64/fpu/s_tanl.S: New file.
3143         * sysdeps/x86_64/gmp-mparam.h: New file.
3144         * sysdeps/x86_64/hp-timing.c: New file.
3145         * sysdeps/x86_64/hp-timing.h: New file.
3146         * sysdeps/x86_64/htonl.S: New file.
3147         * sysdeps/x86_64/memusage.h: New file.
3148         * sysdeps/x86_64/setjmp.S: New file.
3149         * sysdeps/x86_64/soft-fp/sfp-machine.h: New file.
3150         * sysdeps/x86_64/stackinfo.h: New file.
3151         * sysdeps/x86_64/sysdep.h: New file.
3152         * sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed: New file.
3154         * sysdeps/ieee754/ldbl-128/s_erfl.c: New file, contributed Stephen
3155         L Moshier.
3157 2001-09-18  Ulrich Drepper  <drepper@redhat.com>
3159         * malloc/malloc.c (ptmalloc_init): Handle _environ==NULL.
3160         Reported by B. D. Elliott <bde@nwlink.com> [PR libc/2541].
3162 2001-09-18  Andreas Schwab  <schwab@suse.de>
3164         * elf/dl-load.c (_dl_map_object_from_fd): Update handling of scope
3165         list, now that l_scope is a pointer.
3167         * elf/dl-open.c (dl_open_worker): Fix thinko when enlarging the
3168         scope list.
3170 2001-09-18  kaz Kojima  <kkojima@rr.iij4u.or.jp>
3172         * sysdeps/sh/dl-machine.h (elf_machine_rela): Fix reverse condition.
3173         (elf_machine_rela_relative): Add a missing declaration.
3175 2001-09-18  Jakub Jelinek  <jakub@redhat.com>
3177         * sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed: New file.
3178         * sysdeps/unix/sysv/linux/s390/ldd-rewrite.sed: New file.
3179         * sysdeps/unix/sysv/linux/configure.in: Add ia64 and s390
3180         ldd-rewrite scripts.
3182 2001-09-18  Ulrich Drepper  <drepper@redhat.com>
3184         * elf/ldd.bash.in: Update copyright message.
3186 2001-09-17  H.J. Lu  <hjl@gnu.org>
3188         * hurd/hurdmalloc.c (bcopy): Removed.
3189         (realloc): Replace bcopy with memcpy.
3190         * hurd/path-lookup.c (file_name_path_scan): Likewise.
3191         * resolv/gethnamaddr.c (map_v4v6_address): Likewise.
3192         * sunrpc/rpcinfo.c (pmapdump): Likewise.
3194         * resolv/gethnamaddr.c (getanswer): Replace bcopy with memmove.
3195         (gethostbyaddr): Likewise.
3196         * sunrpc/rpcinfo.c (get_inet_address): Likewise.
3198 2001-09-18  Ulrich Drepper  <drepper@redhat.com>
3200         * sysdeps/gnu/eval.c: Removed.
3202 2001-09-18  Andreas Jaeger  <aj@suse.de>
3204         * sysdeps/i386/fpu/s_logbl.S: Move to ...
3205         * sysdeps/i386/fpu/s_logbl.c: ...here, use inline assembler.
3207         * sysdeps/i386/fpu/s_rintl.S: Move to ...
3208         * sysdeps/i386/fpu/s_rintl.c: ...here, use inline assembler.
3210         * sysdeps/i386/fpu/s_significandl.S: Move to ...
3211         * sysdeps/i386/fpu/s_significandl.c: ...here, use inline assembler.
3213 2001-09-16  Ulrich Drepper  <drepper@redhat.com>
3215         * string/strcoll.c [USE_IN_EXTENDED_LOCALE_MODEL]: Correctly get
3216         nrules value.
3218 2001-09-14  H.J. Lu  <hjl@gnu.org>
3220         * sysdeps/mips/fpu/libm-test-ulps: Updated.
3222 2001-09-14  Ulrich Drepper  <drepper@redhat.com>
3224         * sysdeps/unix/sysv/linux/s390/s390-32/sys/ucontext.h: Fix a typo.
3225         Patch by Florian La Roche <laroche@redhat.com>.
3227         * string/bits/string2.h (__strtok_r_1c): Optimize a bit.
3229         * sysdeps/unix/sysv/linux/net/ethernet.h: Correct references to
3230         ETHER_CRC_LEN.
3232 2001-09-14  Andreas Schwab  <schwab@suse.de>
3234         * posix/execl.c: Fix last argument of memcpy.  Reported by Brian
3235         Sumner <bls@sgi.com>.
3236         * posix/execlp.c: Likewise.
3238 2001-09-13  Jakub Jelinek  <jakub@redhat.com>
3240         * elf/dl-deps.c (_dl_map_object_deps): Fix filter handling if filter
3241         is already found earlier in the search scope.
3243 2001-09-12  Jakub Jelinek  <jakub@redhat.com>
3245         * rt/Makefile (LDFLAGS-rt.so): Use shared thread library as librt's
3246         filter.
3248 2001-09-13  Ulrich Drepper  <drepper@redhat.com>
3250         * sysdeps/powerpc/fpu/libm-test-ulps: Adjust expected errors for j0.
3252 2001-09-12  Ulrich Drepper  <drepper@redhat.com>
3254         * config.h.in: Enforce optimization to be used.
3255         * Makeconfig (preprocess-versions): Define ASSEMBLER.
3256         * stdlib/Makefile (isomac-CFLAGS): Define to -O.
3257         * posix/Makefile (annexc-CFLAGS): Define to -O.
3258         * sysdeps/unix/make-syscalls.sh: Define __OPTIMIZE__ in use of asm_CPP.
3260 2001-09-11  Ulrich Drepper  <drepper@redhat.com>
3262         * nscd/nscd_gethst_r.c: Don't expect IPv6 addresses for IPv4 lookup.
3263         Patch by Stephan Kulow.
3265 2001-09-08  Ben Collins  <bcollins@debian.org>
3267         * sysdeps/arm/dl-machine.h (elf_machine_rel): Fix thinko in
3268         usage of RESOLVE() (r_type, not reloc->r_type).
3270 2001-09-08  Ulrich Drepper  <drepper@redhat.com>
3272         * elf/dl-object.c: Avoid allocating extra memory block for name.
3273         * elf/dl-close.c (_dl_close): Don't free l_libname if it is not
3274         allocated separately.
3275         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
3277 2001-09-08  H.J. Lu  <hjl@gnu.org>
3279         * po/zh_TW.po: Fix a typo.
3281 2001-09-07  Tom Rix  <trix@redhat.com>
3283         * sysdeps/unix/sysv/aix/sysv_termio.h: New file.
3285 2001-08-26  Tom Rix  <trix@redhat.com>
3287         * sysdeps/unix/sysv/aix/Makefile (aix-syscalls.o): More linker
3288         command line options.
3289         * sysdeps/unix/sysv/aix/start.s: New file, rework of start.c
3290         * sysdeps/unix/sysv/aix/start.c: Removed.
3291         * sysdeps/unix/sysv/aix/start-libc.c: New file.
3292         * sysdeps/unix/sysv/aix/init-first.c: New file.
3293         * sysdeps/unix/sysv/aix/fcntl.c: Alias __libc_fcntl to __fcntl.
3295 2001-09-08  Ben Collins  <bcollins@debian.org>
3297         * sysdeps/arm/dl-machine.h: Fix usage of new _dl_signal_error() format.
3298         * sysdeps/generic/dl-machine.h: Likewise.
3299         * sysdeps/hppa/dl-fptr.c: Likewise.
3300         * sysdeps/ia64/dl-fptr.c: Likewise.
3301         * sysdeps/mach/hurd/dl-sysdep.c: Likewise.
3302         * sysdeps/mips/dl-machine.h: Likewise.
3303         * sysdeps/mips/mips64/dl-machine.h: Likewise.
3304         * sysdeps/powerpc/dl-machine.c: Likewise.
3306 2001-09-07  Ben Collins  <bcollins@debian.org>
3308         * sysdeps/sparc/sparc32/dl-machine.h: Fix typo.
3310         * sysdeps/hppa/dl-lookupcfg.h: Forward declare struct link_map.
3312 2001-09-08  Ulrich Drepper  <drepper@redhat.com>
3314         * elf/dl-lookup.c (add_dependency): Bump l_opencount of all
3315         dependencies if necessary.
3317         * elf/dl-close.c (_dl_close): If object has no r_list (i.e., wasn't
3318         loaded directly) determine length if l_initfini list by iterating
3319         over its elements.  Minor optimizations.
3320         * elf/dl-deps.c (_dl_map_object_deps): Always add own map to l_initfini
3321         for dependency objects.
3322         If object was already loaded check whether any of the dependencies
3323         is already on the relocation dependency list.  If yes, remove the
3324         latter.  Minor optimizations.
3325         * elf/dl-lookup.c (add_dependency): Add check for self reference of
3326         maps here.  Search l_initfini list only if the object was loaded
3327         directly and not only as a dependency.
3328         (_dl_lookup_symbol): Add relocation dependency also if object
3329         is not in global scope.  Remove test for self-reference here.
3330         (_dl_lookup_versioned_symbol): Likewise.
3331         * elf/dl-object (_dl_new_object): Cleanup.  Initialize dont_free
3332         element of first name record.
3333         * elf/loadtest.c: Add some more test to recognize early if an object
3334         wasn't unloaded.
3335         * elf/Makefile: Add rules to build and run reldep5.
3336         * elf/reldep5.c: New file.
3337         * elf/reldepmod5.c: New file.
3338         * elf/reldepmod6.c: New file.
3340         * elf/reldep2.c: Fix typo.
3342 2001-09-07  Ulrich Drepper  <drepper@redhat.com>
3344         * include/link.h (struct link_map): Add l_scope_mem and l_scope_max
3345         elements.  Change l_scope to be a pointer only.
3346         * elf/dl-object.c (_dl_new_object): Initialize l_scope and l_scope_max.
3347         * elf/dl-open.c (dl_open_worker): If dependency wasn't just opened
3348         here add searchlist of newly open file to the dependency's scope.
3349         * elf/dl-close.c (_dl_close): If dependency is used otherwise remove
3350         only searchlist from its scope.  Free own scope array if necessary.
3351         * elf/Makefile (tests): Add dblload and dblunload now.
3353 2001-09-06  Andreas Jaeger  <aj@suse.de>
3355         * sysdeps/ieee754/ldbl-128/e_lgammal_r.c: New file, contributed
3356         Stephen L Moshier.
3358 2001-09-05  Ulrich Drepper  <drepper@redhat.com>
3360         * elf/Makefile: Add rules to build new tests.  Don't run them yet since
3361         they both fail.
3362         * elf/dblload.c: New file.
3363         * elf/dblloadmod1.c: New file.
3364         * elf/dblloadmod2.c: New file.
3365         * elf/dblloadmod3.c: New file.
3366         * elf/dblunload.c: New file.
3368 2001-09-04  Richard Henderson  <rth@redhat.com>
3370         * elf/elf.h (R_ALPHA_OP_*, R_ALPHA_IMMED_*): Remove.
3371         (R_ALPHA_GPREL16): Rename from R_ALPHA_IMMED_GP_16.
3373 2001-09-04  Ulrich Drepper  <drepper@redhat.com>
3375         Correct very misleading message for error in failed runtime relocation.
3376         * elf/dl-error.c (_dl_signal_error): Take extra parameter to describe
3377         place of the error.
3378         (_dl_signal_cerror): Likewise.
3379         * sysdeps/generic/ldsodefs.h: Adjust prototypes.
3380         * elf/dl-close.c: Likewise.
3381         * elf/dl-deps.c: Likewise.
3382         * elf/dl-load.c: Likewise.
3383         * elf/dl-lookup.c: Likewise.
3384         * elf/dl-open.c: Likewise.
3385         * elf/dl-reloc.c: Likewise.
3386         * elf/dl-sym.c: Likewise.
3387         * elf/dl-version.c: Likewise.
3388         * sysdeps/generic/dl-sysdep.c: Likewise.
3390 2001-09-04  Jakub Jelinek  <jakub@redhat.com>
3392         * iconv/strtab.c (strtabinit): Initialize null Strent.
3393         (newstring): Move len == 0 handling...
3394         (strtabadd): ...here.
3395         If len == 1, return null Strent.
3396         When inserting a suffix of an existing string, check if
3397         it is not equal to some suffix already recorded.
3398         Copy left and right members over if adding longer string.
3400 2001-09-04  Jakub Jelinek  <jakub@redhat.com>
3402         * sunrpc/rpc_cout.c (upcase): Account for trailing '\0'.
3404         * sysdeps/unix/sysv/linux/alpha/gethostname.c: Include <errno.h>.
3405         (__syscall_gethostname): Add prototype.
3407 2001-09-04  Ulrich Drepper  <drepper@redhat.com>
3409         * elf/dl-object.c (_dl_new_object): Remove unnecessary if.
3411 2001-09-02  Ulrich Drepper  <drepper@redhat.com>
3413         * elf/rtld.c (dl_main): Increment l_opencount for main binary.
3415 2001-08-27  Roland McGrath  <roland@frob.com>
3417         * sysdeps/unix/sysv/gethostname.c (__gethostname): When LEN is too
3418         short, copy that much into NAME anyway before returning error.
3420 2001-09-01  Richard Henderson  <rth@redhat.com>
3422         * sysdeps/alpha/elf/Dist: Remove file.
3423         * sysdeps/alpha/elf/Makefile: Remove file.
3424         * sysdeps/alpha/elf/crtbegin.S: Remove file.
3425         * sysdeps/alpha/elf/crtend.S: Remove file.
3426         * sysdeps/alpha/elf/initfini.c: New file.
3428 2001-09-01  Mark Kettenis  <kettenis@gnu.org>
3430         * iconv/tst-iconv1.c: Include <stddef.h> for wchar_t.
3431         * iconv/tst-iconv3.c: Likewise.
3433 2001-09-01  Jakub Jelinek  <jakub@redhat.com>
3435         * sysdeps/generic/inttypes.h (__gwchar_t): Define to wchar_t for C++.
3437 2001-09-01  Ulrich Drepper  <drepper@redhat.com>
3439         * iconv/gconv_cache.c: Rename variable cache to __gconv_cache and
3440         export it.
3441         * iconv/Versions (libc) [GLIBC_2.2.5]: Export __gconv_cache.
3442         * iconv/iconv_prog.c (insert_cache): New function.
3443         (print_known_names): If cache is used call insert_cache to use the
3444         information from the cache [PR libc/2509].
3446 2001-08-31  Ulrich Drepper  <drepper@redhat.com>
3448         * time/strptime.c (strptime_internal): Recognize 'l' format and
3449         handle it like 'I' for symmetry with strftime.
3451 2001-08-31  Richard Henderson  <rth@redhat.com>
3453         * elf/dl-support.c (_dl_cpuclock_offset): Protect with NONAVAIL.
3454         (HP_TIMING_AVAIL): Set to HP_SMALL_TIMING_AVAIL if present.
3455         * elf/rtld.c (HP_TIMING_AVAIL): Likewise.
3456         (print_statistics): Make scalar unsigned long long.
3457         * sysdeps/alpha/hp-timing.h: New file.
3459 2001-08-31  Jakub Jelinek  <jakub@redhat.com>
3461         * stdio-common/perror.c (perror): Save errno early, pass it
3462         down to perror_internal.
3463         (perror_internal): Add errnum argument.
3465 2001-08-31  Jakub Jelinek  <jakub@redhat.com>
3467         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Remove unused code.
3468         Don't add old memory content for R_ALPHA_REFQUAD.
3470 2001-08-30  Ulrich Drepper  <drepper@redhat.com>
3472         * crypt/md5-crypt.c (__md5_crypt_r): Compute used and required
3473         memory correctly.
3475         * sysdeps/unix/sysv/linux/ia64/ioperm.c (_ioperm): Use __open
3476         instead of open, __close instead of close, __getpagesize instead
3477         of getpagesize.
3479         * string/argz-stringify.c (__argz_stringify): Use __strnlen
3480         instead of strnlen.
3481         * include/string.h (strndupa): Redefine here to use __strnlen
3482         instead of strnlen.
3483         * string/strndup.c (__strndup): Use __strnlen not strnlen.
3485         * misc/syslog.c (vsyslog): Fix typo in last change (connect ->
3486         connected).
3488 2001-08-30  Jakub Jelinek  <jakub@redhat.com>
3490         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Don't handle
3491         R_ALPHA_RELATIVE if RTLD_BOOTSTRAP and HAVE_Z_COMBRELOC.  Only check
3492         for rtld map if neither RTLD_BOOTSTRAP nor HAVE_Z_COMBRELOC is defined.
3493         * sysdeps/i386/dl-machine.h (elf_machine_rel): Similarly.
3494         * sysdeps/ia64/dl-machine.h (elf_machine_rel): Similarly.
3495         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rel): Similarly.
3496         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rel): Similarly.
3498 2001-08-30  Ulrich Drepper  <drepper@redhat.com>
3500         * sysdeps/alpha/fpu/libm-test-ulps: Adjust j0 ULPs.
3502 2001-08-30  Andreas Jaeger  <aj@suse.de>
3504         * sysdeps/ieee754/ldbl-128/e_jnl.c: New file,
3505         contributed Stephen L Moshier.
3507 2001-08-30  Jakub Jelinek  <jakub@redhat.com>
3509         * sunrpc/etc.rpc (sgi_fam): Add.
3511 2001-08-30  Ulrich Drepper  <drepper@redhat.com>
3513         * sysdeps/unix/sysv/linux/alpha/gethostname.c: New file.
3515 2001-08-29  Ulrich Drepper  <drepper@redhat.com>
3517         * nis/nis_findserv.c (__nis_findfastest): Don't fail if reply received
3518         first is from a previous call.
3519         Patch by Alexander Belopolsky <alexb@rentec.com> for [PR libc/3670].
3521 2001-08-29  Andreas Schwab  <schwab@suse.de>
3523         * sysdeps/ia64/fpu/libm-test-ulps: Updated.
3525 2001-08-25  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
3527         * config.make.in (INSTALL_SCRIPT): Define.
3528         * Makeconfig (INSTALL_SCRIPT): Define.
3529         * Makerules (do-install-script): New macro to install scripts using
3530         INSTALL_SCRIPT.
3531         (install-bin-script): New rule to install scripts with
3532         do-install-script.
3533         (install-bin-script-nosubdir): New rule.
3534         (install-no-libc.a-nosubdir): Add install-bin-script-nosubdir.
3535         (distinfo-vars): Add $(install-bin-script).
3536         * Rules (others): Likewise.
3537         * Makefile (glibcbug): Install with install-bin-script.
3538         * debug/Makefile (xtrace): Likewise.
3539         (catchsegv): Likewise.
3540         * elf/Makefile (ldd): Likewise.
3541         * malloc/Makefile (mtrace): Likewise.
3542         * timezone/Makefile (tzselect): Likewise.
3544 2001-08-29  H.J. Lu  <hjl@gnu.org>
3546         * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Pass
3547         ELF_RTYPE_CLASS_PLT, instead of R_MIPS_REL32, to
3548         _dl_lookup_versioned_symbol () and _dl_lookup_symbol ().
3550 2001-08-29  Andreas Schwab  <schwab@suse.de>
3552         * sysdeps/m68k/fpu/libm-test-ulps: Updated.
3554 2001-08-28  H.J. Lu  <hjl@gnu.org>
3556         * Makeconfig (combreloc-LDFLAGS): New variable.
3557         Add it to LDFLAGS.so, LDFLAGS-rtld, and +link.
3558         * config.make.in (have-z-combreloc): New variable.
3559         * configure.in: Substitute libc_cv_z_combreloc.
3561 2001-08-29  Ulrich Drepper  <drepper@redhat.com>
3563         * po/sv.po: Update from translation team.
3564         * po/fr.po: Likewise.
3565         * po/da.po: Likewise.
3567 2001-08-28  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
3569         * Makerules: Fix a typo: MD% -> MD5.
3571 2001-08-28  Ulrich Drepper  <drepper@redhat.com>
3573         * sunrpc/rpc_hout.c (pargdef): Function must take pointer to object.
3574         Patch by Patrick Duval <Patrick.Duval@devinci.fr>.
3576 2001-08-28  Andreas Jaeger  <aj@suse.de>
3578         * manual/libc-texinfo.sh: Add entry about free manuals.
3580         * manual/contrib.texi (Contributors): Fix cross reference.
3582         * manual/libc.texinfo (Copying): Include freemanuals.
3584         * manual/Makefile (appendices): Add freemanuals.
3586         * manual/freemanuals.texi: New file.
3587         Patch by Brian Youmans <3diff@gnu.org>.
3589         * manual/libm-err-tab.pl: Pretty print more platforms, print a
3590         smaller table.
3592         * manual/math.texi (Errors in Math Functions): Fix grammar, start
3593         table on separate page.
3594         Patch by Brian Youmans <3diff@gnu.org>.
3596 2001-08-27  Ulrich Drepper  <drepper@redhat.com>
3598         * misc/syslog.c (vsyslog): Try a bit harder to use syslogd.  If
3599         the connection went down after we first used it try to connect
3600         again and resend the message before printing to the console.
3601         Reported by Coserea Gh. Tudor <tudore@tudore.gecadsoftware.com>.
3603 2001-08-27  Jakub Jelinek  <jakub@redhat.com>
3605         * string/tst-strlen.c (main): Test strnlen (, -1) too.
3606         * sysdeps/generic/strnlen.c (__strnlen): Fix for maxlens with top
3607         bit set.
3609 2001-08-27  Ulrich Drepper  <drepper@redhat.com>
3611         * iconv/strtab.c (searchstring): Use correct length for comparison.
3612         (strtabadd): Account total size correct if new string has old string as
3613         substring.
3615 2001-08-27  Jakub Jelinek  <jakub@redhat.com>
3617         * elf/rtld.c (dl_main): Update call to _dl_lookup_symbol.
3619 2001-08-27  Andreas Jaeger  <aj@suse.de>
3621         * sysdeps/i386/fpu/libm-test-ulps (float): Add ulps for new tests.
3623         * math/libm-test.inc (j0_test): Add extra tests.
3624         * sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee754_j0l): Use |x|,
3625         not x, in Hankel approximation.
3626         Patches by Stephen L Moshier.
3628 2001-08-26  Ulrich Drepper  <drepper@redhat.com>
3630         * sysdeps/ia64/dl-lookupcfg.h: Add forward declaration for struct
3631         link_map.
3633         * configure.in: Fix test for .rela.dyn section.
3635         * elf/dl-runtime.c: Update calls to _dl_lookup_*.
3637 2001-08-26  Jakub Jelinek  <jakub@redhat.com>
3639         * elf/dl-reloc.c (RESOLVE_MAP, RESOLVE): Use elf_machine_type_class
3640         instead of elf_machine_lookup_noexec_p and elf_machine_lookup_noplt_p.
3641         Pass type_class to _dl_lookup_*.
3642         * elf/dl-lookup.c (_dl_lookup_symbol): Take type_class parameter now.
3643         Pass around just type_class instead of noexec, noplt pair.
3644         (_dl_lookup_versioned_symbol): Likewise.
3645         (_dl_lookup_symbol_skip): Pass around just type_class instead of
3646         noexec, noplt pair.
3647         (_dl_lookup_versioned_symbol_skip): Likewise.
3648         (_dl_do_lookup, _dl_do_lookup_versioned): Likewise.
3649         * elf/do-lookup.h (do_lookup): Likewise.
3650         * include/link.h (struct link_map): Replace noexec and noplt fields
3651         in l_lookup_cache with type_class field.
3652         * sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_PLT,
3653         ELF_RTYPE_CLASS_COPY): Define.
3654         Adjust prototypes for _dl_lookup_symbol and
3655         _dl_lookup_versioned_symbol.
3656         * sysdeps/alpha/dl-machine.h (elf_machine_lookup_noplt_p,
3657         elf_machine_lookup_noexec_p): Remove.
3658         (elf_machine_type_class): Define.
3659         * sysdeps/arm/dl-machine.h: Likewise.
3660         * sysdeps/hppa/dl-machine.h: Likewise.
3661         * sysdeps/cris/dl-machine.h: Likewise.
3662         * sysdeps/i386/dl-machine.h: Likewise.
3663         * sysdeps/ia64/dl-machine.h: Likewise.
3664         * sysdeps/m68k/dl-machine.h: Likewise.
3665         * sysdeps/mips/mips64/dl-machine.h: Likewise.
3666         * sysdeps/mips/dl-machine.h: Likewise.
3667         * sysdeps/powerpc/dl-machine.h: Likewise.
3668         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
3669         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
3670         * sysdeps/sh/dl-machine.h: Likewise.
3671         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
3672         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
3674 2001-08-26  Ulrich Drepper  <drepper@redhat.com>
3676         * manual/message.texi (Advanced gettext functions): Change
3677         description of plural forms for Slovak.
3678         Reported by Marcel Telka <marcel@telka.sk>.
3680         * manuaL/time.texi (Low-Level Time String Parsing): Fix description of
3681         %z.  Reported by C. Scott Ananian <cananian@lesser-magoo.lcs.mit.edu>.
3683 2001-08-26  Jakub Jelinek  <jakub@redhat.com>
3685         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_lazy_rel): Fix a
3686         typo.  Patch by Florian La Roche <laroche@redhat.com>.
3688 2001-08-26  Ulrich Drepper  <drepper@redhat.com>
3690         * include/link.h (struct link_map): Add l_lookup_cache element.
3691         * elf/dl-reloc.c (RESOLVE): Add symbol caching here.
3692         (RESOLVE_MAP): Likewise.
3693         (_dl_relocate_object): Remove cache initialization.
3694         * elf/dl-lookup.c: Rip out cache handling code.
3695         * sysdeps/generic/ldsodefs.h: Remove lookup_cache struct and variable
3696         declarations.
3698         * elf/dl-lookup.c (_dl_lookup_symbol): Reorder some conditions and
3699         remove some __builtin_expect.
3700         (_dl_lookup_versioned_symbol): Likewise.
3702         * config.h.in: Add HAVE_Z_COMBRELOC.
3703         * configure.in: Add test for -z combreloc.
3705         * sysdeps/i386/dl-machine.h (elf_machine_rel): Minor cleanups and
3706         optimizations.  Use HAVE_Z_COMBRELOC to avoid generaton of
3707         R_386_RELATIVE handling for ld.so startup.  Reduce RTLD_BOOTSTRAP
3708         case to almost no code.
3710 2001-08-25  Ulrich Drepper  <drepper@redhat.com>
3712         * po/tr.po: Update from translation team.
3714 2001-08-24  Andreas Jaeger  <aj@suse.de>
3716         * iconv/Makefile (extra-objs): Add iconvconfig-modules so that
3717         make clean works.
3719 2001-08-24  Ulrich Drepper  <drepper@redhat.com>
3721         * elf/rtld.c (print_statistics): Printf % after percent values.
3722         * elf/dl-misc.c (_dl_debug_vdprintf): Implement %%.
3724         * elf/dl-lookup.c (_dl_lookup_symbol): If we use the cache we
3725         don't have to compute the hash value and initialize current_value.
3726         Move reference_name variable to where it is needed.
3727         (_dl_lookup_versioned_symbol): Likewise.
3729 2001-08-24  Roland McGrath  <roland@frob.com>
3731         * string/tester.c (test_strerror): Don't use _sys_errlist/_sys_nerr.
3732         Just test that strerror returns non-null for a few errno codes.
3734 2001-08-23  Roland McGrath  <roland@frob.com>
3736         * hurd/Versions (libc: GLIBC_2.2.5): New set; add _hurd_raise_signal,
3737         _hurdsig_interrupt_timeout, _hurdsig_fault_preemptor.
3739         * sysdeps/posix/shm_unlink.c (shm_unlink): __unlink -> unlink.
3741         * mach/Versions (libc: GLIBC_2.2.5): New set; add __mach_msg_destroy,
3742         __mach_reply_port.
3744 2001-08-24  Ulrich Drepper  <drepper@redhat.com>
3746         * nss/test-netdb.c (test_hosts): Don't segfault if gethostname
3747         returns NULL.
3749         * elf/do-rel.h (elf_dynamic_do_rel): Fix problem with ld.so
3750         startup.  Explicitly remove lazy part for RTLD_BOOTSTRAP since gcc
3751         doesn't do it.
3752         * elf/rtld.c: Include <sys/param.h>.
3753         * elf/dl-reloc.c: Likewise.
3755 2001-08-24  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
3757         * sysdeps/unix/sysv/linux/mips/configure.in: Define AC_SUBST to
3758         empty to prevent junk from being generated.
3759         * sysdeps/unix/sysv/linux/mips/configure: Regenerated.
3761 2001-08-24  Jakub Jelinek  <jakub@redhat.com>
3763         * elf/do-rel.h (elf_dynamic_do_rel): If l_addr is 0, skip relative
3764         records.  Rename endrel to relative, initialize it to r, and use it
3765         in elf_machine_rel_relative calls.  Point r after relative relocs.
3767 2001-08-24  Ulrich Drepper  <drepper@redhat.com>
3769         * sysdeps/i386/dl-machine.h (elf_machine_rel): Correct prediction
3770         of R_386_NONE.
3772 2001-08-24  Jakub Jelinek  <jakub@redhat.com>
3774         * elf/do-rel.h (elf_machine_rel_relative): Define for rela if
3775         necessary.  Undefine newly defined macros at the end.
3776         * sysdeps/hppa/dl-machine.h (elf_machine_rela_relative):
3777         Rename from elf_machine_rel_relative.
3778         * sysdeps/cris/dl-machine.h (elf_machine_rela_relative): Likewise.
3779         * sysdeps/m68k/dl-machine.h (elf_machine_rela_relative): Likewise.
3780         * sysdeps/powerpc/dl-machine.h (elf_machine_rela_relative): Likewise.
3781         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela_relative):
3782         Likewise.
3783         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela_relative):
3784         Likewise.
3785         * sysdeps/ia64/dl-machine.h (elf_machine_rela_relative): Likewise.
3786         Fix argument types.
3787         * sysdeps/alpha/dl-machine.h (elf_machine_rela_relative): Likewise.
3788         Fix argument types.
3789         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela_relative):
3790         Likewise.  Fix argument types.
3791         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela_relative):
3792         Likewise.  Fix argument types.
3793         * sysdeps/sh/dl-machine.h (elf_machine_rela_relative): Likewise.
3794         Fix argument types.
3795         * sysdeps/mips/dl-machine.h (elf_machine_rel_relative): Use
3796         ElfW(Rel) in argument.
3797         * sysdeps/mips/mips64/dl-machine.h (elf_machine_rel_relative): New
3798         function.
3800 2001-08-24  Alexandre Oliva  <aoliva@redhat.com>
3802         * sysdeps/sh/dl-machine.h (elf_machine_rela): Fix typo.
3804 2001-08-24  Andreas Jaeger  <aj@suse.de>
3806         * sysdeps/ieee754/ldbl-128/e_j1l.c: New file, contributed by
3807         Stephen L Moshier <moshier@mediaone.net>.
3809 2001-08-24  Ulrich Drepper  <drepper@redhat.com>
3811         * elf/do-rel.h (elf_dynamic_do_rel): RELATIVE relocations comes
3812         first if RELCOUNT is set.
3814         * elf/do-rel.h (elf_dynamic_do_rel): If not relocating lazily, don't
3815         call elf_machine_rel for the last DT_RELCOUNT relocations but instead
3816         elf_machine_rel_relative.
3817         * sysdeps/alpha/dl-machine.h: Define elf_machine_rel_relative.
3818         Minor optimizations.
3819         * sysdeps/arm/dl-machine.h: Likewise.
3820         * sysdeps/cris/dl-machine.h: Likewise.
3821         * sysdeps/hppa/dl-machine.h: Likewise.
3822         * sysdeps/i386/dl-machine.h: Likewise.
3823         * sysdeps/ia64/dl-machine.h: Likewise.
3824         * sysdeps/m68k/dl-machine.h: Likewise.
3825         * sysdeps/mips/dl-machine.h: Likewise.
3826         * sysdeps/powerpc/dl-machine.h: Likewise.
3827         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
3828         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
3829         * sysdeps/sh/dl-machine.h: Likewise.
3830         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
3831         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
3833 2001-08-23  Roland McGrath  <roland@frob.com>
3835         * rt/tst-aio4.c [! SIGRTMIN] (SIGRTMIN, SIGRTMAX): Define as -1.
3837         * sysdeps/mach/hurd/bits/libc-lock.h: New file, initially copied from
3838         sysdeps/mach version.  Implement counting ("recursive") mutexes
3839         on top of cthreads mutexes.
3840         * sysdeps/mach/hurd/bits/stdio-lock.h: File removed; generic now works.
3842         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_initializer): Define to
3843         _LIBC_LOCK_RECURSIVE_INITIALIZER if defined, else do an #error.
3844         (__libc_cleanup_region_start, __libc_cleanup_region_end,
3845         __libc_clean_end): Define these to call the cleanup function after
3846         normal exit when they're supposed to.
3848         * sysdeps/mach/bits/libc-lock.h (__libc_cleanup_region_start):
3849         Take new first arg DOIT, a boolean saying whether to really install
3850         any cleanup handler.
3851         (__libc_cleanup_region_end): Do nothing if start's DOIT arg was zero.
3852         (__libc_cleanup_end): Likewise.
3853         * sysdeps/generic/bits/libc-lock.h: Same changes.
3854         * stdio-common/vfscanf.c (LOCK_STREAM): Pass new arg.
3855         * stdio-common/vfprintf.c (buffered_vfprintf, vfprintf): Likewise.
3856         * sysdeps/mach/hurd/bits/stdio-lock.h (_IO_cleanup_region_start):
3857         Likewise.
3858         * misc/syslog.c (vsyslog, openlog, closelog): Likewise.
3859         * sysdeps/generic/bits/stdio-lock.h
3860         (_IO_cleanup_region_start, _IO_cleanup_region_start_noarg): Likewise.
3862 2001-08-23  Jakub Jelinek  <jakub@redhat.com>
3864         * elf/ldconfig.c (search_dir): Remove stale symlinks.
3866 2001-08-23  Jakub Jelinek  <jakub@redhat.com>
3868         * elf/dl-lookup.c (lookup_cache, lookup_cache_versioned): New.
3869         (_dl_lookup_symbol): Lookup relocations in cache and store successfull
3870         lookups in cache.
3871         (_dl_lookup_versioned_symbol): Likewise.
3872         * elf/dl-reloc.c (_dl_relocate_object): Initialize cache for
3873         relocation lookup.
3874         * elf/rtld.c (print_statistics): Output _dl_num_cache_relocations.
3875         * sysdeps/generic/ldsodefs.h (struct lookup_cache): New definition.
3876         (lookup_cache, lookup_cache_versioned): Add declarations.
3878 2001-08-23  Ulrich Drepper  <drepper@redhat.com>
3880         * stdlib/tst-random.c (main): Swap parameters in fail call.
3881         Patch by Pete Bevin <pete@petebevin.com>.
3883 2001-08-23  Jakub Jelinek  <jakub@redhat.com>
3885         * sysdeps/generic/inttypes.h: Use __gwchar_t instead of __wchar_t.
3887 2001-08-23  Ulrich Drepper  <drepper@redhat.com>
3889         * malloc/obstack.c: Indent preprocessor directives.
3890         Patch by Jim Meyering <meyering@ascend.com>.
3892         * po/ja.po: Update from translation team.
3894 2001-08-23  Roland McGrath  <roland@frob.com>
3896         * libio/tst-ungetwc1.c (main): Add a const to quiet a warning.
3898         * nss/test-netdb.c (test_hosts): Don't use MAXHOSTNAMELEN.
3899         Instead, use dynamic buffer to test gethostname's ENAMETOOLONG error.
3901 2001-08-22  Roland McGrath  <roland@frob.com>
3903         * sysdeps/generic/ldsodefs.h (_dl_load_lock): Declare it here with
3904         __libc_lock_define_recursive.
3905         * elf/dl-open.c: Don't declare it here any more.
3906         * elf/dl-close.c: Likewise.
3907         * elf/dl-lookup.c: Likewise.
3908         * elf/dl-iteratephdr.c: Likewise.
3909         * elf/dl-lookup.c (add_dependency): Use __libc_lock_lock_recursive and
3910         __libc_lock_unlock_recursive.
3911         * elf/dl-close.c (_dl_close): Likewise
3912         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise
3913         * elf/dl-open.c (_dl_open): Likewise
3915         * sysdeps/generic/bits/libc-lock.h
3916         (__libc_lock_define_recursive): New macro.
3917         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_t): Use it.
3918         (_IO_lock_lock): Use __libc_lock_lock_recursive.
3919         (_IO_lock_unlock): Use __libc_lock_unlock_recursive.
3921         * conform/conformtest.pl (checknamespace): Sort the output list.
3923         * sysdeps/generic/bits/poll.h (POLLWRBAND): New alias for POLLOUT.
3924         (POLLRDNORM, POLLRDBAND, POLLWRNORM, POLLWRBAND): Make these
3925         definitions conditional on [__USE_XOPEN].
3927         * sysdeps/mach/hurd/bits/fcntl.h (O_ASYNC, O_FSYNC, O_SYNC): Define
3928         these unconditionally, not only use [__USE_BSD], so as to match
3929         the sysdeps/unix/sysv/linux files.
3931 2001-08-22  Ulrich Drepper  <drepper@redhat.com>
3933         * test-skeleton.c (add_temp_file): Add __attribute__ ((unused)) to
3934         avoid warnings.
3936         * dlfcn/tst-dladdr.c (do_test): Get address of ref1 using
3937         DL_LOOKUP_ADDRESS.
3939 2001-08-22  Roland McGrath  <roland@frob.com>
3941         * sysdeps/generic/bits/sigaction.h (struct sigaction): Fix up
3942         conditionalization of sa_handler/sa_sigaction member types to
3943         match the sysdeps/unix/sysv/linux file.
3945 2001-08-22  Ulrich Drepper  <drepper@redhat.com>
3947         * elf/dl-addr.c (_dl_addr): Handle broken binaries with zero
3948         symbol sizes a bit better.
3950         * sysdeps/ia64/strncpy.S: Complete rewrite.
3951         Contributed by Jakub Jelinek <jakub@redhat.com>.
3953         * string/stratcliff.c (main): Add strncpy test.
3955 2001-08-22  Roland McGrath  <roland@frob.com>
3957         * sysdeps/generic/dl-environ.c: Include <stdlib.h> and <unistd.h>,
3958         and don't declare unsetenv or _environ directly.
3959         (unsetenv): Return int, not void.  Use __environ instead of _environ.
3961 2001-08-01  Mark Kettenis  <kettenis@gnu.org>
3963         * sysdeps/unix/bsd/bsd4.4/Makefile: New file.
3964         * sysdeps/unix/bsd/bsd4.4/Versions: New file.
3965         * sysdeps/unix/bsd/bsd4.4/cmsg_nxthdr.c: New file.
3966         * sysdeps/unix/bsd/bsd4.4/bits/socket.h (__cmsg_nxthdr): Correct
3967         test for cmsg struct size.
3969 2001-04-23  Paul Eggert  <eggert@twinsun.com>
3971         * posix/getopt.h (getopt_long, getopt_long_only, _getopt_internal):
3972         Rename __argc to ___argc in prototypes to avoid compatibility
3973         problems with systems that reserve the identifier "__argc".
3974         Similarly for __argv.
3976 2001-08-21  Roland McGrath  <roland@frob.com>
3978         * stdio-common/tst-fseek.c: Include <time.h> for `time' declaration.
3980         * mach/Makefile (tests): Removed.
3981         * mach/hello.c: File removed.
3983 2001-08-22  Ulrich Drepper  <drepper@redhat.com>
3985         * po/sv.po: Update from translation team.
3987         * stdio-common/vfscanf.c: Fix handling of %l[].
3988         Reported by Mitsuru Chinen <mchinen@yamato.ibm.com>.
3990         * libio/Makefile (tests): Add tst-sscanf.
3991         * libio/tst-sscanf.c: New file.
3993         * elf/dl-addr.c (_dl_addr): Fix tests to determine dli_sname.
3994         * malloc/mtrace.c (tr_where): dli_sname always points to a
3995         non-empty string if != NULL.
3996         Reported by Tim Janik <timj@gtk.org>.
3998 2001-08-22  Jakub Jelinek  <jakub@redhat.com>
4000         * sunrpc/xdr_rec.c (xdrrec_create): Fix buf sizes before allocating
4001         buf.  Free resources on failure.
4002         * sunrpc/svc_unix.c (svcunix_create): Free resources on failure.
4003         (makefd_xprt): Likewise.
4004         * sunrpc/svc_udp.c (svcudp_bufcreate): Likewise.
4005         * sunrpc/svc_tcp.c (svctcp_create, makefd_xprt): Likewise.
4006         * sunrpc/auth_unix.c (authunix_create): Likewise.
4008 2001-08-21  Jakub Jelinek  <jakub@redhat.com>
4010         * string/strnlen.c: Remove.
4011         * sysdeps/generic/strnlen.c: New file.
4012         * sysdeps/i386/i486/bits/string.h (strnlen): Remove.
4014 2001-08-21  Roland McGrath  <roland@frob.com>
4016         * sysdeps/mach/i386/machine-sp.h (__thread_stack_pointer): Define this
4017         as a macro, not an extern inline function.
4019         * hurd/Versions (GLIBC_2.2.5): New set, define __hurd_fail here.
4020         * Versions.def (libc): Add GLIBC_2.2.5 set.
4021         * hurd/hurd.h (_HURD_H_EXTERN_INLINE): New macro.
4022         (__hurd_fail): Use that instead of _EXTERN_INLINE in decl.
4024 2001-08-20  Roland McGrath  <roland@frob.com>
4026         * hurd/hurdlookup.c (__hurd_file_name_lookup): Fail with ENOENT for "".
4027         (__hurd_file_name_split, __hurd_directory_name_split): Likewise.
4029 2001-08-21  Ulrich Drepper  <drepper@redhat.com>
4031         * string/bits/string2.h: Remove strnlen optimization here.
4032         * sysdeps/i386/i486/bits/string.h: Add it here.
4034 2001-08-21  Wolfram Gloger  <wg@malloc.de>
4036         * malloc/malloc.c: Make access to ..._hook pointers thread-safe.
4038 2001-08-21  Ulrich Drepper  <drepper@redhat.com>
4040         * po/gl.po: Update from translation team.
4042 2001-08-20  Ulrich Drepper  <drepper@redhat.com>
4044         * misc/error.c (error_tail): Use fputws_unlocked instead of fputws.
4045         * misc/err.c (convert_and_print): Likewise.
4047         * malloc/obstack.c (print_and_abort): Use fprintf instead of two
4048         function calls.
4050 2001-08-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4052         * sysdeps/unix/sysv/linux/s390/s390-32/sys/ucontext.h: Revert the
4053         change of the gregset_t type.
4054         * sysdeps/unix/sysv/linux/s390/s390-64/sys/ucontext.h: Likewise.
4056 2001-08-20  kaz Kojima  <kkojima@rr.iij4u.or.jp>
4058         * sysdeps/unix/sysv/linux/sh/sysdep.S: Align errno.
4060 2001-08-20  Ulrich Drepper  <drepper@redhat.com>
4062         * posix/regex.c (truncate_wchar): Use wcrtomb not wctomb.
4064         * string/strnlen.c: Fix the implementation.  We cannot use memchr.
4066 2001-08-18  Mark Kettenis  <kettenis@gnu.org>
4068         * sysdeps/mach/hurd/i386/init-first.c (init): Initialize __environ
4069         before calling the cthreads initialization code.
4071 2001-08-20  Ulrich Drepper  <drepper@redhat.com>
4073         * argp/argp-help.c: Fix two problems introduced in last change.
4075         * include/dirent.h: Include <dirstream.h> first.
4077 2001-08-19  Ulrich Drepper  <drepper@redhat.com>
4079         * io/fts.c (fts_safe_changedir): Use __fxstat64 instead of __fstat.
4081         * sunrpc/svcauth_des.c (_svcauth_des): Avoid using bcopy.
4082         * sunrpc/xdr_rec.c: Likewise.
4083         * sunrpc/xdr_mem.c: Likewise.
4084         * sunrpc/svc_authux.c (_svcauth_unix): Likewise.
4085         * sunrpc/rpc_cmsg.c: Likewise.
4086         * sunrpc/getrpcport.c (getrpcport): Likewise.
4087         * sunrpc/clnt_simp.c (callrpc): Likewise.
4088         * sunrpc/clnt_gen.c (clnt_create): Likewise.
4089         * string/envz.c: Likewise.
4091         * po/ko.po: Update from translation team.
4093         * argp/argp-help.c: Handle wide oriented stderr stream.
4095 2001-08-18  Ulrich Drepper  <drepper@redhat.com>
4097         * sysdeps/generic/strtol.c: Little optimizations.  Add some
4098         __builtin_expect.
4100         * conform/conformtest.pl: <inttypes.h> test requires <stddef.h>.
4102         * wcsmbs/wchar.h (wcwdith): Change parameter type to wchar_t.
4103         * wcsmbs/wcwidth.c (wcwdith): Likewise.
4104         * wcsmbs/wcwidth.h (internal_wcwdith): Likewise.
4106         * conform/data/unistd.h-data: Remove _SC_MULTIPLE_PROCESS.
4108         * conform/data/ucontext.h-data: Fix typos in ucontext_t element tests.
4110         * time/time.h (struct timespec): Use __time_t for tv_sec element.
4112         * sysdeps/generic/inttypes.h: Define __wchar_t.  Use it instead of
4113         wchar_t for function declarations and defintions.
4115         * misc/sys/select.h: Define __need_time_t before including <time.h>.
4116         Define suseconds_t if it hasn't happened yet.
4118         * iconv/gconv.h: Define __need_wchar_t before including <stddef.h>.
4120         * conform/data/sys/uio.h-data: Allow UIO_MAXIOV to be defined.
4122         * sysdeps/generic/stdint.h: Don't get definition of wchar_t from
4123         <stddef.h>.
4125         * conform/data/stddef.h-data: Remove wint_t.
4127         * conform/conformtest.pl: Change namespace test to take #undef
4128         lines into account.
4130         * conform/data/netinet/in.h-data: Fix typo in allow-header line.
4132         * conform/data/sys/socket.h-data: Add sockatmark.
4134 2001-08-17  Ulrich Drepper  <drepper@redhat.com>
4136         * io/fts.c: Update from recent BSD source.
4138 2001-08-17  Roland McGrath  <roland@frob.com>
4140         * stdio-common/perror.c (perror) [! USE_IN_LIBIO]: Don't use _IO_fwide.
4141         * misc/error.c (error_tail, error, error_at_line) [! USE_IN_LIBIO]:
4142         Likewise.
4144 2001-08-17  Ulrich Drepper  <drepper@redhat.com>
4146         * locale/duplocale.c (__duplocale): Also initialize the special
4147         __ctype_* elements.
4149         * conform/data/netdb.h-data: Adjust gai_strerror return type.
4151 2001-08-17  Andreas Jaeger  <aj@suse.de>
4153         * misc/getpass.c: Include wchar.h for prototypes.
4154         * malloc/obstack.c: Likewise.
4156 2001-08-17  Ulrich Drepper  <drepper@redhat.com>
4158         * sunrpc/svc_simple.c (universal): Use __write instead of write.
4160         * wcsmbs/wcscoll.c: Also define __wcscoll.
4161         * include/wchar.h: Declare __wcscoll.
4163         * libio/fwprintf.c: Use __vfwprintf instead of vfwprintf.
4164         * libio/vwprintf.c: Likewise.
4165         * libio/wprintf.c: Likewise.
4167         * iconv/gconv_cache.c: Use __munmap instead of munmap.
4169 2001-08-16  Ulrich Drepper  <drepper@redhat.com>
4171         * posix/regex.c [_LIBC] (convert_mbs_to_wcs): Use __mbrtowc
4172         instead of mbrtowc.
4173         [_LIBC]: Use __iswctype instead of iswctype, __wcslen instead of
4174         wcslen, and __wcscoll instead of wcscoll.
4176         * sysdeps/unix/sockatmark.c (sockatmark): Use __ioctl instead of ioctl.
4178         * sysdeps/unix/sysv/linux/gai_sigqueue.c (__gai_sigqueue): Use
4179         __getuid instead of getuid.
4181         * stdio-common/perror.c (perror): Use __close instead of close.
4182         * iconv/gconv_cache.c (__gconv_load_cache): Likewise.
4183         * libio/freopen.c (freopen): Likewise.
4184         * libio/freopen64.c (freopen64): Likewise.
4186         * libio/tst-ungetwc2.c (main): Define str const.
4188         * include/wchar.h: Add prototypes for __fwprintf and __vfwprintf.
4189         * libio/fwprintf.c: Also define __fwprintf.
4190         * stdio-common/vfprintf.c [COMPILE_WPRINTF]: Also define __vfwprintf.
4191         * argp/argp-fmtstream.c: Handle wide oriented stderr stream.
4192         * assert/assert-perr.c: Likewise.
4193         * assert/assert.c: Likewise.
4194         * gmon/gmon.c: Likewise.
4195         * inet/rcmd.c: Likewise.
4196         * malloc/obstack.c: Likewise.
4197         * misc/err.c: Likewise.
4198         * misc/error.c: Likewise.
4199         * misc/getpass.c: Likewise.
4200         * posix/getopt.c: Likewise.
4201         * resolv/res_hconf.c: Likewise.
4202         * stdio-common/perror.c: Likewise.
4203         * stdio-common/psignal.c: Likewise.
4204         * stdlib/fmtmsg.c: Likewise.
4205         * sunrpc/auth_unix.c: Likewise.
4206         * sunrpc/clnt_perr.c: Likewise.
4207         * sunrpc/clnt_tcp.c: Likewise.
4208         * sunrpc/clnt_udp.c: Likewise.
4209         * sunrpc/clnt_unix.c: Likewise.
4210         * sunrpc/svc_simple.c: Likewise.
4211         * sunrpc/svc_tcp.c: Likewise.
4212         * sunrpc/svc_udp.c: Likewise.
4213         * sunrpc/svc_unix.c: Likewise.
4214         * sunrpc/xdr.c: Likewise.
4215         * sunrpc/xdr_array.c: Likewise.
4216         * sunrpc/xdr_rec.c: Likewise.
4217         * sunrpc/xdr_ref.c: Likewise.
4218         * sysdeps/generic/wordexp.c: Likewise.
4220         * po/it.po: Update from translation team.
4222         * misc/err.c: Handle wide oriented stderr stream.
4224 2001-08-14  Tom Rix  <trix@redhat.com>
4226         * iconv/gconv_cache.c (find_module): Add #ifndef STATIC_GCONV.
4227         * iconv/Makefile: Fix gconv_cache.c CFLAGS.
4229 2001-08-13  Tom Rix  <trix@redhat.com>
4231         * sysdeps/unix/sysv/aix/Makefile: Add rule to import kernel symbols.
4232         * sysdeps/unix/sysv/aix/bits/types.h: Fix type of __id_t, __useconds_t
4233         and __intptr_t.
4235 2001-08-15  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4237         * sysdeps/unix/sysv/linux/s390/s390-32/getcontext.S (__getcontext):
4238         Store the access registers to the ucontext structure.
4239         * sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S (__getcontext):
4240         Likewise.
4242         * sysdeps/unix/sysv/linux/s390/s390-32/setcontext.S (__setcontext):
4243         Load the access registers from the ucontext structure.
4244         * sysdeps/unix/sysv/linux/s390/s390-64/setcontext.S (__setcontext):
4245         Likewise.
4247         * sysdeps/unix/sysv/linux/s390/s390-32/ucontext_i.h: Adjust the SC_xxx
4248         offsets to the new ucontext layout.
4249         * sysdeps/unix/sysv/linux/s390/s390-64/ucontext_i.h: Likewise.
4251         * sysdeps/unix/sysv/linux/s390/s390-32/sys/ucontext.h: Fix the layout
4252         of the ucontext structure.
4253         * sysdeps/unix/sysv/linux/s390/s390-64/sys/ucontext.h: Likewise.
4255 2001-08-15  Ulrich Drepper  <drepper@redhat.com>
4257         * misc/error.c (error): Handle wide oriented stderr stream correctly.
4258         (error_at_line): Likewise.
4260         * stdio-common/perror.c (perror): Implement according to standard.
4261         The stream orientation must not be changed if the stream was not
4262         oriented before the call.
4263         * stdio-common/Makefile (tests): Add tst-perror.
4264         * stdio-common/tst-perror.c: New file.
4267 See ChangeLog.12 for earlier changes.