Update.
[glibc.git] / ChangeLog
blob41d839c8b41cd3134d47c0a7e218c281a3c08478
1 2002-02-22  Ulrich Drepper  <drepper@redhat.com>
3         * elf/Versions: Add _dl_allocate_tls and _dl_deallocate_tls.
4         * elf/rtld.c (dl_main): Use _dl_allocate_tls with INTUSE.
5         * sysdeps/generic/dl-tls.c: Add INTDEF for _dl_allocate_tls.
6         (_dl_deallocate_tls): New function.
7         * sysdeps/generic/ldsodefs.h: Declare _dl_allocate_tls_internal and
8         _dl_deallocate_tls.
10 2002-02-21  Jakub Jelinek  <jakub@redhat.com>
12         * libio/fileops.c (_IO_file_seekoff_mmap): Fix fseek SEEK_END.
13         * stdio-common/tst-fseek.c (main): Add test for this.
15 2002-02-19  Ulrich Drepper  <drepper@redhat.com.>
17         * stdlib/Versions: Move __on_exit to GLIBC_PRIVATE.
19 2002-02-19  Jakub Jelinek  <jakub@redhat.com>
21         * libio/fileops.c (_IO_file_underflow_mmap): Cast to unsigned char
22         pointer before dereferencing.
24 2002-02-18  Roland McGrath  <roland@frob.com>
26         * sysdeps/mach/hurd/times.c: Fix typo in last change.
28         * sysdeps/mach/hurd/setpriority.c [POLICY_TIMESHARE_BASE_COUNT]:
29         Use task_policy in place of task_priority.
31         * sysdeps/generic/bits/mman.h
32         (MS_ASYNC, MS_SYNC, MS_INVALIDATE): New macros.
33         * sysdeps/mach/msync.c: New file.
35         * sysdeps/mach/powerpc/syscall.S: New file.
37         * mach/msg.c [MACH_MSG_OVERWRITE]
38         (__mach_msg_trap, __mach_msg_overwrite): New functions.
39         * mach/Versions (libc: GLIBC_2.0): Add mach_msg_overwrite and __ name.
41         * sysdeps/mach/configure.in: Check for clock.defs to put into
42         mach_interface_list.
43         * sysdeps/mach/configure: Regenerated.
45         * mach/Makefile (mach-machine): New variable, set from $(base-machine).
46         ($(objpfx)mach-syscalls.mk): Use it in place of $(base-machine).
47         ($(mach-syscalls:%=$(objpfx)%.S) static pattern rule):
48         Use <mach/machine/syscall_sw.h> instead of <sysdep.h>.
49         (mach-shortcuts): Add device_read_overwrite_request,
50         device_read_overwrite, vm_read_overwrite, thread_switch.
52         * configure.in (base_machine): Set to $machine by default.
53         * configure: Regenerated.
55         * sysdeps/mach/configure.in: Check for <mach/machine/ndr_def.h>
56         or <machine/ndr_def.h> and add -DNDR_DEF_HEADER=... to DEFINES.
57         * sysdeps/mach/configure: Regenerated.
58         * mach/mach_init.c [NDR_DEF_HEADER]: #include it.
60         * hurd/hurdfault.c (_hurdsig_fault_init): Add a cast.
62         * hurd/hurd/signal.h: Include <setjmp.h> for `jmp_buf' decl.
64         * mach/msgserver.c (__mach_msg_server_timeout) [! MACH_RCV_LARGE]:
65         Double MAX_SIZE and don't retry on MACH_RCV_TOO_LARGE.
67 2002-02-17  Roland McGrath  <roland@frob.com>
69         * sysdeps/mach/hurd/times.c
70         [NO_CREATION_TIME] (startup_time): New static variable.
71         [NO_CREATION_TIME] (times_init): New static function in __libc_subinit.
72         (__times) [NO_CREATION_TIME]: Use startup_time in lieu of task
73         creation_time from task_basic_info.
74         (__times): Use __gettimeofday instead of __host_get_time.
76         * hurd/intr-msg.c (_hurd_intr_rpc_mach_msg) [! MACH_MSG_TYPE_BIT]:
77         Use untyped Mach IPC message format.
79         * hurd/catch-exc.c: Include <assert.h>, missing from last change.
81         * hurd/Versions (libc: GLIBC_2.0): Add _S_catch_exception_raise_state,
82         _S_catch_exception_raise_state_identity,
83         _hurdsig_fault_catch_exception_raise_state,
84         _hurdsig_fault_catch_exception_raise_state_identity.
86         * mach/shortcut.awk: Don't apply the /^}$/ rule when $proto == "".
88         * sysdeps/mach/getsysstats.c (__get_avphys_pages) [HOST_VM_INFO]: Use
89         __host_info with HOST_VM_INFO flavor instead of __vm_statistics.
91         * sysdeps/mach/hurd/getpriority.c [TASK_SCHED_TIMESHARE_INFO]: Find
92         `base_priority' in PIP->timeshare_base_info instead of PIP->taskinfo.
94         * sysdeps/mach/hurd/dl-sysdep.c [FMH]: Define for i386 only.
95         (fmh, unfmh): Define these functions only #if FMH.  Otherwise define
96         them as no-op macros.
97         [FMH] (ELF_MACHINE_USER_ADDRESS_MASK): Redefine it to zero.
98         (__mmap): Uncomment uses of ELF_MACHINE_USER_ADDRESS_MASK.
100         * sysdeps/powerpc/dl-machine.h
101         (ELF_MACHINE_USER_ADDRESS_MASK): New macro.
103         * hurd/hurdselect.c (_hurd_select) [MACH_MSG_TRAILER_MINIMUM_SIZE]:
104         Use untyped Mach IPC message format.
106         * sysdeps/mach/hurd/ioctl.c (__ioctl) [! MACH_MSG_TYPE_BIT]:
107         Handle untyped Mach IPC message formats.
109         * hurd/catch-exc.c (_S_catch_exception_raise) [EXC_MASK_ALL]:
110         Expect different argument conventions when this is defined.
111         [EXC_MASK_ALL] (_S_catch_exception_raise_state): New stub function.
112         [EXC_MASK_ALL] (_S_catch_exception_raise_state_identity): Likewise.
113         * hurd/hurdfault.c: Likewise for _hurdsig_fault_catch_exception_*.
114         [NDR_CHAR_ASCII] (mig_reply_header_t): #define as mig_reply_error_t
115         for OSF Mach variant.
116         (faulted): Use mig_reply_error_t for REPLY.
117         (_hurdsig_fault_init) [EXC_MASK_ALL]: Use EXCEPTION_STATE_IDENTITY
118         in __thread_set_exception_ports call.
119         (_hurdsig_fault_init) [MACH_PORT_RECEIVE_STATUS]: Use
120         __mach_port_set_attributes in place of __mach_port_set_qlimit.
122         * sysdeps/mach/powerpc/sysdep.h (_MACH_MACHINE_ASM_H): Define this
123         before include <sysdeps/mach/sysdep.h>, to inhibit <mach/machine/asm.h>
124         on Darwin, which includes bogons.
126         * sysdeps/powerpc/dl-machine.h (elf_machine_rela): Move local
127         variable LOADBASE so it's not declared when it's not used.
129 2002-02-16  Roland McGrath  <roland@frob.com>
131         * sysdeps/mach/hurd/times.c (__times) [NO_CREATION_TIME]: Don't try
132         to use BI.creation_time.
134         * mach/Machrules (MIG): Add -x c to CPP value passed down.
136         * config.h.in: Add #undef HAVE_HOST_PAGE_SIZE.
137         * sysdeps/mach/configure.in: Check for host_page_size RPC to define it.
138         * mach/mach_init.c (__mach_init) [HAVE_HOST_PAGE_SIZE]: Use
139         host_page_size instead of vm_statistics.
141         * sysdeps/mach/Makefile (mach-before-compile): Don't include
142         mach_interface.h here, since not all variants use that name.
144         * sysdeps/mach/configure.in: Add some checks for Mach headers
145         to ensure a sane installation.
146         (mach_interface_list): Define this variable by checking for .defs
147         files found in various variants.
148         * configure.in (mach_interface_list): AC_SUBST this.
149         * config.make.in (mach-interface-list): New substituted variable.
150         * mach/Makefile (user-interfaces): Define this using the value
151         of $(mach-interface-list) instead of mach, mach4.
152         Updated other references to mach_interface to use it as well.
154         * sysdeps/mach/powerpc/machine-lock.h: Avoid multi-line strings.
156         * mach/msgserver.c [NDR_CHAR_ASCII] (mig_reply_header_t): #define as
157         mig_reply_error_t for OSF Mach variant.
159         * mach/Makefile (routines): Remove bootprivport.
160         * mach/bootprivport.c: File removed.  It has never been used.
162         * mach/msg-destroy.c (__mach_msg_destroy) [MACH_MSG_PORT_DESCRIPTOR]:
163         Grok the OSF flavor of message format.
164         (mach_msg_destroy_port): For MAKE_SEND and
165         MAKE_SEND_ONCE rights, create an destroy a right to ensure proper
166         no-senders notification.
168 2002-02-06  Roland McGrath  <roland@frob.com>
170         * hurd/Versions (libc: GLIBC_2.0): Move cthread_fork, cthread_detach
171         to here if 2.0 compatibility enabled ...
172         (libc: GLIBC_2.1.3): ... from here.
174 2002-02-15  Ulrich Drepper  <drepper@redhat.com>
176         * elf/dl-open.c (dl_open_worker): Catch wrap-around of TLS
177         generation counter.
178         * elf/dl-close.c (_dl_close): Likewise.
180 2002-02-14  Ulrich Drepper  <drepper@redhat.com>
182         * elf/Makefile: Add rules to build and run tst-tls8.
183         * elf/tst-tls8.c: New file.
184         * elf/tst-tlsmod4.c: New file.
186         * stdlib/test-a64l.c (tests): Add more test cases.
188         * sunrpc/rtime.c (rtime): Change type of thetime to uint32_t.
189         Reported by Walter Harms <WHarms@bfs.de>.
191 2002-02-11  Jes Sorensen  <jes@trained-monkey.org>
193         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Add sc_flag bit
194         definitions for struct sigcontext.
195         Suggested by David Mosberger-Tang.
197 2002-02-13  Ulrich Drepper  <drepper@redhat.com>
199         * elf/dl-close.c (remove_slotinfo): New function.  Handles everything
200         for removing reference of module in slotinfo list.
201         (_dl_close): Use remove_slotinfo.
202         * sysdeps/generic/dl-tls.c: General pretty printing.
203         (oom): Define only if SHARED.
204         (_dl_next_tls_modid): Correct starting point for the case we assume
205         there is a gap.  Add missing instruction grouping (doh!).  Correct
206         tests for reaching maximum index.
207         * elf/Makefile: Add rules to build and run tst-tls7.
208         * elf/tst-tls7.c: New file.
209         * elf/tst-tlsmod3.c: New file.
211         * elf/tst-tlsmod1.c: Move #include "tls-macros.h" instead #ifdef
212         USE_TLS.
213         * elf/tst-tlsmod2.c: Likewise.
215         * elf/dl-close.c (_dl_close): When closing an object using TLS
216         either decrement dl_tls_max_dtv_idx or set dl_tls_dtv_gaps to
217         true.  Increment dl_tls_generation only if we closed any TLS-using
218         object.
219         * elf/tst-tls6.c: New file.
220         * elf/Makefile: Add rules to build and run tst-tls6.
222         * po/da.po: Update from translation team.
224         * locale/categories.def: Fix typo [PR libc/2948].
225         * po/Makefile (BROKEN_LINGUAS): Works with current gettext
226         [PR libc/2949].
227         * locale/iso-4217.def: Update from official version [PR libc/2950].
228         * glibcbug.in: Honor TMPDIR [PR libc/2951].
229         * locale/programs/ld-collate.c (collate_finish): Bail out with a
230         message if input is too confusion instead of using assert.
231         (collate_read): Don't crash on unknown symbol [PR libc/2952].
232         Patches by Alastair McKinstry <alastair@pdd.3com.com>.
234         * elf/tst-tls1.c: Move #include "tls-macros.h" instead #ifdef USE_TLS.
235         * elf/tst-tls2.c: Likewise.
236         * elf/tst-tls3.c: Likewise.
238 2002-02-13  Jakub Jelinek  <jakub@redhat.com>
240         * elf/dl-close.c (free_slotinfo): Only define if TLS supported.
242 2002-02-13  Ulrich Drepper  <drepper@redhat.com>
244         * elf/dl-open.c (dl_open_worker): Only bump the generation counter
245         if this is really necessary.
247         * elf/dl-close.c (_dl_close): Implement freeing entries in the
248         slotinfo array.
249         (free_mem): Free memory for the slotinfo array if possible.
251 2002-02-12  Andreas Schwab  <schwab@suse.de>
253         * csu/gmon-start.c (__gmon_start__): Remove '&' from ENTRY_POINT.
255 2002-02-12  Ulrich Drepper  <drepper@redhat.com>
257         * sysdeps/generic/dl-tls.c (TLS_DTV_UNALLOCATED): Renamed from
258         TLS_DTV_UNALLOCATE.
259         (oom): New function.
260         (_dl_next_tls_modid): Rewrite to handle dl_tls_dtv_slotinfo_list.
261         (_dl_determine_tlsoffset): Likewise.
262         (_dl_allocate_tls): Likewise.
263         (__TLS_GET_ADDR): Define if not already defined.
264         (_dl_tls_symaddr): New function.
265         (allocate_and_init): New function.
266         (__tls_get_addr): Actually implement handling of generation counter
267         and deferred allocation.
268         * sysdeps/generic/ldsodefs.h (_rtld_global): Remove _dl_initimage_list,
269         add _dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and
270         _dl_tls_generation.
271         Define TLS_SLOTINFO_SURPLUS and DTV_SURPLUS.
272         Declare _dl_tls_symaddr.
273         * sysdeps/i386/dl-tls.h: Disable __tls_get_addr handling unless
274         SHARED.
275         * include/link.h (struct link_map):  Remove l_tls_nextimage and
276         l_tls_previmage.
277         * elf/dl-sym.c (_dl_sym): After successful lookup call _dl_tls_symaddr
278         instead of DL_SYMBOL_ADDRESS for STT_TLS symbols.
279         (_dl_vsym): Likewise.
280         * elf/rtld.c (_dl_start_final): Adjust initdtv initialization for new
281         layout.
282         (dl_main): Allow PT_TLS be present for empty segment.  Remove
283         nextimage list handling.  Instead add all modules using TLS to
284         dl_tls_dtv_slotinfo_list.
285         * elf/dl-open.c (dl_open_worker): After successfully loading all
286         objects add those with TLS to the dl_tls_dtv_slotinfo_list list.
287         * elf/dl-load.c (_dl_map_object_from_fd): If PT_TLS entry is for an
288         empty segment don't do anything.  Remove handling of initimage list.
289         * elf/Versions [ld] (GLIBC_2.0): Add __libc_memalign.
290         (GLIBC_PRIVATE): Add _dl_tls_symaddr.
291         * elf/dl-minimal.c: Define __libc_memalign.
292         * elf/dl-support.c: Remove _dl_initimage_list.  Add
293         _dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and
294         _dl_tls_generation.
295         * include/stdlib.h: Declare __libc_memalign.
297         * elf/Makefile: Add rules to build and run tst-tls4 and tst-tls5.
298         * elf/tst-tls4.c: New file.
299         * elf/tst-tls5.c: New file.
300         * elf/tst-tlsmod2.c: New file.
302         * elf/tls-macros.h: asms using ___tls_get_addr destroy %ecx and %edx.
304         * elf/tst-tlsmod1.c: Don't define variables unles USE_TLS.
306         * elf/tst-tls1.c: Use test-skeleton.c.
307         * elf/tst-tls2.c: Likewise.
308         * elf/tst-tls3.c: Likewise.
310         * elf/dl-conflict.c (RESOLVE_MAP): Return NULL not 0.
312 2002-02-08  Daniel Jacobowitz  <drow@mvista.com>
314         * sysdeps/mips/machine-gmon.h: Update MCOUNT for current GCC behavior.
316 2002-02-10  Ulrich Drepper  <drepper@redhat.com>
318         * elf/elf.h: Define R_386_TLS_GD and R_386_TLS_LDM.
320         * elf/tst-tls3.c: New file.
321         * elf/tst-tlsmod1.c: New file.
322         * elf/Makefile: Add rules to build and run tst-tls3.
324         * sysdeps/i386/dl-machine.h: Include <tls.h>.
325         (elf_machine_type_class): Set ELF_RTYPE_CLASS_PLT also for the three
326         TLS relocations.
328         * elf/do-lookup.h (FCT): st_value can be zero for STT_TLS symbols.
330         * po/fr.po: Update from translation team.
332         * elf/tls-macros.h: Add alternative macros for use in PIC.
334         * elf/dl-lookup.c: Include <tls.h>.
335         * elf/do-lookup.h (FCT): Don't discard STT_TLS symbols.
337         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): More changes
338         required by passing pointer to last element of the list.
340         * elf/dl-load.c (_dl_map_object_from_fd): Move adjustment of
341         l_tls_initimage to a place where it actually is performed.
343         * sysdeps/generic/glob.c (glob): Explicitly set gl_pathc to zero
344         after globfree() calls.
346         * elf/dl-deps.c (struct openaux_args): Add open_mode element.
347         (openaux): Pass open_mode as new last argument to _dl_map_object.
348         (_dl_map_object_deps): Add new argument open_mode.  Initialize
349         open_mode element of args variable with it.
350         * elf/dl-open.c (dl_open_worker): Pass __RTLD_DLOPEN flag is set to
351         _dl_map_object_deps.
352         * elf/rtld.c (dl_main): Add zero as last parameter to
353         _dl_map_object_deps call.
354         * sysdeps/generic/ldsodefs.h: Adjust prototype of _dl_map_object_deps.
355         * elf/nodlopen2.c: New file.
356         * elf/nodlopenmod2.c: New file.
357         * elf/Makefile: Add rules to build and run nodlopen2.
359         * elf/tst-tls1.c: Move TLS helper macros to...
360         * elf/tls-macros.h: ...here.  New file.
361         * elf/tst-tls2.c: New file.
362         * elf/Makefile (tests): Add tst-tls2.
363         (distribute): Add tls-macros.h.
365         * po/sv.po: Update from translation team.
367         * elf/tst-tls1.c (main): Add complete set of tests.  Split
368         architecture specific definitions from the actual test code.
370         * po/tr.po: Update from translation team.
372 2002-02-09  Ulrich Drepper  <drepper@redhat.com>
374         * elf/Makefile (tests): Add tst-tls1.
375         * elf/tst-tls1.c: New file.
377         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Don't handle
378         alignment of TCB for now.
380         * elf/rtld.c (dl_main): Use p_vaddr as address of TLS
381         initialization image for the application itself.
383         * sysdeps/generic/dl-tls.c (_dl_allocate_tls): Correctly terminate
384         loop to initialize TLS block.
386 2002-02-08  Richard Henderson  <rth@redhat.com>
388         * sysdeps/generic/ldsodefs.h (struct rtld_global): Also include
389         _dl_cpuclock_offset if HP_SMALL_TIMING_AVAIL.
391         * sysdeps/alpha/elf/initfini.c: Use \n\ for multiline string.
393 2002-02-09  Jakub Jelinek  <jakub@redhat.com>
395         * sysdeps/generic/dl-environ.c (unsetenv): Clear cnt before use.
397 2002-02-08  Ulrich Drepper  <drepper@redhat.com>
399         * po/ca.po: Update from translation team.
400         * po/sk.po: Likewise.
402         * elf/rtld.c (_dl_start_final): Install DTV explicitly.
403         (dl_main): Move dtv/static TLS handling before relocation.
404         Unconditionally call _dl_tlsoffset.  Call _dl_allocate_tls and
405         TLS_INIT_TP to allocate and install the dtv/static TLS block.
406         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): If no object
407         so far uses TLS initialize GL(dl_tls_static_size) and
408         GL(dl_tls_static_align) to account for the TCB.
409         (_dl_allocate_tls): New function.
410         * sysdeps/generic/ldsodefs.h (rtld_global): Add
411         _dl_initial_dtv_malloced.
413         * configure.in: Test for __builtin_memset more realistically.
415         * csu/version.c (banner): If TLS support is available say so.
417 2002-02-04  H.J. Lu  <hjl@gnu.org>
419         * sysdeps/mips/dl-machine.h (elf_machine_matches_host): Use
420         __attribute_used__.
421         (__dl_runtime_resolve): Likewise.
423         * sysdeps/mips/machine-gmon.h (_MCOUNT_DECL): Make it a real
424         declaration.
426 2001-11-15  H.J. Lu  <hjl@gnu.org>
428         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Don't include
429         <signal.h>, <sys/ucontext.h> nor <asm/elf.h>. Updated for gdb.
431         * sysdeps/unix/sysv/linux/mips/sys/user.h: New.
433 2002-02-07  H.J. Lu  <hjl@gnu.org>
435         * sysdeps/mips/atomicity.h (compare_and_swap): Remove
436         ".set noreorder".
437         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set):
438         Likewise.
440 2002-02-07  Ulrich Drepper  <drepper@redhat.com>
442         * sysdeps/unix/sysv/linux/bits/stat.h: Undo last patch.
444         * sysdeps/i386/dl-tls.h (__tls_get_addr): Call
445         ___tls_get_addr_internal.
446         (___tls_get_addr_internal): Define as alias for ___tls_get_addr.
448         * po/ko.po: Update from translation team.
450 2002-02-07  Jakub Jelinek  <jakub@redhat.com>
452         * sysdeps/unix/sysv/linux/bits/stat.h (struct stat): Remove packed
453         attribute, change __pad{1,2} type to unsigned int.
454         (struct stat64): Remove packed attribute.
456 2002-02-07  Ulrich Drepper  <drepper@redhat.com>
458         * sysdeps/i386/dl-tls.h: No need for #ifdef USE_TLS.
460 2002-02-07  Andreas Schwab  <schwab@suse.de>
462         * configure.in: Fix check for -zcombreloc.
464 2002-02-06  H.J. Lu  <hjl@gnu.org>
466         * config.h.in (HAVE_BUILTIN_MEMSET): New.
467         * configure.in: Check if __builtin_memset really works.
468         * elf/rtld.c (_dl_start): Check HAVE_BUILTIN_MEMSET instead of
469         __GNUC_PREREQ (2, 96) before using __builtin_memset.
471 2002-02-06  Jakub Jelinek  <jakub@redhat.com>
473         * io/bug-ftw3.c (main): Don't try the test if root.
475 2002-02-06  Martin Schwidefsky  <schwidefsky@de.ibm.com>
477         * sysdeps/unix/sysv/linux/s390/brk.c (__brk): Correct inline assembly
478         constraints.
479         * sysdeps/unix/sysv/linux/s390/s390-32/bits/resource.h (RLIMIT_LOCKS):
480         Add RLIMIT_LOCKS and adjust RLIMIT_NLIMITS.
481         * sysdeps/unix/sysv/linux/s390/s390-64/bits/resource.h (RLIMIT_LOCKS):
482         Likewise.
483         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (clone): Make clone
484         a weak alias for __clone.
485         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (clone): Likewise.
486         * sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: Fix typo.
487         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Add framestate.
488         * sysdeps/unix/sysv/linux/s390/s390-64/Versions: New file.
489         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap64): Make __mmap
490         a weak alias for __mmap64.
492 2002-02-05  H.J. Lu  <hjl@gnu.org>
494         * sysdeps/mips/atomicity.h (exchange_and_add): Not use branch likely.
495         (atomic_add): Likewise.
496         (compare_and_swap): Likewise.
497         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise.
499 2002-02-07  Ulrich Drepper  <drepper@redhat.com>
501         * sysdeps/generic/dl-tls.c: Don't read TLS header if TLS is not needed.
503         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Account for
504         alignment of the TCB and store total size and alignment of static
505         TLS block in _dl_tls_static_size and _dl_tls_static_align.
506         tls_index is a typedef.
507         * sysdeps/generic/ldsodefs.h: Declare _dl_tls_static_size and
508         _dl_tls_static_align.
509         * sysdeps/i386/dl-tls.h: tls_index is a typedef.
510         * elf/dl-support.c: Define _dl_tls_static_size and
511         _dl_tls_static_align.
513 2002-02-06  Ulrich Drepper  <drepper@redhat.com>
515         * configure.in: Add --without-tls option.
516         * sysdeps/i386/elf/configure.in: Don't check for TLS support if
517         --without-tls is given.
519         * sysdeps/generic/dl-tls.c: Include <tls.h>.
521         * sysdeps/i386/dl-tls.h: Don't define anything if !USE_TLS.
523 2002-02-06  Roland McGrath  <roland@frob.com>
525         * malloc/hooks.c [! HAVE_MREMAP]: Conditionalize unused decls.
526         * malloc/malloc.c [! HAVE_MREMAP]: Likewise.
528         * scripts/versions.awk: Improve error message for missing version.
529         Each version inherits from the last one only if they have the same
530         nonnumeric prefix, i.e. GLIBC_x.y and GLIBC_x.z or FOO_x and FOO_y
531         but not GLIBC_x and FOO_y.
533         * scripts/firstversions.awk: Handle libraries that don't have each
534         particular version named in the third column of shlib-versions.
536         * scripts/firstversions.awk: Don't mess with GLIBC_PRIVATE.
538 2002-02-06  Ulrich Drepper  <drepper@redhat.com>
540         * Versions.def [ld]: Add GLIBC_2.3.
541         * elf/Versions [ld]: Add __tls_get_addr to GLIBC_2.3.
542         * elf/Makefile (dl-routines): Add dl-tls.
543         (distribute): Add dl-tls.h.
544         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
545         _dl_tls_module_cnt, add _dl_tls_max_dtv_idx and _dl_tls_dtv_gaps.
546         Add prototypes for _dl_next_tls_modid and _dl_determine_tlsoffset.
547         * elf/dl-load.c (_dl_map_object_from_fd): Store alignment requirement
548         along with the other info in the link map.  Change queueing of init
549         images for double linked list.  Use _dl_next_tls_modid to compute
550         l_tls_modid.
551         * elf/rtld.c (_dl_start_final): Store alignment requirement
552         along with the other info in rtld map and executable map.
553         (dl_main): Add ld.so to the init image list if necessary.  Compute
554         final module ID with _dl_next_tls_modid.
555         * include/link.h (struct link_map): Add l_tls_previmage and
556         l_tls_align.
557         * eld/dl-support.c: Define _dl_tls_max_dtv_idx and _dl_tls_dtv_gaps.
558         * sysdeps/i386/elf/Versions: New file.
559         * sysdeps/generic/dl-tls.c: New file.
560         * sysdeps/generic/dl-tls.h: New file.
561         * sysdeps/i386/dl-tls.h: New file.
563 2002-02-06  Roland McGrath  <roland@frob.com>
565         * sysdeps/unix/sysv/linux/netinet/ip.h: Moved to ...
566         * sysdeps/generic/netinet/ip.h: ... here, replacing old file.
568 2002-01-05  Roland McGrath  <roland@frob.com>
570         * sysdeps/mach/configure.in: New file.
571         * sysdeps/mach/configure: New generated file.
573         * mach/Makefile (user-interfaces): Remove default_pager_helper.
574         It has never been used by anything.
576 2002-02-06  H.J. Lu  <hjl@gnu.org>
578         * sysdeps/mips/elf/ldsodefs.h: Make sure the right <ldsodefs.h>
579         is included.
581 2002-02-06  Ulrich Drepper  <drepper@redhat.com>
583         * sysdeps/unix/sysv/linux/bits/stat.h (struct stat): Add
584         attribute((packed)) to counter stupid people misusing gcc options.
585         (struct stat64): Likewise.
587 2002-02-05  Ulrich Drepper  <drepper@redhat.com>
589         * elf/rtld.c (dl_main): Correct indentation.  Use bool as type for
590         the variables which are used as booleans.
592 2002-02-06  Andreas Jaeger  <aj@suse.de>
594         * include/libc-symbols.h (INTUSE): Renamed from INT.
595         * elf/dl-deps.c: Change users.
596         * sysdeps/generic/dl-sysdep.c: Likewise.
597         * sysdeps/generic/dl-cache.c: Likewise.
598         * elf/dl-reloc.c: Likewise.
599         * elf/rtld.c: Likewise.
600         * elf/dl-version.c: Likewise.
601         * elf/dl-load.c: Likewise.
602         * elf/dl-dst.h: Likewise.
603         * elf/dl-init.c: Likewise.
604         * elf/dl-error.c: Likewise.
605         * elf/dl-fini.c: Likewise.
606         * elf/dl-runtime.c: Likewise.
607         * elf/do-lookup.h: Likewise.
609         * stdio-common/_itoa.h: Undefine SPECIAL to avoid duplicate
610         definition.
611         * stdio-common/_itowa.h: Likewise.
613 2002-02-05  Ulrich Drepper  <drepper@redhat.com>
615         * elf/dl-minimal.c: Define _itoa_lower_digits.
617         * elf/dynamic-link.h (elf_get_dynamic_info): ld.so can have
618         DT_FLAGS set.
620         * elf/dl-load.c (_dl_map_object_from_fd): Prevent dynamically
621         loading modules with the DF_STATIC_TLS flag set.
622         * elf/dynamic-link.h (elf_get_dynamic_info): Initialize l_flags
623         element.
624         * include/link.h (struct link_map): Add l_flags field.
625         * elf/elf.h (DF_STATIC_TLS): New definition.
627         * dlfcn/Makefile: Add rules to build and run bug-dlopen1.
628         * dlfcn/bug-dlopen1.c: New file.  By Bruno Haible.
630         * elf/rtld.c (process_dl_debug): Correct printing help message.
631         * elf/dl-misc.c (_dl_debug_vdprintf): Implement precision handling
632         for %s.
634         * inet/getnetgrent_r.c (innetgr): Add int* parameter to getfct
635         definition and pass &errno in use of this variable.
636         Reported by Simon Wilkinson <simon@sxw.org.uk> [PR libc/2911].
638 2002-02-04  Andreas Schwab  <schwab@suse.de>
640         * locale/programs/localedef.h (WITH_CUR_LOCALE): Define.
641         * locale/programs/charmap-dir.c: Wrap calls that output messages
642         with WITH_CUR_LOCALE.  Include "localedef.h" first.
643         * locale/programs/charmap.c: Likewise.
644         * locale/programs/ld-address.c: Likewise.
645         * locale/programs/ld-collate.c: Likewise.
646         * locale/programs/ld-ctype.c: Likewise.
647         * locale/programs/ld-identification.c: Likewise.
648         * locale/programs/ld-measurement.c: Likewise.
649         * locale/programs/ld-messages.c: Likewise.
650         * locale/programs/ld-monetary.c: Likewise.
651         * locale/programs/ld-name.c: Likewise.
652         * locale/programs/ld-numeric.c: Likewise.
653         * locale/programs/ld-paper.c: Likewise.
654         * locale/programs/ld-telephone.c: Likewise.
655         * locale/programs/ld-time.c: Likewise.
656         * locale/programs/linereader.c: Likewise.
657         * locale/programs/linereader.h: Likewise.
658         * locale/programs/localedef.c: Likewise.
659         * locale/programs/locfile.c: Likewise.
660         * locale/programs/repertoire.c: Likewise.
662 2002-02-05  Ulrich Drepper  <drepper@redhat.com>
664         * elf/rtld.c (_dl_start_final): Determine load address to locate
665         ehdr with GL(dl_rtld_map).l_map_start.
667         * po/ca.po: Update from translation team.
669         * elf/rtld.c (dl_main): Read PT_TLS entry of the executable.
670         * elf/dl-load.c (_dl_map_object_from_fd): Handle PT_TLS program
671         header entry.
672         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add
673         _dl_tls_module_cnt.
674         * elf/dl-support.c: Define _dl_initimage_list and _dl_tls_module_cnt.
676 2002-02-04  Ulrich Drepper  <drepper@redhat.com>
678         * elf/rtld.c (_dl_start): Fill TLS values in link map for rtld.
679         * include/link.h (struct link_map): Add various members for TLS
680         information.
681         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
682         _rtld_tlsoffset, add _dl_initimage_list.
683         * sysdeps/i386/dl-lookupcfg.h: New file.
684         * sysdeps/i386/dl-machine.h (elf_machine_rel): Implement missing
685         TLS relocation.  When using TLS we now use RESOLVE_MAP.
686         (elf_machine_rela): Use RESOLVE_MAP instead of RESOLVE_MAP if TLS
687         is used.
689         * sysdeps/generic/dl-cache.c (_dl_cache_libcmp): Mark as possibly
690         unused.
692         * elf/rtld.c (_dl_start_final): Allocate TLS and initialize
693         thread-pointer as soon as possible.
694         * sysdeps/generic/ldsodefs.h: Include <tls.h>.  Define first TLS
695         elements in rtld_global.
696         * sysdeps/generic/tls.h: New file.
697         * elf/Makefile (distribute): Add tls.h.
698         * sysdeps/i386/dl-machine.h (elf_machine_rel): Add support for TLS
699         relocations.  Not complete yet.
701         * resolv/resolv.h: Allow user to define __need_res_state and only
702         define __res_start structure then.
703         * include/resolv.h: Only declare functions if _RESOLV_H_ is defined.
705         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Move
706         dl_cpuclock_offset initialization to _dl_start_final.
707         (_dl_show_auxv): Avoid unnecessary sign extension.
708         * elf/rtld.c (_dl_start_final): Initialize dl_cpuclock_offset.
710 2002-02-03  Ulrich Drepper  <drepper@redhat.com>
712         * config.h.in: Add HAVE_TLS_SUPPORT.
713         * sysdeps/i386/elf/configure.in: New file.
715 2002-02-03  Andreas Schwab  <schwab@suse.de>
717         * sysdeps/posix/readv.c: Use ssize_t for bytes_read.
718         * sysdeps/posix/writev.c: Use ssize_t for bytes_written.  Fix comment.
720 2002-02-03  Thorsten Kukuk  <kukuk@suse.de>
722         * sysdeps/posix/writev.c: Check for ssize_t overflow, don't use
723         alloca if the memory reqirements are too high.
725 2002-02-03  Ulrich Drepper  <drepper@redhat.com>
727         * elf/dl-load.c (decompose_rpath): Avoid using strstr.
728         * elf/dl-minimal.c (_strerror_r): Use _itoa instead of _itoa_word since
729         the former is available anyway and speed isn't important here.
730         * elf/dl-misc.c (_dl_debug_vdprintf): Likewise.
731         * elf/dl-version.c (match_symbol): Likewise.
732         (_dl_check_map_versions): Likewise.
733         * elf/rtld.c (process_envvars): Likewise.
734         (print_statistics): Likewise.
735         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Likewise.
736         * elf/dl-minimal.c (_itoa): Always define it.  Make it work for all
737         bases.  Add assert to catch uses of unimplemented features.
738         (__strsep): Add assert to catch uses of unimplemented features.
739         * elf/dl-object.c (_dl_new_object): Don't use rawmemchr.  Use strchr
740         and avoid inline optimization.
741         * elf/rtld.c (process_envvars): Likewise.
742         * elf/dl-open.c: Don't include <stdio-common/_itoa.h>.
743         * elf/dl-profile.c (_dl_start_profile): Help compiler to avoid ffs.
744         * elf/rtld.c (dl_main): Avoid strsep inline optimization.
746 2002-02-02  Ulrich Drepper  <drepper@redhat.com>
748         * stdio-common/_itoa.h: Minor simplifications of the code.
749         * stdio-common/_itoa.c: Likewise.
751         * elf/dl-reloc.c (_dl_relocate_object): Use _dl_debug_printf
752         instead of _dl_printf for debugging info output.
754         * manual/examples/mkfsock.c (make_named_socket): Make sure name is
755         always NUL-terminated.  Patch by Chris D. Sloan <cds@cs.hmc.edu>.
757 2002-02-01  H.J. Lu  <hjl@gnu.org>
759         * sysdeps/mips/atomicity.h (exchange_and_add): Use branch likely.
760         (atomic_add): Likewise.
761         (compare_and_swap): Return 0 only when failed to compare. Use
762         branch likely.
764         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Use
765         branch likely.
767 2002-02-03  kaz Kojima  <kkojima@rr.iij4u.or.jp>
769         * sysdeps/sh/dl-machine.h (elf_machine_rela): Fix a typo.
771 2002-02-02  Ulrich Drepper  <drepper@redhat.com>
773         * elf/dl-minimal.c (__strsep): New minimal implementation.
775 2002-02-02  Paul Eggert  <eggert@twinsun.com>
777         * src/mktime.c [defined DEBUG && STDC_HEADERS]: Include <string.h>.
778         (__mktime_internal): If no tm_isdst is requested, prefer solutions
779         with tm_isdst > 0 when the requested time falls within a
780         spring-forward gap [PR libc/2894].
782 2002-02-03  Andreas Schwab  <schwab@suse.de>
784         * stdio-common/tst-rndseek.c: Increase timeout.
786 2002-02-02  Ulrich Drepper  <drepper@redhat.com>
788         Change ld.so to not use functions which are exported.  One cannot
789         interpose them anyway.  Use INT() to mark uses, INTDEF() to mark
790         definitions.
791         * include/libc-symbols.h: Define INT and INTDEF.
792         * sysdeps/generic/ldsodefs.h: Declare _dl_debug_printf_internal,
793         _dl_signal_error_internal, _dl_map_object_internal,
794         _dl_map_object_deps_internal, _dl_lookup_symbol_internal,
795         _dl_lookup_versioned_symbol_internal,
796         _dl_relocate_object_internal, _dl_debug_state_internal,
797         _dl_start_profile_internal, and _dl_unload_cache_internal.
798         * include/dlfcn.h: Declare _dl_catch_error_internal.
799         * elf/rtld.c: Use INT for calls to any of the *_internal functions
800         above.  Add INTDEF to function definitions.
801         * elf/dl-debug.c: Likewise.
802         * elf/dl-deps.c: Likewise.
803         * elf/dl-dst.h: Likewise.
804         * elf/dl-error.c: Likewise.
805         * elf/dl-fini.c: Likewise.
806         * elf/dl-init.c: Likewise.
807         * elf/dl-load.c: Likewise.
808         * elf/dl-lookup.c: Likewise.
809         * elf/dl-misc.c: Likewise.
810         * elf/dl-open.c: Likewise.
811         * elf/dl-profile.c: Likewise.
812         * elf/dl-reloc.c: Likewise.
813         * elf/dl-runtime.c: Likewise.
814         * elf/dl-version.c: Likewise.
815         * elf/do-lookup.h: Likewise.
816         * sysdeps/generic/dl-cache.c: Likewise.
817         * sysdeps/generic/dl-sysdep.c: Likewise.
818         * sysdeps/alpha/dl-machine.h (RTLD_START): Call _dl_init_internal
819         instead of _dl_init.
820         * sysdeps/arm/dl-machine.h: Likewise.
821         * sysdeps/cris/dl-machine.h: Likewise.
822         * sysdeps/hppa/dl-machine.h: Likewise.
823         * sysdeps/i386/dl-machine.h: Likewise.
824         * sysdeps/ia64/dl-machine.h: Likewise.
825         * sysdeps/m68k/dl-machine.h: Likewise.
826         * sysdeps/mips/dl-machine.h: Likewise.
827         * sysdeps/mips/mips64/dl-machine.h: Likewise.
828         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
829         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
830         * sysdeps/sh/dl-machine.h: Likewise.
831         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
832         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
833         * sysdeps/x86_64/dl-machine.h: Likewise.
834         * sysdeps/powerpc/dl-start.S (_dl_start_user): Likewise.
836         * elf/Versions: Don't export _dl_check_all_versions, _dl_sysdep_start,
837         and _dl_debug_initialize.
839         * elf/dl-object.c (_dl_new_object): Avoid using strrchr.  We have
840         more information.
841         * elf/rtld.c (dl_main): Avoid strrchr.
842         * sysdeps/unix/sysv/linux/dl-origin.c (_dl_get_origin): Use the
843         result of readlink.  Search from the back for '/'.
845         * elf/dl-profile.c (_dl_start_profile): Help the compiler to avoid
846         strncpy if possible.
848         * sysdeps/generic/dl-environ.c (unsetenv): Optimize.  Don't use
849         strncmp.
850         * elf/dl-load.c (is_dst): Optimize.  Don't call strncmp twice.
851         * elf/rtld.c (process_dl_debug): Optimize. Avoid calls to strncmp,
852         strspn, and strcspn.
853         (process_envvars): Don't use strcspn.
855         * elf/dl-load.c (_dl_dst_count): Fix possible endless loop.
856         (_dl_dst_substitute): Likewise.
858 2002-02-01  Ulrich Drepper  <drepper@redhat.com>
860         * elf/do-rel.h (elf_dynamic_do_rel): Help the compiler recognize
861         code which is never used when relocating ld.so itself.
863         * elf/dynamic-link.h (elf_get_dynamic_info): Optimize a bit for
864         starting ld.so itself.  Move l_addr variable initialization closer
865         to use.
866         (_ELF_DYNAMIC_DO_RELOC): Help the compiler optimize a bit.
868 2002-02-01  Jakub Jelinek  <jakub@redhat.com>
870         * Versions.def (libc): Add GLIBC_PRIVATE.
871         (libdb, libnss_db, libdb1): Remove.
872         (libnss_compat, libnss_dns, libnss_files, libnss_hesiod, libnss_nis,
873         libnss_nisplus): Move all symbols to GLIBC_PRIVATE.
874         (libpthread): Add GLIBC_PRIVATE.
875         (libresolv): Likewise, remove GLIBC_2.1.
876         (ld): Add GLIBC_PRIVATE, remove GLIBC_2.1.1, GLIBC_2.2, GLIBC_2.2.1,
877         GLIBC_2.2.3, GLIBC_2.3.
878         * catgets/Versions (__open_catalog): Move to GLIBC_PRIVATE.
879         * elf/Versions (_dl_open, _dl_close, _dl_addr, _dl_init_first,
880         _dl_sym, _dl_vsym): Likewise.
881         (__libc_enable_secure, __libc_stack_end, _dl_argv, _dl_catch_error,
882         _dl_check_all_versions, _dl_check_map_versions, _dl_debug_initialize,
883         _dl_debug_printf, _dl_debug_state, _dl_dst_count, _dl_dst_substitute,
884         _dl_init, _dl_lookup_symbol, _dl_lookup_symbol_skip,
885         _dl_lookup_versioned_symbol, _dl_lookup_versioned_symbol_skip,
886         _dl_map_object, _dl_map_object_deps, _dl_out_of_memory,
887         _dl_relocate_object, _dl_signal_error, _dl_start_profile,
888         _dl_starting_up, _dl_sysdep_start, _dl_unload_cache, _rtld_global):
889         Likewise.
890         (_dl_object_relocation_scope): Remove.
891         * hesiod/Versions: Move all symbols to GLIBC_PRIVATE.
892         * iconv/Versions (__gconv_alias_db, __gconv_modules_db,
893         __gconv_cache): Move to GLIBC_PRIVATE.
894         * inet/Versions (__internal_endnetgrent, __internal_getnetgrent_r,
895         __internal_setnetgrent): Likewise.
896         * io/Versions (__libc_open, __libc_close, __libc_read, __libc_write,
897         __libc_lseek, __libc_fcntl, __libc_open64, __libc_lseek64): Likewise.
898         * locale/Versions (__collate_element_hash, __collate_element_strings,
899         __collate_symbol_classes, __collate_symbol_hash,
900         __collate_symbol_strings, _nl_current_LC_COLLATE,
901         _nl_current_LC_CTYPE): Likewise.
902         * misc/Versions (__libc_fsync, __libc_msync): Likewise.
903         * nis/Versions (libnss_compat): Move all symbols to GLIBC_PRIVATE.
904         (libnss_nis, libnss_nisplus): Likewise.
905         * nss/Versions (_nss_files_parse_grent, _nss_files_parse_pwent,
906         _nss_files_parse_spent): Move to GLIBC_PRIVATE.
907         (libnss_files): Move all symbols to GLIBC_PRIVATE.
908         * posix/Versions (__libc_wait, __libc_waitpid, __libc_pause,
909         __libc_nanosleep, __libc_fork, __libc_pread, __libc_pread64,
910         __libc_pwrite, __libc_pwrite64): Move to GLIBC_PRIVATE.
911         * resolv/Versions (__gai_sigqueue, __ns_name_unpack, __ns_name_ntop,
912         __ns_get16, __ns_samename): Likewise.
913         (libnss_dns): Move all symbols to GLIBC_PRIVATE.
914         * setjmp/Versions (__libc_longjmp, __libc_siglongjmp): Move to
915         GLIBC_PRIVATE.
916         * socket/Versions (__libc_accept, __libc_send, __libc_recvfrom,
917         __libc_recvmsg, __libc_sendmsg, __libc_recv, __libc_sendto,
918         __libc_connect): Likewise.
919         * stdio-common/Versions (_itoa_lower_digits, _itoa_upper_digits):
920         Likewise.
921         * stdlib/Versions (__libc_system): Likewise.
922         * sunrpc/Versions (__rpc_thread_destroy): Likewise.
923         * sysdeps/hppa/Versions: Move all symbols to GLIBC_PRIVATE.
924         * sysdeps/ia64/fpu/Versions: Likewise.
925         * sysdeps/ia64/Versions: Likewise.
926         * sysdeps/unix/sysv/linux/ia64/Versions: Likewise.
927         * sysdeps/unix/sysv/linux/i386/Versions (__modify_ldt): Move
928         to GLIBC_PRIVATE.
929         * sysdeps/unix/sysv/linux/x86_64/Versions (__modify_ldt): Likewise.
930         * sysdeps/unix/sysv/linux/Versions (__syscall_rt_sigqueueinfo,
931         __libc_sigaction): Likewise.
932         * termios/Versions (__libc_tcdrain): Likewise.
934         * misc/sys/cdefs (__attribute_noinline__): Define.
935         * elf/dl-lookup.c (_dl_do_lookup, _dl_do_lookup_versioned): Add
936         __attribute_noinline__.
938         * elf/Makefile (rtld-routines): Add dl-xstat64, dl-fxstat64.
939         * elf/dl-xstat64.c: New file.
940         * elf/dl-fxstat64.c: New file.
941         * sysdeps/unix/sysv/linux/fxstat64.c: If RTLD_STAT64 is defined,
942         don't export __fxstat64 at multiple versions.
943         * sysdeps/unix/sysv/linux/lxstat64.c: Similarly.
944         * sysdeps/unix/sysv/linux/xstat64.c: Similarly.
946 2002-01-18  Isamu Hasegawa  <isamu@yamato.ibm.com>
948         * locale/program/ld-collate.c (collate_finish): Assign a wide
949         char collation sequence value to multi character collating
950         elements, and avoid over writing by non-character elements.
952 2002-02-01  Ulrich Drepper  <drepper@redhat.com>
954         * elf/Makefile (distribute): Add dl-procinfo.c.
955         * sysdeps/unix/sysv/linux/i386/Dist: Remove dl-procinfo.c.
956         * sysdeps/unix/sysv/linux/arm/Dist: Likewise.
958 2002-02-01  Jakub Jelinek  <jakub@redhat.com>
960         * sysdeps/generic/ldsodefs.h (_dl_load_lock): Remove duplicate
961         definition.
962         * sysdeps/ia64/hp-timing.h: Move _dl_hp_timing_overhead in
963         _rtld_global struct.
964         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise.
965         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
966         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
967         * sysdeps/sparc/sparc64/Makefile: Make hp-timing static only.
968         * sysdeps/unix/sysv/aix/init-first.c (_dl_fpu_control,
969         _dl_fpu_control_set): Remove unused externs.
970         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c: New file.
971         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c: New file.
972         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Move procinfo
973         related variables in _rtld_global struct.
974         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise.
975         * sysdeps/unix/sysv/linux/init-first.c (_dl_fpu_control_set): Remove
976         unused extern.
978 2002-02-01  Ulrich Drepper  <drepper@redhat.com>
980         * sysdeps/generic/dl-procinfo.c: New file.
982 2002-02-01  Andreas Schwab  <schwab@suse.de>
984         * sysdeps/m68k/dl-machine.h: Don't use multi-line string literals.
986 2002-02-01  Ulrich Drepper  <drepper@redhat.com>
988         * elf/rtld.c (_dl_start): Mark as internal_function.
989         * sysdeps/i386/dl-machine.h (RTLD_START): Pass parameter for _dl_start
990         in register.
991         (elf_machine_rel): Cleanup and minor optimization for RTLD_BOOTSTRAP.
992         General pretty printing.
994 2002-01-31  Ulrich Drepper  <drepper@redhat.com>
996         * elf/dl-minimal.c: Define _itoa for 32-bit machines with HP timing.
997         * elf/dl-reloc.c: Pretty printing.
998         * sysdeps/generic/ldsodefs.h: Move _dl_hp_timing_overhead and
999         procinfo-related variables in rtld_global struct.
1000         * elf/dl-support.c: Likewise.
1001         * elf/rtld.c: Likewise.
1002         * sysdeps/i386/i686/Makefile: Likewise.
1003         * sysdeps/i386/i686/hp-timing.c: Likewise.
1004         * sysdeps/i386/i686/hp-timing.h: Likewise.
1005         * sysdeps/ia64/Makefile: Likewise.
1006         * sysdeps/ia64/hp-timing.c: Likewise.
1007         * sysdeps/sparc/sparc32/sparcv9/Makefile: Likewise.
1008         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
1009         * sysdeps/unix/sysv/linux/arm/dl-procinfo.c: Likewise.
1010         * sysdeps/unix/sysv/linux/arm/dl-procinfo.h: Likewise.
1011         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
1012         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Likewise.
1013         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Likewise.
1014         * sysdeps/x86_64/Makefile: Likewise.
1016         * sysdeps/generic/ldsodefs.h: Add _dl_load_lock, _dl_lazy,
1017         _dl_dynamic_weak, _dl_fpu_control, _dl_cpuclock_offset, and
1018         _dl_debug_fd to rtld_global.
1019         * elf/Versions: Likewise.
1020         * elf/dl-close.c: Likewise.
1021         * elf/dl-iteratephdr.c: Likewise.
1022         * elf/dl-lookup.c: Likewise.
1023         * elf/dl-misc.c: Likewise.
1024         * elf/dl-open.c: Likewise.
1025         * elf/dl-support.c: Likewise.
1026         * elf/do-lookup.h: Likewise.
1027         * elf/rtld.c: Likewise.
1028         * sysdeps/generic/dl-cache.c: Likewise.
1029         * sysdeps/generic/dl-sysdep.c: Likewise.
1030         * sysdeps/ia64/Versions: Likewise.
1031         * sysdeps/unix/clock_gettime.c: Likewise.
1032         * sysdeps/unix/clock_settime.c: Likewise.
1033         * sysdeps/unix/sysv/linux/init-first.c: Likewise.
1034         * sysdeps/sparc/Versions: Removed.
1035         * sysdeps/i386/i686/Versions : Removed.
1036         * sysdeps/x86_64/Versions: Removed.
1037         * configure.in: Define HAVE_PROTECTED if .protected is available.
1038         * config.h.in: Add entry for HAVE_PROTECTED.
1040 2002-01-31  Jakub Jelinek  <jakub@redhat.com.
1042         * sysdeps/alpha/dl-machine.h: Move global variables for SHARED
1043         code in struct _rtld_global.  Export this struct, remove all
1044         exports for the signal variables.
1045         * sysdeps/arm/dl-machine: Likewise.
1046         * sysdeps/generic/dl-origin: Likewise.
1047         * sysdeps/generic/dl-sysdep: Likewise.
1048         * sysdeps/generic/dl-cache: Likewise.
1049         * sysdeps/hppa/dl-fptr: Likewise.
1050         * sysdeps/hppa/dl-machine: Likewise.
1051         * sysdeps/cris/dl-machine: Likewise.
1052         * sysdeps/i386/dl-machine: Likewise.
1053         * sysdeps/ia64/dl-machine: Likewise.
1054         * sysdeps/m68k/dl-machine: Likewise.
1055         * sysdeps/mach/hurd/dl-sysdep: Likewise.
1056         * sysdeps/mips/mips64/dl-machine: Likewise.
1057         * sysdeps/mips/dl-machine: Likewise.
1058         * sysdeps/powerpc/elf/libc-start: Likewise.
1059         * sysdeps/powerpc/dl-machine: Likewise.
1060         * sysdeps/powerpc/dl-start: Likewise.
1061         * sysdeps/sparc/sparc32/dl-machine: Likewise.
1062         * sysdeps/sparc/sparc64/dl-machine: Likewise.
1063         * sysdeps/sh/dl-machine: Likewise.
1064         * sysdeps/s390/s390-32/dl-machine: Likewise.
1065         * sysdeps/s390/s390-64/dl-machine: Likewise.
1066         * sysdeps/unix/sysv/aix/libc-start: Likewise.
1067         * sysdeps/unix/sysv/aix/start-libc: Likewise.
1068         * sysdeps/unix/sysv/linux/ia64/dl-static: Likewise.
1069         * sysdeps/unix/sysv/linux/m68k/getpagesize: Likewise.
1070         * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize: Likewise.
1071         * sysdeps/x86_64/dl-machine: Likewise.
1073 2002-01-31  Ulrich Drepper  <drepper@redhat.com>
1075         * sysdeps/posix/readv.c: Don't use alloca if the memory requirements
1076         are too high.
1078 2002-01-31  Andreas Schwab  <schwab@suse.de>
1080         * sysdeps/posix/readv.c: Check for ssize_t overflow.
1082 2002-01-31  Andreas Schwab  <schwab@suse.de>
1084         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Fix leftover
1085         reference to _dl_pagesize.
1087 2002-01-30  Ulrich Drepper  <drepper@redhat.com>
1089         * Versions.def [ld]: Add GLIBC_2.3.
1090         * elf/dl-addr.c: Move global variables for SHARED code in struct
1091         _rtld_global.  Export this struct, remove all exports for the
1092         signal variables.
1093         * elf/dl-close.c: Likewise.
1094         * elf/dl-conflict.c: Likewise.
1095         * elf/dl-debug.c: Likewise.
1096         * elf/dl-deps.c: Likewise.
1097         * elf/dl-dst.h: Likewise.
1098         * elf/dl-error.c: Likewise.
1099         * elf/dl-fini.c: Likewise.
1100         * elf/dl-init.c: Likewise.
1101         * elf/dl-iteratephdr.c: Likewise.
1102         * elf/dl-libc.c: Likewise.
1103         * elf/dl-load.c: Likewise.
1104         * elf/dl-lookup.c: Likewise.
1105         * elf/dl-minimal.c: Likewise.
1106         * elf/dl-object.c: Likewise.
1107         * elf/dl-open.c: Likewise.
1108         * elf/dl-profile.c: Likewise.
1109         * elf/dl-profstub.c: Likewise.
1110         * elf/dl-reloc.c: Likewise.
1111         * elf/dl-runtime.c: Likewise.
1112         * elf/dl-support.c: Likewise.
1113         * elf/dl-sym.c: Likewise.
1114         * elf/dl-version.c: Likewise.
1115         * elf/do-lookup.h: Likewise.
1116         * elf/do-rel.h: Likewise.
1117         * elf/dynamic-link.h: Likewise.
1118         * elf/rtld.c: Likewise.
1119         * sysdeps/generic/dl-cache.c: Likewise.
1120         * sysdeps/generic/dl-sysdep.c: Likewise.
1121         * sysdeps/generic/ldsodefs.h: Likewise.
1122         * sysdeps/generic/libc-start.c: Likewise.
1123         * sysdeps/i386/dl-machine.h: Likewise.
1124         * sysdeps/ia64/dl-fptr.c: Likewise.
1125         * sysdeps/ia64/dl-machine.h: Likewise.
1126         * sysdeps/unix/sysv/linux/dl-librecon.h: Likewise.
1127         * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
1128         * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise.
1129         * sysdeps/unix/sysv/linux/getclktck.c: Likewise.
1130         * sysdeps/unix/sysv/linux/getpagesize.c: Likewise.
1131         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
1132         * sysdeps/unix/sysv/linux/ia64/dl-static.c: Likewise.
1133         * sysdeps/unix/sysv/linux/ia64/getpagesize.c: Likewise.
1135 2002-01-29  Ulrich Drepper  <drepper@redhat.com>
1137         * sysdeps/ia64/dl-lookupcfg.h (DL_AUTO_FUNCTION_ADDRESS): Add cast
1138         to avoid warning
1139         (DL_STATIC_FUNCTION_ADDRESS): Likewise.
1141         * elf/dl-lookup.c: Only define or handle _dl_num_relocations for the
1142         SHARED version.
1143         * elf/dl-reloc.c: Likewise for _dl_num_cache_relocations.
1145         * elf/rtld.c (_dl_start): Use __builtin_memset if available.
1147 2002-01-29  Ben Collins  <bcollins@debian.org>
1149         * string/bits/string2.h (__mempcpy): Protect size arg for
1150         addition when using __builtin_memcpy.
1152 2002-01-29  Ulrich Drepper  <drepper@redhat.com>
1154         * stdlib/Makefile (tests): Add tst-qsort.
1155         * stdlib/tst-qsort.c: New file.  Written by Paul Eggert.
1157         * manual/signal.texi (Process Signal Mask): Document that
1158         pthread_sigmask, not sigprocmask, must be used in MT programs.
1159         Patch by Bertold Kolics <Bertold.Kolics@Sun.COM>.
1161         * misc/hsearch_r.c (hsearch_r): Don't insert anything if entry is
1162         found.
1163         * misc/Makefile (tests): Add tst-hsearch.
1164         * misc/tst-hsearch.c: New file.
1166 2002-01-18  Wolfram Gloger  <wg@malloc.de>
1168         * malloc/malloc.c: Rewrite, adapted from Doug Lea's malloc-2.7.0.c.
1169         * malloc/malloc.h: Likewise.
1170         * malloc/thread-m.h: Spinlock definitions for x86/x86_64.
1171         * malloc/arena.c: New file.
1172         * malloc/hooks.c: New file.
1173         * malloc/tst-mallocstate.c: New file.
1174         * malloc/Makefile: Add new testcase tst-mallocstate.
1175         Add arena.c and hooks.c to distribute.  Fix commented CPPFLAGS.
1177 2002-01-28  Ulrich Drepper  <drepper@redhat.com>
1179         * stdlib/msort.c: Remove last patch.  The optimization violates the
1180         same rule which qsort.c had problems with.
1182 2002-01-27  Paul Eggert  <eggert@twinsun.com>
1184         * stdlib/qsort.c (_quicksort): Do not apply the comparison function
1185         to a pivot element that lies outside the array to be sorted, as
1186         ISO C99 requires that the comparison function be called only with
1187         addresses of array elements [PR libc/2880].
1189 2002-01-28  Ulrich Drepper  <drepper@redhat.com>
1191         * elf/dl-load.c (_dl_map_object): Remove incorrect optimization
1192         for SHARED code.  Reported by Ben Collins <bcollins@debian.org>.
1194         * timezone/asia: Update from tzdata2002b.
1195         * timezone/australasia: Likewise.
1196         * timezone/backward: Likewise.
1197         * timezone/europe: Likewise.
1198         * timezone/leapseconds: Likewise.
1199         * timezone/iso3166.tab: Likewise.
1200         * timezone/zone.tab: Likewise.
1202 2002-01-23  Richard Henderson  <rth@redhat.com>
1204         * sysdeps/alpha/Makefile (pic-ccflag): New variable.
1206 2002-01-28  Ulrich Drepper  <drepper@redhat.com>
1208         * string/strxfrm.c: Allocate one more byte for rulearr and clear
1209         this element [PR libc/2855].
1211         * string/strcoll.c: Handle zero-length arguments specially
1212         [PR libc/2856].
1214 2002-01-23  Jakub Jelinek  <jakub@redhat.com>
1216         * string/bits/string2.h (__mempcpy): For gcc 3.0+, don't use
1217         __mempcpy_small but instead use __builtin_memcpy ( , , n) + n for
1218         short lengths and constant src.
1219         (strcpy): Don't optimize for gcc 3.0+.
1220         (__stpcpy): For gcc 3.0+, don't use
1221         __stpcpy_small but instead use __builtin_strcpy (, src) + strlen (src)
1222         for short string literal src.
1224 2002-01-23  Jeroen Dobbelaere  <jeroen.dobbelaere@acunia.com>
1226         * sysdeps/unix/sysv/linux/configure.in (libc_cv_gcc_unwind_find_fde):
1227         Set for arm, too.
1229 2001-01-22  Paul Eggert  <eggert@twinsun.com>
1231         * manual/llio.texi (Linked Channels, Cleaning Streams):
1232         Make it clearer that a just-opened input stream might need cleaning.
1234 2002-01-21  H.J. Lu  <hjl@gnu.org>
1236         * sysdeps/mips/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC):
1237         Don't use label at end of compound statement.
1239 2002-01-28  Stephen L Moshier  <moshier@mediaone.net>
1241         * sysdeps/ieee754/ldbl-96/e_lgammal_r.c (__ieee754_lgammal_r):
1242         Remove test for negative integer arg; sin_pi does it correctly.
1244 2002-01-20  Ulrich Drepper  <drepper@redhat.com>
1246         * nscd/Makefile (distribute): Filter out xmalloc.c.
1248 2002-01-19  Ulrich Drepper  <drepper@redhat.com>
1250         * libio/fileops.c (_IO_file_underflow_mmap): Don't define as static.
1251         Set offset if read end wasn't the buffer end.
1252         (_IO_file_seekoff_mmap): New function.
1253         (_IO_file_xsgetn_mmap): New function.
1254         (_IO_file_jumps_mmap): Use the two new functions.
1255         * libio/wfileops.c (_IO_wfile_underflow_mmap): Handle end read buffer
1256         != end buffer.
1257         * libio/libioP.h: Declare _IO_file_seekoff_mmap and
1258         _IO_file_underflow_mmap.
1259         * libio/iofopen.c: Don't position file descriptor at end of file.
1260         * libio/tst-widetext.c: Improve error messages.
1261         * stdio-common/tst-rndseek.c: Likewise.
1263 2002-01-18  Ulrich Drepper  <drepper@redhat.com>
1265         * sysdeps/unix/sysv/linux/bits/statvfs.h: Avoid warning about comma at
1266         end of enum for !_GNU_SOURCE.
1267         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: Likewise.
1268         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: Likewise.
1269         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Likewise.
1270         * sysdeps/mach/hurd/bits/statvfs.h: Don't define non-standard ST_*
1271         values unless _GNU_SOURCE.
1273         * iconvdata/tcvn5712-1.c: Minor cleanups.
1275 2002-01-18  Andreas Schwab  <schwab@suse.de>
1277         * sysdeps/unix/sysv/linux/configure.in
1278         (libc_cv_gcc_unwind_find_fde): Set for m68k, too.
1280 2002-01-16  Roger Sayle  <roger@eyesopen.com>
1282         * stdlib/msort.c (msort_with_tmp): Replace implementation with
1283         more efficient "Towers of Hanoi" mergesort.
1284         (hanoi_sort, hanoi_sort_int, hanoi_sort_long): New functions,
1285         for generic, sizeof(int) and sizeof(long) variants respectively.
1287 2002-01-17  Ulrich Drepper  <drepper@redhat.com>
1289         * manual/syslog.texi (openlog): Describe possible problems with
1290         first parameter.
1291         Patch by Christopher Allen Wing <wingc@engin.umich.edu>.
1293         * nscd/nscd.c (drop_privileges): Removed.  Adjust caller.
1294         * nscd/connections.c (begin_drop_privileges): New function.
1295         (finish_drop_privileges): New function.
1296         (nscd_init): Call the new functions which also install all groups
1297         for the server user.
1298         * nscd/Makefile (nscd-modules): Add xmalloc for nscd.
1299         Patch by Christopher Allen Wing <wingc@engin.umich.edu>.
1301 2002-01-17  H.J. Lu  <hjl@gnu.org>
1303         * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Remove
1304         `const' from `got'.
1306 2002-01-17  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1308         * sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S: Use 64 bit
1309         instructions for pointer operations.
1310         * sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S: Likewise.
1312 2002-01-17  Andreas Jaeger  <aj@suse.de>
1314         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h: GCC 3.1 has
1315         __uint128_t build-in.
1317         * sysdeps/unix/sysv/linux/configure.in: Fix check for S390 and
1318         PowerPC, sync with 2.2 branch.
1320 2002-01-16  Ulrich Drepper  <drepper@redhat.com>
1322         * posix/getconf.c: Update copyright year.
1323         * nss/getent.c: Likewise.
1324         * nscd/nscd_nischeck.c: Likewise.
1325         * iconv/iconvconfig.c: Likewise.
1326         * iconv/iconv_prog.c: Likewise.
1327         * elf/ldconfig.c: Likewise.
1328         * catgets/gencat.c: Likewise.
1329         * csu/version.c: Likewise.
1330         * elf/ldd.bash.in: Likewise.
1331         * elf/sprof.c (print_version): Likewise.
1332         * locale/programs/locale.c: Likewise.
1333         * locale/programs/localedef.c: Likewise.
1334         * nscd/nscd.c (print_version): Likewise.
1335         * debug/xtrace.sh: Likewise.
1336         * malloc/memusage.sh: Likewise.
1337         * malloc/mtrace.pl: Likewise.
1339 2002-01-16  Andreas Schwab  <schwab@suse.de>
1341         * sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed: Fix regexp to
1342         reliably remove "-ia64" from rtld name.
1344 2002-01-16  Ulrich Drepper  <drepper@redhat.com>
1346         * iconvdata/gb18030.c: Bug fixes and support for more characters.
1347         Patch by Yu Shao <yshao@redhat.com>.
1349 2002-01-16  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1351         * sysdeps/unix/sysv/linux/s390/swapcontext.c: Remove.
1352         * sysdeps/unix/sysv/linux/s390/s390-32/swapcontext.S: New file.
1353         * sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S: New file.
1355 2002-01-14  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1357         * sysdeps/s390/fpu/libm-test-ulps: Update.
1359 2002-01-11  Ulrich Drepper  <drepper@redhat.com>
1361         * elf/elf.h: Update x86 relocations.
1363 2002-01-10  Ulrich Drepper  <drepper@redhat.com>
1365         * locale/programs/charmap.c (new_width): Check whether byte
1366         sequences for both ends of range have the same length.
1368 2002-01-09  Jakub Jelinek  <jakub@redhat.com>
1370         * elf/elf.h (SHN_UNDEF): Remove duplicate definition.
1372 2002-01-09  Jakub Jelinek  <jakub@redhat.com>
1374         * sysdeps/alpha/fpu/e_sqrt.c (__ieee754_sqrt): Don't use multi-line
1375         string literals.
1376         (__full_ieee754_sqrt): Add __attribute_used__.
1378 2002-01-10  Ulrich Drepper  <drepper@redhat.com>
1380         * sysdeps/generic/group_member.c (__group_member): Also check
1381         groups[0] [PR libc/2781].
1383 2002-01-08  Ulrich Drepper  <drepper@redhat.com>
1385         * Makefile (distribute): Add scripts/cpp.
1386         * elf/Makefile (distribute): Add reldep6mod[01234].c,
1387         unwind-dw2.c, unwind-dw2-fde.c, unwind.h, unwind-pe.h,
1388         unwind-dw2-fde.h, and dwarf2.h.
1389         * sysdeps/unix/bsd/bsd4.4/Dist: New file.
1390         * sysdeps/unix/sysv/aix/Dist: Add sysv_termio.h and start-libc.c.
1391         * sysdeps/unix/sysv/linux/ia64/Dist: Add ldd-rewrite.sed.
1392         * sysdeps/unix/sysv/linux/s390/Dist: Likewise.
1394 2002-01-07  Roland McGrath  <roland@frob.com>
1396         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Use
1397         volatile on type of ARGC so the compiler doesn't get clever.
1399 2002-01-07  Andreas Jaeger  <aj@suse.de>
1401         * sysdeps/generic/bits/byteswap.h: Prevent double inclusion.
1402         * sysdeps/i386/bits/byteswap.h: Likewise.
1403         * sysdeps/ia64/bits/byteswap.h: Likewise.
1404         * sysdeps/m68k/bits/byteswap.h: Likewise.
1405         * sysdeps/s390/s390-32/bits/byteswap.h: Likewise.
1406         * sysdeps/s390/s390-64/bits/byteswap.h: Likewise.
1408 2002-01-02  Bruno Haible  <bruno@clisp.org>
1410         * intl/plural.y: Fix %expect count.
1412 2002-01-03  Jakub Jelinek  <jakub@redhat.com>
1414         * elf/Makefile (routines, shared-only-routines): Add
1415         unwind-dw2-fde-glibc instead of unwind-dw2-fde.
1416         * elf/elf.h (PT_GNU_EH_FRAME): Define.
1417         * sysdeps/generic/unwind-dw2-fde-glibc.c: New file.
1418         * sysdeps/generic/unwind-dw2-fde.c (__register_frame_info_bases):
1419         Optimize if .eh_frame section contains no FDEs.
1420         (__register_frame, __deregister_frame_info_bases,
1421         __deregister_frame): Likewise.
1422         * sysdeps/generic/unwind-dw2.c (execute_cfa_program): Fix
1423         DW_CFA_restore handling.
1425 2002-01-07  Stephen L Moshier  <moshier@mediaone.net>
1427         * sysdeps/ieee754/ldbl-96/s_erfl.c (erfcl): Fix K&R header.
1429         * sysdeps/ieee754/ldbl-96/e_lgammal_r.c (sin_pi): Fix typo in test
1430         for x < 0.25 and restore original range reduction method.
1431         (__ieee754_lgammal_r): Make sure signgam is set before returning.
1433 2002-01-07  Ulrich Drepper  <drepper@redhat.com>
1435         * libio/fileops.c (_IO_file_underflow_mmap): New function.
1436         (_IO_file_close_mmap): New function.
1437         (_IO_file_jumps_mmap): New variable.
1438         * libio/wfileops.c (_IO_wfile_underflow): Reset read pointer before
1439         trying to convert rest of byte buffer.
1440         (_IO_wfile_underflow_mmap): New function.
1441         (_IO_wfile_jumps_mmap): New variable.
1442         * libio/iofopen.c (__fopen_maybe_mmap): New function.
1443         (__fopen_internal): New function.  Split out from _IO_new_fopen.
1444         (_IO_new_fopen): Call __fopen_internal.
1445         * libio/iofopen64.c: Just call __fopen_internal.
1446         * libio/iofdopen.c: Call __fopen_maybe_mmap before returning
1447         successfully.
1448         * libio/iolibio.h: Declare __fopen_internal and __fopen_maybe_mmap.
1449         * libio/libioP.h: Declare _IO_file_jumps_mmap, _IO_wfile_jumps_mmap,
1450         _IO_file_close_mmap.
1452         * sysdeps/gnu/_G_config.h: Define _G_MMAP64.
1453         * sysdeps/unix/sysv/linux/cris/_G_config.h: Likewise.
1455         * stdio-common/Makefile (tests): Add tst-rndseek.
1456         * stdio-common/tst-rndseek.c: New file.
1458 2002-01-05  Roland McGrath  <roland@frob.com>
1460         * config.h.in (HAVE_MIG_RETCODE): New #undef.
1461         * sysdeps/mach/hurd/configure.in (hurd_MIG_RETCODE: New macro
1462         swiped from hurd package's aclocal.m4; use it to set HAVE_MIG_RETCODE.
1463         * sysdeps/mach/hurd/configure: Regenerated.
1465 2002-01-03  Ulrich Drepper  <drepper@redhat.com>
1467         * elf/elf.h: Add more TLS definitions.
1469 2002-01-02  Ulrich Drepper  <drepper@redhat.com>
1471         * include/features.h (__GLIBC_MINOR__): Bump to 3.
1473 2002-01-02  Roland McGrath  <roland@frob.com>
1475         * sysdeps/mach/hurd/sigwait.c (__sigwait): Use __sigandset,
1476         __sigisemptyset.  Don't use MASK uninitialized.
1478         * sysdeps/mach/hurd/sigprocmask.c (__sigprocmask): Use __sigorset.
1479         * hurd/hurdinit.c (_hurd_new_proc_init): Use __sigisemptyset.
1480         * hurd/hurdsig.c (_hurd_internal_post_signal): Use __sigismember,
1481         __sigdelset, __sigaddset, __sigorset.
1483         * sysdeps/generic/htonl.c: Use uint32_t instead of u_int32_t.
1484         * sysdeps/generic/htons.c: Use uint16_t instead of u_int16_t.
1486         * hurd/hurdinit.c (_hurd_ports_use): Return EGRATUITOUS when
1487         _hurd_ports is null.
1489         * hurd/hurdsig.c (_hurdsig_init): Conditionalize exception port setup
1490         for old CMU and new OSF Mach interface flavors.
1491         * hurd/hurdfault.c (_hurdsig_fault_init): Likewise.
1492         * sysdeps/mach/hurd/fork.c (__fork): Likewise.
1494         * hurd/hurdsig.c (_hurd_internal_post_signal): Leave msgh_seqno unset.
1496         * sysdeps/mach/hurd/spawni.c (__spawni) [KERN_INVALID_LEDGER]:
1497         Pass extra arguments to task_create for OSF variant.
1498         * sysdeps/mach/hurd/fork.c (__fork): Likewise.
1500         * sysdeps/powerpc/elf/libc-start.c: Make AUXVEC diddling code
1501         conditional on [HAVE_AUX_VECTOR].
1503         * mach/mach/mach_traps.h (thread_switch, __thread_switch): Use
1504         mach_msg_timeout_t as type of final argument.
1506         * hurd/privports.c (__get_privileged_ports):
1507         Change host_priv_t to mach_port_t in argument type.
1508         * hurd/hurd.h (get_privileged_ports, __get_privileged_ports):
1509         Update decls.
1511         * sysdeps/mach/hurd/i386/bits/sigcontext.h: Protect from
1512         multiple inclusion.  Inhibit #error under [_SYS_UCONTEXT_H].
1513         * sysdeps/mach/hurd/alpha/bits/sigcontext.h: Likewise.
1514         * sysdeps/mach/hurd/hppa/bits/sigcontext.h: Likewise.
1515         * sysdeps/mach/hurd/mips/bits/sigcontext.h: Likewise.
1516         * sysdeps/mach/hurd/powerpc/bits/sigcontext.h: Likewise.
1518 2002-01-01  Roland McGrath  <roland@frob.com>
1520         * sysdeps/mach/hurd/errnos.awk: Tighten up device_types.h matching.
1522 2002-01-01  Ulrich Drepper  <drepper@redhat.com>
1524         * include/stdlib.h: Define inlines for the _l variants of the strto*
1525         functions.
1527 2002-01-01  Roland McGrath  <roland@frob.com>
1529         * sysdeps/mach/hurd/powerpc/intr-msg.h: Remove extraneous backslash.
1531         * mach/Machrules (MIG): Set CPP as well as CC.
1533 2001-12-31  Ulrich Drepper  <drepper@redhat.com>
1535         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Always use C
1536         locale to parse /proc/loadavg [PR libc/2760].
1538 2001-12-31  Jakub Jelinek  <jakub@redhat.com>
1540         * elf/dl-conflict.c: Include sys/param.h.
1541         (RESOLVE_CONFLICT_FIND_MAP): Cast r_offset to ElfW(Addr).
1542         * sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): Avoid
1543         warning.
1544         (TRAMPOLINE_TEMPLATE, RTLD_START): Don't use multi-line string
1545         literals to avoid warnings.
1547 2001-12-31  Andreas Jaeger  <aj@suse.de>
1549         * configure.in: Don't check for gsed since we do not use it anywhere.
1551 2001-12-25  Dmitry V. Levin  <ldv@alt-linux.org>
1553         * io/fts.c: Update from BSD to fix memory leaks.
1555 2001-12-25  Dmitry V. Levin  <ldv@alt-linux.org>
1557         * crypt/md5-crypt.c: Realloc error handling memory leak fix.
1558         * elf/chroot_canon.c: Likewise.
1559         * elf/dl-object.c: Likewise.
1560         * iconv/iconv_charmap.c: Likewise.
1561         * iconv/iconv_prog.c: Likewise.
1562         * libio/iogetdelim.c: Likewise.
1563         * locale/lc-time.c: Likewise.
1564         * stdlib/canonicalize.c: Likewise.
1565         * sunrpc/svc.c: Likewise.
1566         * sysdeps/generic/glob.c: Likewise.
1568 2001-12-19  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1570         * sysdeps/unix/sysv/linux/s390/profil-counter.h: Move/copy to ...
1571         * sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: ... here,
1572         remove high order bit from the program counter.
1573         * sysdeps/unix/sysv/linux/s390/s390-64/profil-counter.h: ... and here.
1575 2001-12-19  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1577         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Remove
1578         unnecessary code and add missing reloc types.
1579         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Add empty
1580         case for reloc type R_390_NONE.
1582 2001-12-28  Andreas Jaeger  <aj@suse.de>
1584         * io/bug-ftw3.c: Include string.h for prototypes.
1586         * crypt/md5test.c (main): Remove unused variable.
1588         * dlfcn/modstatic.c: Add prototype to avoid warning.
1590 2001-12-26  Roland McGrath  <roland@frob.com>
1592         * sysdeps/mach/hurd/sigwait.c (__sigwait): When returning immediately,
1593         check only (SS->pending & MASK) for the signal to return.
1594         From Jeroen Dekkers <jeroen@dekkers.cx>.
1596 2001-12-22  Roland McGrath  <roland@frob.com>
1598         * iconv/skeleton.c [!RESET_INPUT_BUFFER && !SAVE_RESET_STATE]:
1599         Use preprocessor #if conditionals instead of `if' to avoid
1600         warnings about divide by zero in dead code.
1602         * hurd/Versions (libc: GLIBC_2.2.5): Add _hurd_port_set,
1603         _hurd_port_init, and __hurd_self_sigstate.
1605         * mach/Versions (libc: GLIBC_2.2.5): Add mig_strncpy.
1607 2001-12-21  Andreas Jaeger  <aj@suse.de>
1609         * elf/dblloadmod1.c: Add prototype to avoid warning.
1610         * elf/dblloadmod2.c: Likewise.
1611         * elf/dblloadmod3.c: Likewise.
1612         * elf/reldepmod5.c: Likewise.
1613         * elf/reldepmod6.c: Likewise.
1615         * elf/dl-conflict.c (_dl_resolve_conflicts): Add unused attribute
1616         for resolve_conflict_map since RESOLVE_CONFLICT_FIND_MAP is not
1617         used on all architectures.
1619         * sunrpc/svc_tcp.c: Add noreturn attribute for
1620         svctcp_rendezvous_abort.
1621         * sunrpc/svc_unix.c: Likewise for svcunix_rendezvous_abort.
1623         * sysdeps/generic/strstr.c (strstr): Add paranthese for assignment
1624         to avoid warning.
1626 2001-12-19  Jakub Jelinek  <jakub@redhat.com>
1628         * manual/llio.texi (aio_fsync): Fix a typo.
1629         Patch by Tammy Fox <tfox@redhat.com>.
1631 2001-12-18  Jakub Jelinek  <jakub@redhat.com>
1633         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (clone): Subtract
1634         stack bias from child stack pointer before passing it to clone syscall.
1636 2001-12-18  Ulrich Drepper  <drepper@redhat.com>
1638         * sysdeps/posix/sysconf.c (__sysconf): Respect POSIX minimum for
1639         _SC_TZNAME_MAX.
1640         * sysdeps/generic/sysconf.c (__sysconf): Likewise.
1641         Reported by Thorsten Kukuk <kukuk@suse.de>.
1643         * sysdeps/unix/grantpt.c (grantpt): Correct typo in comment and
1644         add some casts.
1646         * sysdeps/unix/sysv/linux/grantpt.c: Make __unix_grantpt static.
1648 2001-12-18  Thorsten Kukuk  <kukuk@suse.de>
1650         * sysdeps/unix/sysv/linux/grantpt.c: Make errno results standard
1651         conforming: return EBADF if file descriptor is invalid and EINVAL
1652         if file descriptor is no valid tty.
1653         * login/tst-grantpt.c: New file.
1654         * login/Makefile (tests): Add tst-grantpt.
1656 2001-12-17  Ulrich Drepper  <drepper@redhat.com>
1658         * io/ftw.c (ftw_dir): Handle inaccessibility of toplevel dir
1659         different than implemented in last patch.
1660         * io/bug-ftw3.c: Adjust test for changed handling of
1661         inaccessibility of toplevel dir.
1663 2001-12-16  Roland McGrath  <roland@frob.com>
1665         * nss/nsswitch.c (__nss_next): Don't use __FUNCTION__ as literal.
1666         * grp/initgroups.c (internal_getgrouplist): Likewise.
1668         * hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): Add `break' after
1669         `default:' to silence new GCC warning.
1670         Rewrite cast of lvalue to silence new GCC warning.
1672         * sysdeps/mach/hurd/i386/init-first.c: Avoid multi-line strings in asm.
1674         * sysdeps/mach/hurd/spawni.c: New file, by me with a
1675         couple fixes by Neal H Walfield <neal@cs.uml.edu>.
1677 2001-12-14  Ulrich Drepper  <drepper@redhat.com>
1679         * sysdeps/generic/strstr.c (strstr): Update.  New optimized version.
1680         Patch by Stephen R. van den Berg.
1682         * crypt/md5.h: Define md5_uintptr.
1684 2001-12-13  Ulrich Drepper  <drepper@redhat.com>
1686         * libio/tst_swprintf.c (main): Add test for string argument with
1687         zero precision.
1688         * stdio-common/Makefile (tests): Add tst-sprintf.
1689         * stdio-common/tst-sprintf.c: New file.
1691 2001-12-13  Andreas Schwab  <schwab@suse.de>
1693         * stdio-common/vfprintf.c (process_string_arg): Correctly handle
1694         zero precision with wide character string format.
1696 2001-12-13  Thorsten Kukuk  <kukuk@suse.de>
1698         * sysdeps/posix/cuserid.c (cuserid): If we don't find the UID,
1699         but have a user supplied buffer, return the empty buffer, not NULL.
1701 2001-12-13  Ulrich Drepper  <drepper@redhat.com>
1703         * crypt/md5.c (md5_process_bytes): Correct handling of alignment.
1704         Patch by Eric Sharkey <sharkey@netrics.com>.
1706         * crypt/md5test.c (main): Add test for multiple calls to
1707         __md5_process_bytes to itererate over input string.
1709 2001-12-12  Ulrich Drepper  <drepper@redhat.com>
1711         * nis/nis_findserv.c (__nis_findfastest_with_timeout): Mostly the code
1712         from __nis_findfastest.  Take timeout value from parameter.
1713         (__nis_findfastest): Call __nis_findfastest_with_timeout repeatedly.
1714         * nis/nis_intern.h: Define parameters controlling __nis_findfastest
1715         [PR libc/2520].  Patch by Alexander Belopolsky <alexb@rentec.com>.
1717 2001-12-12  Andreas Jaeger  <aj@suse.de>
1719         * configure.in: Use -nostartfiles -nostdlib for linker tests, fix
1720         combreloc test so that it works in this case.
1722         * sysdeps/arm/dl-machine.h (elf_machine_rela): Fix typo in last patch.
1724 2001-12-12  NIIBE Yutaka  <gniibe@m17n.org>
1726         * sysdeps/sh/Makefile: New file.
1727         * sysdeps/sh/_mcount.S: New file.
1728         * sysdeps/sh/sysdep.h (CALL_MCOUNT): Implemented.
1729         * sysdeps/sh/machine-gmon.h: Remove "NOTYET" comment, as we are ready.
1731 2001-12-11  Ulrich Drepper  <drepper@redhat.com>
1733         * resolv/nss_dns/dns-host.c (getanswer_r): Remove MAX_NR_ADDRS
1734         limitation [PR libc/2564].
1736 2001-12-11  Jakub Jelinek  <jakub@redhat.com>
1738         * elf/Makefile (dl-routines): Add conflict.
1739         (rtld-ldscript-in, rtld-ldscript, rtld-parms): Remove.
1740         (ld.so): Add _begin local symbol.
1741         * elf/elf.h (DT_VALTAGIDX, DT_VALNUM, DT_ADDRTAGIDX, DT_ADDRNUM):
1742         Define.
1743         * elf/dl-deps.c (_dl_build_local_scope): New.
1744         (_dl_map_object_deps): If LD_TRACE_PRELINKING, compute local scopes
1745         of all libraries.
1746         * elf/do-rel.h (VALIDX): Define.
1747         (elf_dynamic_do_rel): If ELF_MACHINE_PLT_REL is defined, don't do
1748         lazy binding for RELA.  If DT_GNU_PRELINKED, DT_RELACOUNT relocations
1749         can be skipped.
1750         * elf/dl-conflict.c: New file.
1751         * elf/dl-lookup.c (_dl_debug_bindings): New.
1752         (_dl_lookup_symbol): Use _dl_debug_bindings.  Reference_name is always
1753         non-NULL.
1754         (_dl_lookup_symbol_skip): Likewise.
1755         (_dl_lookup_versioned_symbol): Likewise.
1756         (_dl_lookup_versioned_symbol_skip): Likewise.
1757         * elf/dl-runtime.c (PLTREL): If ELF_MACHINE_PLT_REL is defined,
1758         define to ElfW(Rel).
1759         * elf/dynamic-link.h (elf_get_dynamic_info): Record selected dynamic
1760         tags in the DT_VALRNGLO..DT_VALRNGHI and DT_ADDRRNGLO..DT_ADDRRNGHI
1761         ranges.
1762         Don't adjust address dynamic tags if l_addr is 0.
1763         * elf/rtld.c (_dl_trace_prelink, _dl_trace_prelink_map): New variables.
1764         (_dl_start): Skip ELF_DYNAMIC_RELOCATE if ld.so is prelinked.
1765         (VALIDX, ADDRIDX): Define.
1766         (_dl_start_final): Initialize _dl_rtld_map's l_map_start and l_map_end.
1767         (dl_main): Print library list for LD_TRACE_PRELINKING.
1768         If prelinking information can be used, skip relocating libraries and
1769         call _dl_resolve_conflicts instead.
1770         (process_envvars): Handle LD_TRACE_PRELINKING envvar.
1771         * elf/dl-load.c (_dl_map_object): Don't create fake libs
1772         if LD_TRACE_PRELINKING.
1773         * include/link.h (struct link_map) [l_info]: Add DT_VALNUM
1774         + DT_ADDRNUM.
1775         * sysdeps/generic/ldsodefs.h (_dl_trace_prelink_map): New declaration.
1776         (DL_DEBUG_PRELINK): Define.
1777         (_dl_resolve_conflicts): Add prototype.
1779         * sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): Reinitialize
1780         .plt for prelinked libraries where prelinking info cannot be used.
1781         (elf_machine_rela): If relocating R_ALPHA_JMP_SLOT in .gnu.conflict
1782         section, use RESOLVE_CONFLICT_FIND_MAP to find out reloc's link_map.
1783         * sysdeps/arm/bits/link.h: New file.
1784         * sysdeps/arm/dl-machine.h (elf_machine_runtime_setup): Save original
1785         content of .got[1].
1786         (ELF_MACHINE_NO_RELA): Only define if RTLD_BOOTSTRAP.
1787         (ELF_MACHINE_PLT_REL): Define.
1788         (elf_machine_rela, elf_machine_rela_relative): New.
1789         (elf_machine_lazy_rel): Reinitialize R_ARM_JUMP_SLOT address instead
1790         of adjusting it if prelinked and prelinking cannot be used.
1791         * sysdeps/i386/bits/link.h: New file.
1792         * sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Save original
1793         content of .got[1].
1794         (ELF_MACHINE_NO_RELA): Only define if RTLD_BOOTSTRAP.
1795         (ELF_MACHINE_PLT_REL): Define.
1796         (elf_machine_rela, elf_machine_rela_relative): New.
1797         (elf_machine_lazy_rel): Reinitialize R_386_JUMP_SLOT address instead
1798         of adjusting it if prelinked and prelinking cannot be used.
1799         * sysdeps/powerpc/dl-machine.h (elf_machine_rela): If relocating
1800         conflicts, skip finaladdr computation.  Use RESOLVE_CONFLICT_FIND_MAP
1801         to find out map for R_PPC_JMP_SLOT relocs.
1802         * sysdeps/sparc/sparc32/dl-machine.h (VALIDX): Define.
1803         (OPCODE_BA): Define.
1804         (elf_machine_runtime_setup): Reinitialize .plt for prelinked
1805         libraries where prelinking info cannot be used.
1806         (sparc_fixup_plt): Renamed from elf_machine_fixup_plt.
1807         (elf_machine_fixup_plt): Call sparc_fixup_plt.
1808         (elf_machine_rela): Set value to 0 if relocating conflicts.
1809         Call sparc_fixup_plt for R_SPARC_JMP_SLOT.
1810         * sysdeps/sparc/sparc64/dl-machine.h (VALIDX): Define.
1811         (sparc64_fixup_plt): Fix a typo.
1812         (elf_machine_rela): Set value to 0 if relocating conflicts.
1813         Handle R_SPARC_JMP_SLOT relocs when relocating conflicts.
1814         (elf_machine_runtime_setup): Reinitialize .plt for prelinked
1815         libraries where prelinking info cannot be used.
1816         * sysdeps/sh/bits/link.h: New file.
1817         * sysdeps/sh/dl-machine.h (elf_machine_runtime_setup): Save original
1818         content of .got[1].
1819         (elf_machine_lazy_rel): Reinitialize R_SH_JMP_SLOT address instead
1820         of adjusting it if prelinked and prelinking cannot be used.
1821         * sysdeps/s390/s390-32/bits/link.h: New file.
1822         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_runtime_setup):
1823         Save original content of .got[1].
1824         (elf_machine_lazy_rel): Reinitialize R_390_JMP_SLOT address instead
1825         of adjusting it if prelinked and prelinking cannot be used.
1826         * sysdeps/s390/s390-64/bits/link.h: New file.
1827         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_runtime_setup):
1828         Save original content of .got[1].
1829         (elf_machine_lazy_rel): Reinitialize R_390_JMP_SLOT address instead
1830         of adjusting it if prelinked and prelinking cannot be used.
1831         * sysdeps/x86_64/bits/link.h: New file.
1832         * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup):
1833         Save original content of .got[1].
1834         (elf_machine_lazy_rel): Reinitialize R_X86_64_JMP_SLOT address instead
1835         of adjusting it if prelinked and prelinking cannot be used.
1837 2001-12-11  Ulrich Drepper  <drepper@redhat.com>
1839         * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Use sizeof
1840         where appropriate instead of numbers.  Little optimizations.
1842 2001-12-10  Roland McGrath  <roland@frob.com>
1844         * sysdeps/mach/hurd/bind.c (bind): Don't deallocate IFSOCK if we never
1845         set it.
1847         * shlib-versions [USE_IN_LIBIO] (.*-.*-gnu-gnu.*): Set default
1848         set to GLIBC_2.2.5, not GLIBC_2.2.4.
1850         * sysdeps/mach/hurd/configure.in (libc_cv_gcc_unwind_find_fde):
1851         Fix conditionals so this is set by default for stdio and not for libio.
1852         * sysdeps/mach/hurd/configure: Regenerated.
1854 2001-12-10  Thorsten Kukuk  <kukuk@suse.de>
1856         * io/ftw.c (ftw_startup): Check, if the path is search and readable.
1858 2001-12-10  Ulrich Drepper  <drepper@redhat.com>
1860         * io/Makefile (tests): Add bug-ftw3.
1861         * io/bug-ftw3.c: New file.
1863         * sysdeps/generic/glob.c (glob): Return only pattern if nothing
1864         matches and GLOB_NOCHECK is set.
1865         * posix/globtest.sh: Correct expected result for NOCHECK test.
1867         * po/ca.po: Update from translation team.
1869 2001-12-09  Ulrich Drepper  <drepper@redhat.com>
1871         Implement transliteration of characters in strings of the locale
1872         definitions.
1873         * locale/programs/linereader.c: Adjust for additional parameter to
1874         lr_token.
1875         (get_string): If character <Uxxxx> is not found try to transliterate
1876         it.
1877         * locale/programs/ld-ctype.c: Adjust for additional parameter to
1878         lr_token.  Add const to charmap parameter of all functions.
1879         (find_translit, find_translit2): New functions.
1880         * locale/programs/charmap.c: Adjust for additional parameter to
1881         lr_token.
1882         * locale/programs/repertoire.c: Likewise.
1883         * locale/programs/linereader.h: Likewise.
1884         * locale/programs/ld-address.c: Likewise.  Add const to charmap
1885         parameter of all functions.
1886         * locale/programs/ld-collate.c: Likewise.
1887         * locale/programs/ld-identification.c: Likewise.
1888         * locale/programs/ld-measurement.c: Likewise.
1889         * locale/programs/ld-messages.c: Likewise.
1890         * locale/programs/ld-monetary.c: Likewise.
1891         * locale/programs/ld-name.c: Likewise.
1892         * locale/programs/ld-numeric.c: Likewise.
1893         * locale/programs/ld-paper.c: Likewise.
1894         * locale/programs/ld-paper.c: Likewise.
1895         * locale/programs/ld-telephone.c: Likewise.
1896         * locale/programs/ld-time.c: Likewise.
1897         * locale/programs/locfile.c: Likewise.
1898         * locale/programs/localedef.c: Likewise.
1899         * locale/programs/localedef.h: Likewise.
1900         * locale/programs/locfile.h: Likewise.  Add declaration for
1901         find_translit.
1902         * locale/programs/simple-hash.c: Add const to first parameter of
1903         find_entry, iterate_table, and lookup.
1904         * locale/programs/simple-hash.h: Likewise.
1905         * locale/localeinfo.h: Don't define __LC_LAST here.  Include <locale.h>
1906         instead.
1907         * include/locale.h: Define __LC_LAST.
1908         * iconv/Makefile (CFLAGS-linereader.c): Define to -DNO_TRANSLITERATION.
1910 2001-12-07  Geoff Keating  <geoffk@redhat.com>
1912         * sysdeps/powerpc/Dist: Update for recent FP changes.
1913         * sysdeps/powerpc/fpu/Dist: Likewise.
1915 2001-12-07  Andreas Schwab  <schwab@suse.de>
1917         * sysdeps/unix/sysv/linux/opensock.c: Include <string.h>.
1919 2001-12-06  Geoff Keating  <geoffk@redhat.com>
1921         * sysdeps/powerpc/Makefile (sysdep_routines): Don't build the fpr
1922         save/restore functions here.
1923         (libm-support): Don't define these functions here.
1924         * sysdeps/powerpc/fpu/Makefile: Build the fpr save/restore
1925         functions here.
1926         * sysdeps/powerpc/fe_nomask.c: Move to...
1927         * sysdeps/powerpc/fpu/fe_nomask.c: ... here.
1928         * sysdeps/powerpc/fprrest.S: Move to...
1929         * sysdeps/powerpc/fpu/fprrest.S: ... here.
1930         * sysdeps/powerpc/fprsave.S: Move to...
1931         * sysdeps/powerpc/fpu/fprsave.S: ... here.
1933 2001-12-06  Ulrich Drepper  <drepper@redhat.com>
1935         * sysdeps/unix/sysv/linux/opensock.c: New file.
1937 2001-12-06  Geoff Keating  <geoffk@redhat.com>
1939         * config.make.in (with-fp): Define from configure.
1940         * configure.in: Substitute with_fp.
1941         * configure: Regenerate.
1942         * sysdeps/powerpc/Makefile: Set -msoft-float when --without-fp is
1943         specified, and don't change FPU environment.
1945 2001-12-06  Ulrich Drepper  <drepper@redhat.com>
1947         * libio/vasprintf.c (_IO_vasprintf): Free buffer on failure.
1948         * assert/assert.c: Check result of __asprintf call and don't use
1949         string if it failed.
1950         * assert/assert-perr.c: Likewise.
1951         * inet/rcmd.c: Likewise.
1952         * locale/programs/localedef.c (main): Check result of
1953         construct_output_path and exit if it failed.
1954         (construct_output_path): Check result of asprintf and mkdir calls and
1955         fail if they failed.
1956         * posix/getopt.c: Check result of __asprintf calls and fail if
1957         they failed.
1958         Patch by Dmitry V. Levin <ldv@alt-linux.org>.
1960 2001-12-05  Ulrich Drepper  <drepper@redhat.com>
1962         * sysdeps/generic/strcasecmp.c (__strcasecmp): Little performance
1963         patch.
1964         * sysdeps/generic/strncase.c: Likewise.
1965         * string/tester.c: Add tests for strcasecmp and strncasecmp.
1967 2001-12-05  Geoff Keating  <geoffk@redhat.com>
1969         * scripts/cpp: Test the exit status from 'type', not 'awk'.
1971         * sysdeps/powerpc/__longjmp.S: Don't restore FP registers.
1972         * sysdeps/powerpc/fpu/__longjmp.S: Do restore FP registers.
1973         * sysdeps/powerpc/setjmp.S: Don't save FP registers.
1974         * sysdeps/powerpc/fpu/setjmp.S: Do save FP registers.
1975         * sysdeps/powerpc/fclrexcpt.c: Move to...
1976         * sysdeps/powerpc/fpu/fclrexcpt.c: ... here.
1977         * sysdeps/powerpc/fpu_control.h: Move to...
1978         * sysdeps/powerpc/fpu/fpu_control.h: ... here.
1980 2001-12-05  Ulrich Drepper  <drepper@redhat.com>
1982         * iconvdata/ibm1129.h: Remove duplicate mappings.
1983         * iconvdata/ibm937.c: Handle overflow errors.  Handle new tables.
1984         * iconvdata/ibm937.h: Reorganize table to safe a lot of space.
1985         Patch by Masahide Washizawa <WASHI@jp.ibm.com>.
1987         * timezone/zic.c: Fix handling of turnaround times.
1988         Patch by Arthur David Olson <olsona@dc37a.nci.nih.gov>.
1990 2001-12-02  Moshe Olshansky  <OLSHANSK@il.ibm.com>
1992         * sysdeps/ieee754/dbl-64/e_remainder.c (__ieee754_remainder): Fix
1993         overflow problem.
1995 2001-12-05  Ulrich Drepper  <drepper@redhat.com>
1997         * posix/regex.c: For use outside glibc defined bounded pointer
1998         macros here.  Patch by Jim Meyering <jim@meyering.net>.
2000         * iconvdata/Makefile (modules): Add TCVN5712-1.
2001         * iconvdata/TESTS: Add TCVN5712-1.
2002         * iconvdata/gconv-modules: Likewise.
2003         * iconvdata/tcvn5712-1.c: New file.
2004         * iconvdata/testdata/TCVN-5712: New file.
2005         * iconvdata/testdata/TCVN-5712..UTF8: New file.
2007 2001-12-04  Ulrich Drepper  <drepper@redhat.com>
2009         * iconvdata/cp1258.c: Optimize conversion from UCS4.
2011 2001-12-02  Roland McGrath  <roland@frob.com>
2013         * mach/Makefile, mach/Machrules: Move comments out of \ continuations.
2015         * hurd/hurd.h (__hurd_fail): Add `break;' to silence new gcc-3 warning.
2016         Reported by Jeff Bailey <jbailey@nisa.net>.
2018         * hurd/hurd.h (_hurd_umask): Remove volatile qualifier from decl.
2019         Reported by Jeff Bailey <jbailey@nisa.net>.
2021         * mach/Makefile ($(objpfx)mach-syscalls.mk): Pass $(CFLAGS) to $(CC).
2022         * mach/Machrules ($(objpfx)%.udeps static pattern rule): Likewise.
2023         Reported by Jeff Bailey <jbailey@nisa.net>.
2025 2001-12-01  Roland McGrath  <roland@frob.com>
2027         * sysdeps/mach/hurd/configure.in (libc_cv_gcc_unwind_find_fde): Add
2028         missing backslash in test arguments.
2029         * sysdeps/mach/hurd/configure: Regenerated.
2031 2001-11-26  Roland McGrath  <roland@frob.com>
2033         * hurd/hurdinit.c (_hurd_ports_use): Check if _hurd_ports is null.
2034         Reported by John Tobey <jtobey@john-edwin-tobey.org>.
2036 2001-11-30  Ulrich Drepper  <drepper@redhat.com>
2038         * iconvdata/Makefile (modules): Add ARMSCII-8.
2039         * iconvdata/gconv-modules: Add entries for ARMSCII-8.
2040         * iconvdata/armscii-8.c: New file.
2042 2001-11-29  Jakub Jelinek  <jakub@redhat.com>
2044         * sysdeps/generic/glob.c (next_brace_sub): Return NULL if braces
2045         don't match, fix {{a,b},c} globbing, clean up.
2046         Patch by Flavio Veloso <flaviovs@magnux.com>.
2047         * posix/globtest.sh: Add new tests.
2049 2001-11-29  Andreas Jaeger  <aj@suse.de>
2051         * sysdeps/unix/sysv/linux/x86_64/Versions: Add arch_prctl.
2052         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Add arch_prctl call.
2054         * sysdeps/generic/abort.c: Include libioP.h for
2055         _IO_flush_all_lockp prototype.
2057 2001-11-29  Ulrich Drepper  <drepper@redhat.com>
2059         * posix/regex.h: Define __restrict_arr correctly.
2061 2001-11-28  Ulrich Drepper  <drepper@redhat.com>
2063         * iconvdata/ibm1163.c: New file.
2064         * iconvdata/ibm1163.h: New file.
2065         * iconvdata/ibm1164.c: New file.
2066         * iconvdata/ibm1164.h: New file.
2067         * iconvdata/TESTS: Add entries for IBM1163 and IBM1164.
2068         * iconvdata/Makefile: Likewise.
2069         * iconvdata/testdata/IBM1163: New file.
2070         * iconvdata/testdata/IBM1163..UTF8: New file.
2071         * iconvdata/testdata/IBM1164: New file.
2072         * iconvdata/testdata/IBM1164..UTF8: New file.
2073         Patch by Masahide Washizawa <WASHI@jp.ibm.com>.
2075         * iconvdata/ibm1046.h: Optimize.  Remove duplicate mappings.
2076         * iconvdata/ibm1124.h: Likewise.
2077         * iconvdata/ibm1132.h: Likewise.
2078         * iconvdata/ibm1133.h: Likewise.
2079         * iconvdata/ibm1160.h: Likewise.
2080         * iconvdata/ibm1161.h: Likewise.
2081         * iconvdata/ibm1162.h: Likewise.
2082         * iconvdata/ibm856.h: Likewise.
2083         * iconvdata/ibm922.h: Likewise.
2084         * iconvdata/ibm930.h: Likewise.
2085         * iconvdata/ibm932.h: Likewise.
2086         * iconvdata/ibm933.h: Likewise.
2087         * iconvdata/ibm935.h: Likewise.
2088         * iconvdata/ibm937.h: Likewise.
2089         * iconvdata/ibm939.h: Likewise.
2090         * iconvdata/ibm943.h: Likewise.
2091         * iconvdata/ibm930.c: Pretty printing.
2092         * iconvdata/ibm937.c: Avoid access accross array boundary.
2094         * iconv/gconv_open.c (__gconv_open): Empty codeset name now means using
2095         the current locale's codeset.
2096         * iconv/iconv_open.c (iconv_open): Don't strip out everything for
2097         empty input string.
2098         * iconv/iconv_prog.c: Pass empty strings as default value for to-
2099         and from-charset.  Don't determine locale's charset here.
2101         * libio/genops.c (_IO_flush_all_lockp): New function.  The same code
2102         as the old _IO_flush_all but lock only if parameter is nonzero.
2103         (_IO_flush_all): Call _IO_flush_all_lockp with 1 as parameter.
2104         * libio/libioP.h: Add prototype for _IO_flush_all_lockp.
2105         * sysdeps/generic/abort.c (fflush): Define to _IO_flush_all_lockp(0)
2106         if libio is used [PR libc/2575].
2108 2001-11-28  Jakub Jelinek  <jakub@redhat.com>
2110         * sysdeps/sparc/fpu/bits/mathinline.h (__signbitf, __signbit,
2111         __signbitl): Only define for ISO C99.
2113 2001-11-22  Thorsten Kukuk  <kukuk@suse.de>
2115         * nss/nss_files/files-hosts.c (_nss_files_get##name##_r): Set
2116         herrnop to NETDB_INTERNAL if we run out of buffer space.
2118 2001-11-28  Ulrich Drepper  <drepper@redhat.com>
2120         * nss/nss_files/files-XXX.c (internal_getent): Correct input
2121         overflow test for platforms with signed char.
2122         Reported by Andrew Haley <aph@cambridge.redhat.com>.
2124 2001-11-28  Bruno Haible  <bruno@clisp.org>
2126         * locale/programs/simple-hash.c (lookup_2): Remove function.
2127         (insert_entry_2): Call lookup instead of lookup_2.
2129 2001-03-04  Bruno Haible  <bruno@clisp.org>
2131         * intl/dcigettext.c (DCIGETTEXT): Increment path_max proportionally.
2133 2001-10-31  Bruno Haible  <bruno@clisp.org>
2135         * intl/plural.y: Include <stddef.h>, needed for NULL with SunOS 4 cc.
2137 2001-03-21  Bruno Haible  <bruno@clisp.org>
2139         * intl/dcigettext.c (_nl_state_lock): Mark as #ifdef _LIBC. AIX 3 xlc
2140         chokes on empty macro arguments.
2141         * intl/plural.y: Add #pragma for alloca on AIX 3.
2143 2001-11-27  Ulrich Drepper  <drepper@redhat.com>
2145         * intl/dcigettext.c (guess_category_value): Only implement for
2146         glibc.  Otherwise rely on function _nl_locale_name which isn't
2147         present in the glibc sources.
2149 2001-09-24  Bruno Haible  <bruno@clisp.org>
2151         * intl/loadmsgcat.c (_nl_init_domain_conv): Also enable
2152         transliteration when building on a glibc system but outside glibc.
2154 2001-09-22  Bruno Haible  <bruno@clisp.org>
2156         * intl/plural-eval.c: New file, extracted from dcigettext.c.
2157         * intl/dcigettext.c (plural_eval): Remove function, moved to
2158         intl/plural-eval.c.
2159         (plural_lookup): Call PLURAL_EVAL instead of plural_eval.
2160         Include plural-eval.c.
2162 2001-09-22  Bruno Haible  <bruno@clisp.org>
2164         * intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Reject numbers that
2165         don't start with a digit; nplurals must be positive.
2167 2001-09-02  Bruno Haible  <bruno@clisp.org>
2169         * intl/plural-exp.h: New file, extracted from gettextP.h.
2170         * intl/plural-exp.c: New file, extracted from loadmsgcat.c.
2171         * intl/gettextP.h (struct expression, struct parse_args,
2172         __gettext_free_exp, __gettextparse): Move to plural-exp.h.
2173         * intl/loadmsgcat.c: Include plural-exp.h.
2174         (PLURAL_PARSE): Move macro to plural-exp.h.
2175         (plvar, plone, germanic_plural, INIT_GERMANIC_PLURAL): Move to
2176         plural-exp.c.
2177         (_nl_load_domain): Move plural handling code to plural-exp.c.  Call
2178         EXTRACT_PLURAL_EXPRESSION.
2179         (_nl_unload_domain): Update.
2180         * intl/dcigettext.c: Include plural-exp.h.
2181         * intl/plural.y: Include plural-exp.h, not gettextP.h.
2182         (FREE_EXPRESSION): Move macro to plural-exp.h.
2183         * intl/Makefile (routines): Add plural-exp.
2184         (distribute): Add plural-exp.h.
2186 2001-07-28  Bruno Haible  <bruno@clisp.org>
2188         * intl/l10nflist.c (_nl_normalize_codeset): Cast isalnum, isalpha,
2189         isdigit, tolower argument to 'unsigned char'.
2190         * intl/loadmsgcat.c (_nl_load_domain): Cast isspace argument to
2191         'unsigned char'.
2192         * intl/localealias.c (read_alias_file): Cast isspace argument to
2193         'unsigned char'.
2195 2001-10-20  Bruno Haible  <bruno@clisp.org>
2197         Assume strchr() exists. (Without it, intl/explodename.c wouldn't link
2198         anyway.)
2199         * intl/dcigettext.c (strchr): Remove fallback definition; it conflicts
2200         with the variable 'index' in plural_lookup.
2201         * intl/l10nflist.c (strchr): Likewise.
2202         * intl/localealias.c (strchr): Likewise.
2204         Assume <stddef.h>, <stdlib.h>, <string.h>, <locale.h> exist.
2205         * intl/bindtextdom.c: Likewise.
2206         * intl/dcigettext.c: Likewise.
2207         * intl/dgettext.c: Likewise.
2208         * intl/dngettext.c: Likewise.
2209         * intl/explodename.c: Likewise.
2210         * intl/finddomain.c: Likewise.
2211         * intl/gettext.c: Likewise.
2212         * intl/l10nflist.c: Likewise.
2213         * intl/loadmsgcat.c: Likewise.
2214         * intl/localealias.c: Likewise.
2215         * intl/ngettext.c: Likewise.
2216         * intl/textdomain.c: Likewise.
2217         * intl/gettext.h: Assume <limits.h> exists.
2219 2001-11-27  Ulrich Drepper  <drepper@redhat.com>
2221         * stdio-common/Makefile (tests): Add scanf11.
2222         * stdio-common/scanf11.c: New file.
2224 2001-11-26  Ulrich Drepper  <drepper@redhat.com>
2226         * version.h (RELEASE): Define as development.
2227         (VERSION): Set to 2.2.90.
2229 2001-11-22  Thorsten Kukuk  <kukuk@suse.de>
2231         * nis/nss_compat/compat-grp.c: Print group id as unsigned long.
2232         * nis/nss_nis/nis-grp.c: Likewise.
2233         * nis/nss_nisplus/nisplus-grp.c: Likewise.
2235         * nis/nss_compat/compat-pwd.c: Print user id as unsigned long.
2236         * nis/nss_nis/nis-pwd.c: Likewise.
2237         * nis/nss_nisplus/nisplus-pwd.c: Likewise.
2239         * nis/nss_nis/nis-publickey.c: Use strtoul instead of atoi.
2240         * nis/nss_nisplus/nisplus-parser.c: Likewise.
2241         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
2243         * nscd/grpcache.c: Use strtoul instead of atol.
2244         * nscd/pwdcache.c: Likewise.
2245         * nss/getent.c: Likewise.
2247 2001-11-27  Paul Eggert  <eggert@twinsun.com>
2249         * sysdeps/posix/tempname.c (__gen_tempname): Try at least
2250         ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
2252 2001-11-19  Bruno Haible  <bruno@clisp.org>
2254         * locale/programs/simple-hash.c (insert_entry_2): Resize at 75%, not
2255         90%.
2256         (compute_hashval): Shift by 9 bits, not by 4 bits. This drastically
2257         improves the quality of the hash function, especially for short
2258         strings.
2260 2001-11-26  Ulrich Drepper  <drepper@redhat.com>
2262         * stdio-common/vfscanf.c: If incomplete nan of inf(inity) strings
2263         are found call conv_error and not input_error [PR libc/2669].
2265         * math/bits/mathcalls.h: Mark ceil and floor as const.
2266         Reported by David Mosberger.
2268 2001-11-21  Jim Meyering  <meyering@lucent.com>
2270         * posix/regex.c (iswctype, mbrtowc, wcslen, wcscoll, wcrtomb) [_LIBC]:
2271         Define to be __-prefixed.
2272         Remove unnecessary duplication in `#ifdef _LIBC' blocks.
2274 2001-11-26  Andreas Jaeger  <aj@suse.de>
2276         * sysdeps/unix/sysv/linux/hppa/brk.c: Remove __brk_addr alias,
2277         avoid warning.
2279 2001-11-26  Stephen L Moshier <moshier@mediaone.net>
2281         * sysdeps/ieee754/ldbl-128/e_log10l.c (L102B): Fix typo in
2282         initialization.
2284         * sysdeps/ieee754/ldbl-128/e_coshl.c (__ieee754_coshl): Remove
2285         unused variables.  Fix threshold for returning 1.0.
2287         * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (neval, deval): Constify
2288         argument.
2290         * sysdeps/ieee754/ldbl-128/s_erfl.c (neval, deval): Likewise, and
2291         remove unused variables.
2293         * sysdeps/ieee754/ldbl-128/e_j0l.c (neval, deval): Likewise.
2295         * sysdeps/ieee754/ldbl-128/e_j1l.c (neval, deval): Likewise, and
2296         include local math header files.
2298 2001-11-22  Andreas Jaeger  <aj@suse.de>
2300         * sysdeps/ieee754/ldbl-96/s_ilogbl.c (__ilogbl): Add brace to
2301         avoid warning.
2303 2001-11-21  Andreas Jaeger  <aj@suse.de>
2305         * sysdeps/unix/sysv/linux/x86_64/sys/debugreg.h: New file.
2307         * sysdeps/unix/sysv/linux/x86_64/Makefile (sysdep_headers): Add
2308         sys/debugreg.h
2310 2001-11-15  Andreas Jaeger  <aj@suse.de>
2312         * include/features.h (__GLIBC_HAVE_LONG_LONG): Define for
2313         compilers that support it.
2315         * posix/sys/types.h: Use __GLIBC_HAVE_LONG_LONG.
2316         * sysdeps/unix/sysv/linux/bits/types.h: Likewise.
2317         * stdlib/stdlib.h: Likewise.
2319 2001-11-17  Ulrich Drepper  <drepper@redhat.com>
2321         * posix/regex.c (byte_re_match_2_internal): For gcc replace switch
2322         statement with gotos.
2323         Based on a patch by Paolo Bonzini <bonzini@pc-amo3.elet.polimi.it>.
2325 2001-11-16  Stephen L Moshier  <moshier@mediaone.net>
2327         * sysdeps/ieee754/ldbl-96/s_erfl.c (__erfcl): Fix K&R header.
2329 2001-11-15  Ulrich Drepper  <drepper@redhat.com>
2331         * sysdeps/generic/unwind-dw2-fde.c: Don't use recursive mutexes.
2333 2001-10-02  Jakub Jelinek  <jakub@redhat.com>
2334             H.J. Lu  <hjl@gnu.org>
2336         * Versions.def (libc): Add GCC_3.0.
2337         * configure.in (libc_cv_gcc_static_libgcc): Set to -static-libgcc
2338         if gcc supports this flag.
2339         (EXPORT_UNWIND_FIND_FDE): Define unless target configure disables it.
2340         (gcc3): Allow glibc to be compiled with gcc 3.x.
2341         * config.h.in (EXPORT_UNWIND_FIND_FDE): Add.
2342         * config.make.in (static-libgcc, unwind-find-fde): Add.
2343         * Makerules (build-shlib-helper, build-module-helper): Use it.
2344         * scripts/versions.awk: Make sure GLIBC_ versions come first.
2345         * elf/soinit.c (__libc_global_ctors): Set tbases and dbases if
2346         necessary.
2347         (_fini): Call __deregister_frame_info_bases if
2348         __register_frame_info_bases was used to register.
2349         * elf/Versions (__register_frame_info, __deregister_frame_info): Add
2350         for GLIBC_2.0.
2351         (__register_frame_info_bases, __register_frame_info_table_bases,
2352         __deregister_frame_info_bases, _Unwind_Find_FDE): Add for GCC_3.0.
2353         * elf/Makefile (routines): Add unwind-dw2-fde.
2354         (shared-only-routines): Add unwind-dw2-fde.
2355         * sysdeps/alpha/gccframe.h: New file.
2356         * sysdeps/arm/gccframe.h: New file.
2357         * sysdeps/generic/framestate.c: New file.
2358         * sysdeps/generic/dwarf2.h: New file.
2359         * sysdeps/generic/gccframe.h (struct object): Update from gcc 3.0.
2360         * sysdeps/generic/unwind-dw2-fde.c: New file.
2361         * sysdeps/unix/sysv/linux/ia64/unwind-dw2-fde.c: New file.
2362         * sysdeps/generic/unwind-dw2-fde.h: New file.
2363         * sysdeps/generic/unwind-dw2.c: New file.
2364         * sysdeps/generic/unwind-pe.h: New file.
2365         * sysdeps/generic/unwind.h: New file.
2366         * sysdeps/hppa/gccframe.h: New file.
2367         * sysdeps/i386/gccframe.h: New file.
2368         * sysdeps/m68k/gccframe.h: New file.
2369         * sysdeps/mips/gccframe.h: New file.
2370         * sysdeps/powerpc/gccframe.h: New file.
2371         * sysdeps/s390/gccframe.h: New file.
2372         * sysdeps/sh/gccframe.h: New file.
2373         * sysdeps/sparc/gccframe.h: New file.
2374         * sysdeps/vax/gccframe.h: New file.
2375         * sysdeps/unix/sysv/linux/configure.in (libc_cv_gcc_unwind_find_fde):
2376         Set on all architectures except ia64.
2377         * sysdeps/mach/hurd/configure.in (libc_cv_gcc_unwind_find_fde): Set
2378         for i386.
2379         * sysdeps/mach/hurd/i386/Versions (__register_frame_info,
2380         __deregister_frame_info): Move to elf/Versions.
2381         * sysdeps/unix/sysv/linux/m68k/Versions: Likewise.
2382         * sysdeps/unix/sysv/linux/arm/Versions: Likewise.
2383         * sysdeps/unix/sysv/linux/alpha/Versions: Likewise.
2384         * sysdeps/unix/sysv/linux/i386/Versions: Likewise.
2385         * sysdeps/unix/sysv/linux/mips/Versions: Likewise.
2386         * sysdeps/unix/sysv/linux/powerpc/Versions: Likewise.
2387         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
2388         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
2389         * sysdeps/unix/sysv/linux/sparc/sparc64/Versions: Likewise.
2390         * sysdeps/mach/hurd/i386/Makefile (sysdep-routines): Add framestate.
2391         * sysdeps/unix/sysv/linux/arm/Makefile: Likewise.
2392         * sysdeps/unix/sysv/linux/alpha/Makefile: Likewise.
2393         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
2394         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
2395         * sysdeps/unix/sysv/linux/mips/Makefile: Likewise.
2396         * sysdeps/unix/sysv/linux/powerpc/Makefile: Likewise.
2397         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
2398         * sysdeps/unix/sysv/linux/sparc/Makefile: Likewise.
2400 2001-11-15  Jeff Law  <law@redhat.com>
2402         * posix/regex.c (uintptr_t): Do not provide a definition if the
2403         system provided one.
2405 2001-11-13  Roland McGrath  <roland@frob.com>
2407         * stdio-common/tmpfile.c: Moved to ...
2408         * sysdeps/generic/tmpfile.c: ... here.
2409         * sysdeps/mach/hurd/tmpfile.c: New file.
2411         * hurd/fopenport.c (__fopenport): Renamed from fopenport.
2412         [USE_IN_LIBIO] (fopencookie): #define as _IO_fopencookie.
2413         (fopenport): Define as weak alias.
2415         * libio/iofopncook.c (_IO_fopencookie): Move forward declaration ...
2416         * libio/libioP.h: ... to here.
2418 2001-11-12  Ulrich Drepper  <drepper@redhat.com>
2420         * elf/dl-reloc.c (_dl_relocate_object): Avoid iterating over
2421         program header twice.  Construct list with the needed information.
2423 2001-11-10  Ulrich Drepper  <drepper@redhat.com>
2425         * po/ca.po: Update from translation team.
2427         * elf/dl-load.c (_dl_map_object_from_fd): Remove use of
2428         _dl_pf_to_prot.  Use arithmetic operation using PF_TO_PROT macro.
2429         * sysdeps/generic/ldsodefs.h (PF_TO_PROT): New macro.
2430         * elf/dl-reloc.c (_dl_relocate_object): Likewise.
2432 2001-11-10  Andreas Jaeger  <aj@suse.de>
2434         * sysdeps/ieee754/ldbl-128/e_log2l.c: New file.
2435         * sysdeps/ieee754/ldbl-128/e_log10l.c: Likewise.
2436         Contributed by Stephen L Moshier <moshier@mediaone.net>.
2438 2001-11-09  Ulrich Drepper  <drepper@redhat.com>
2440         * elf/dl-minimal.c (realloc): Handle NULL for first parameter
2441         correctly.
2442         * elf/dl-load.c (is_dst): New function.
2443         (_dl_dst_count): Use is_dst to check for DST variable.
2444         (_dl_dst_substitute): Likewise.
2446 2001-11-09  Roland McGrath  <roland@frob.com>
2448         Hurd/PowerPC port contributed by Peter Bruin <pjbruin@dds.nl>.
2449         * sysdeps/mach/hurd/powerpc/exc2signal.c: New file.
2450         * sysdeps/mach/hurd/powerpc/init-first.c: New file.
2451         * sysdeps/mach/hurd/powerpc/intr-msg.h: New file.
2452         * sysdeps/mach/hurd/powerpc/longjmp-ts.c: New file.
2453         * sysdeps/mach/hurd/powerpc/register-dump.h: New file.
2454         * sysdeps/mach/hurd/powerpc/sigreturn.c: New file.
2455         * sysdeps/mach/hurd/powerpc/static-start.S: New file.
2456         * sysdeps/mach/hurd/powerpc/trampoline.c: New file.
2457         * sysdeps/mach/hurd/powerpc/bits/sigcontext.h: New file.
2458         * sysdeps/mach/hurd/powerpc/Dist: New file.
2460         * hurd/privports.c (__get_privileged_ports):
2461         Only contact the proc server if necessary for this call.
2462         Suggested by Neal H Walfield <neal@cs.uml.edu>.
2463         Check error return for mach_port_mod_refs.
2465 2001-11-09  Andreas Schwab  <schwab@suse.de>
2467         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: New file.
2469 2001-11-09  Ulrich Drepper  <drepper@redhat.com>
2471         * elf/dl-load.c (lose): Remove some unnecessary code.  The new
2472         object is always the last in the list.
2473         (_dl_map_object_from_fd): Delete code to remove from object list
2474         when DF_1_NOOPEN is seen.  This is done in lose.
2476 2001-11-08  Ulrich Drepper  <drepper@redhat.com>
2478         * elf/dl-object.c (_dl_new_object): Various small optimizations.
2480 2001-11-07  Ulrich Drepper  <drepper@redhat.com>
2482         * sysdeps/generic/dl-cache.c: Optimize SEARCH_CACHE and
2483         HWCAP_CHECK macro code.
2485         * elf/dl-misc.c (_dl_sysdep_read_whole_file): Optimize code a bit.
2486         Now returns MAP_FAILED on error.
2487         * elf/rtld.c: Adjust caller.
2488         * sysdeps/generic/dl-cache.c: Likewise.
2489         * sysdeps/generic/ldsodefs.h: Adjust description.
2491         * elf/dl-version.c (match_symbol): Optimize error handling for size.
2492         (_dl_check_map_versions): Likewise.
2494 2001-11-06  Ulrich Drepper  <drepper@redhat.com>
2496         * elf/dl-load.c (_dl_map_object_from_fd): Don't call
2497         _dl_signal_error directly, always use lose.  Set fd to -1 after
2498         file is closed.
2499         (lose): Don't call close if fd == -1.
2501 2001-11-07  Kaoru Fukui  <k_fukui@highway.ne.jp>
2503         * manual/charset.texi: Fix typo @w[ISO 6937] to  @w{ISO 6937}.
2504          Also fix typo @code {mbsinit} to @code{mbsinit}.
2506 2001-11-06  Ulrich Drepper  <drepper@redhat.com>
2508         * elf/dl-profile.c: Replace state variable with simple flag named
2509         running.  Remove commented-out code.
2511         * elf/dl-load.c (decompose_rpath): Optimize error handling for size.
2512         (_dl_init_paths): Likewise.
2513         (_dl_map_object_from_fd): Likewise.
2514         * elf/dl-reloc.c (_dl_relocate_object): Likewise.
2516 2001-11-06  Roland McGrath  <roland@frob.com>
2518         * sysdeps/mach/powerpc/sysdep.h: Include sysdeps/unix/powerpc/sysdep.h
2519         instead of sysdeps/powerpc/elf/sysdep.h and sysdeps/unix/sysdep.h.
2521         * sysdeps/unix/sysv/linux/powerpc/sysdep.h: Don't include
2522         sysdeps/powerpc/elf/sysdep.h.
2523         Reported by Kaoru Fukui <k_fukui@highway.ne.jp>.
2525 2001-11-05  Ulrich Drepper  <drepper@redhat.com>
2527         * elf/rtld.c (process_dl_debug): Rewritten.  Optimized for size not
2528         speed.
2529         (process_envvars): Some more optimizations.
2530         * sysdeps/generic/ldsodefs.h (DL_DEBUG_HELP): New macro.
2532         * elf/elf.h: Add dynamic tag definitions for prelinking.
2534         * elf/rtld.c (process_envvars): Avoid using array of string pointers.
2535         Rewrite code to remove environment varables for SUID binaries.
2536         Small optimization in LD_PROFILE handling.
2537         * sysdeps/generic/unsecvars.h: Adjust format for process_envvars
2538         changes.
2539         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
2541         * sysdeps/generic/dl-sysdep.c: Don't initialize _dl_cpuclock_offset.
2543         * elf/dl-reloc.c (_dl_reloc_bad_type): Rewrite to not use writable
2544         strings.  Change type of second parameter.
2545         * sysdeps/generic/ldsodefs.h: Adjust _dl_reloc_bad_type prototype
2546         for last change.
2548         * io/fts.h: Prevent using <fts.h> with _FILE_OFFSET_BITS=64.
2550 2001-11-04  Joseph S. Myers  <jsm28@cam.ac.uk>
2552         * manual/string.texi: Fix typos.
2553         * manual/examples/argp-ex2.c: Likewise.
2555 2001-11-05  Roland McGrath  <roland@frob.com>
2557         * sysdeps/powerpc/elf/sysdep.h: Remove this file, because it overrides
2558         the more-specific unix/sysv/linux/powerpc file and breaks everything.
2559         * sysdeps/powerpc/sysdep.h (ALIGNARG, ASM_TYPE_DIRECTIVE,
2560         ASM_SIZE_DIRECTIVE, CALL_MCOUNT, ENTRY, EALIGN, DO_CALL, JUMPTARGET,
2561         PSEUDO, PSEUDO_RET, PSEUDO_END, L, C_TEXT): These macros moved here
2562         here, put under [__ELF__].
2564 2001-11-05  Ulrich Drepper  <drepper@redhat.com>
2566         * manual/charset.texi: Extensive editing work.
2567         * manual/nss.texi: Likewise.
2568         Changes by Dennis Grace <dgrace@us.ibm.com>.
2570 2001-11-04  Roland McGrath  <roland@frob.com>
2572         * hurd/set-host.c (_hurd_set_host_config): Use O_WRONLY in flags
2573         parameter to dir_mkfile.
2575 2001-11-02  Jakub Jelinek  <jakub@redhat.com>
2577         * string/bits/string2.h (__strndup): If n is smaller than len, set
2578         len to n + 1.
2579         * string/tester.c (test_strndup): New function.
2580         (main): Call it.
2582 2001-11-01  Ulrich Drepper  <drepper@redhat.com>
2584         * sunrpc/rpc_main.c: Optimize variable definitions a bit.
2586         * sunrpc/Makefile (rpcgen-cmd): Use ../scripts/cpp in rpcgen calls.
2587         * scripts/cpp: New file.
2589         * elf/dl-load.c (_dl_map_object): Correct test of DF_1_NODEFLIB
2590         for rtld_search_dirs content.  Minor optimizations.
2592 2001-10-31  Ulrich Drepper  <drepper@redhat.com>
2594         * elf/dl-load.c (_dl_map_object): Make code a bit more compact by
2595         avoiding unnecessary duplication.
2597 2001-10-31  Jakub Jelinek  <jakub@redhat.com>
2599         * elf/dl-load.c (_dl_map_object): If library was found using
2600         LD_LIBRARY_PATH, don't try RUNPATH list.
2602 2001-10-31  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2604         * sysdeps/unix/sysv/linux/s390/s390-32/register-dump.h (REGISTER_DUMP):
2605         Correct second argument of register_dump call.
2606         * sysdeps/unix/sysv/linux/s390/s390-64/register-dump.h (REGISTER_DUMP):
2607         Likewise.
2609 2001-10-31  Ulrich Drepper  <drepper@redhat.com>
2611         * iconvdata/Makefile: Add support for IBM1132, IBM1133, and IBM1162
2612         modules.
2613         * iconvdata/TESTS: Likewise.
2614         * iconvdata/gconv-modules: Likewise.
2615         * iconvdata/ibm1132.c: New file.
2616         * iconvdata/ibm1132.h: New file.
2617         * iconvdata/ibm1133.c: New file.
2618         * iconvdata/ibm1133.h: New file.
2619         * iconvdata/ibm1162.c: New file.
2620         * iconvdata/ibm1162.h: New file.
2621         * iconvdata/testdata/IBM1132: New file.
2622         * iconvdata/testdata/IBM1132..UTF8: New file.
2623         * iconvdata/testdata/IBM1133: New file.
2624         * iconvdata/testdata/IBM1133..UTF8: New file.
2625         * iconvdata/testdata/IBM1162: New file.
2626         * iconvdata/testdata/IBM1162..UTF8: New file.
2627         Patches by Masahide Washizawa <WASHI@jp.ibm.com>.
2629         * string/string.h: Fix typo in comment.
2630         * wcsmbs/wchar.h: Likewise.
2632 2001-10-30  Joseph S. Myers  <jsm28@cam.ac.uk>
2634         * manual/getopt.texi (getopt_long, getopt_long_only): Include
2635         const in type of longopts parameter.
2637 2001-10-29  Andreas Jaeger  <aj@suse.de>
2639         * sysdeps/ieee754/dbl-64/mpa.h: Add prototypes for internal functions.
2641 2001-10-29  Kevin Ryde  <user42@zip.com.au>
2643         * manual/stdio.texi (Integer Conversions): Corrections to sample printf
2644         output, clarify `#' behaviour on 0.
2645         (Floating-Point Conversions): Clarify that %g only uses %e when
2646         the exponent would be greater than 1.
2648 2001-10-28  Roland McGrath  <roland@frob.com>
2650         Support for Mach/PowerPC contributed by Peter Bruin <pjbruin@dds.nl>.
2651         * sysdeps/mach/powerpc/machine-sp.h: New file.
2652         * sysdeps/mach/powerpc/sysdep.h: New file.
2653         * sysdeps/mach/powerpc/thread_state.h: New file.
2655         * sysdeps/mach/hurd/i386/Makefile: File removed; crt0.o rules moved ...
2656         * sysdeps/mach/hurd/Makefile: ... to here.  For the time being, we can
2657         expect to need the same thing on every platform.
2659         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: File moved ...
2660         * sysdeps/generic/sys/ucontext.h: ... to replace this one.
2662         * sysdeps/unix/sysv/linux/powerpc/sysdep.h (ALIGNARG,
2663         ASM_TYPE_DIRECTIVE, ASM_SIZE_DIRECTIVE, CALL_MCOUNT, ENTRY, EALIGN,
2664         DO_CALL, JUMPTARGET, PSEUDO, PSEUDO_RET, PSEUDO_END, L, C_TEXT):
2665         Move all these assembly-related definitions to ...
2666         * sysdeps/powerpc/elf/sysdep.h: ... this new file.
2668         * sysdeps/mach/powerpc/machine-lock.h: Assembly code rewritten
2669         by Peter Bruin <pjbruin@dds.nl>.
2671         * hurd/hurdselect.c (_hurd_select): Check SELECT_RETURNED bit when
2672         packing results for a `poll' call.
2674 2001-10-26  Ulrich Drepper  <drepper@redhat.com>
2676         * posix/fnmatch_loop.c: Recognize - at end of bracket expression
2677         correctly.
2678         * posix/tst-fnmatch.input: Add tests for - at beginning and end of
2679         bracket expression.
2681         * string/strxfrm.c [USE_IN_EXTENDED_LOCALE_MODEL]: Correctly get
2682         nrules value.
2683         * string/tst-strxfrm.c (test): Also test __strxfrm_l.
2685 2001-10-24  H.J. Lu  <hjl@gnu.org>
2687         * sysdeps/generic/bits/dlfcn.h (DL_CALL_FCT): Cast to void *.
2688         Use __BEGIN_DECLS/__END_DECLS around prototypes.
2689         * sysdeps/mips/bits/dlfcn.h (DL_CALL_FCT): Likewise.
2691 2001-10-21  Jim Meyering  <meyering@lucent.com>
2693         * malloc/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
2694         this code would end up calling gettext even in packages built
2695         with --disable-nls.
2696         * posix/getopt.c (_): Likewise.
2697         * posix/regex.c (_): Likewise.
2699 2001-10-26  Ulrich Drepper  <drepper@redhat.com>
2701         * resolv/gethnamaddr.c (gethostbyaddr): Use ip6.addr for reverse
2702         lookup not ip6.int.
2703         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise.
2704         Reported by Martin.v.Loewis@t-online.de [PR libc/2598].
2706 2001-10-19  Jakub Jelinek  <jakub@redhat.com>
2708         * misc/sys/cdefs.h (__attribute_used__): Define.
2709         * elf/rtld.c (_dl_start): Add __attribute_used__.
2710         * elf/dl-runtime.c (fixup, profile_fixup): Likewise.
2712 2001-10-25  Andreas Schwab  <schwab@suse.de>
2714         * stdlib/a64l.c: Expect least significant digit first.
2715         * stdlib/l64a.c: Produce least significant digit first.
2716         * stdlib/Makefile (tests): Add test-a64l.
2717         * stdlib/test-a64l.c: New file.
2718         Reported by Masaki Hasegawa <masaki-h@pp.iij4u.or.jp>.
2720 2001-10-21  Ulrich Drepper  <drepper@redhat.com>
2722         * po/sk.po: Update from translation team.
2724 2001-10-18  Ulrich Drepper  <drepper@redhat.com>
2726         * sysdeps/i386/elf/start.S (_fp_hw): Define object type.
2728 2001-10-18  Andreas Schwab  <schwab@suse.de>
2730         * math/libm-test.inc (print_ulps): Print ulp values rounded to
2731         next whole number.
2732         (print_function_ulps): Likewise.
2733         (print_complex_function_ulps): Likewise.
2734         (print_max_error): Likewise.
2735         (print_complex_max_error): Likewise.  Handle ignore_max_ulp.
2737 2001-10-16  Andreas Schwab  <schwab@suse.de>
2739         * sysdeps/m68k/fpu/libm-test-ulps: Updated for fixed cbrtl
2740         implementation.
2742         * sysdeps/m68k/setjmp.c: Also define setjmp and _setjmp if
2743         BSD_SETJMP or BSD__SETJMP is defined, resp.
2744         * sysdeps/m68k/bsd-setjmp.c: Inline setjmp code instead of making
2745         a tail call to __sigsetjmp that would require extending the
2746         caller's frame.
2747         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
2748         * sysdeps/m68k/bsd-setjmp.S: Deleted.
2749         * sysdeps/m68k/bsd-_setjmp.S: Deleted.
2750         Reported by Jes Sorensen <jes@trained-monkey.org>.
2752 2001-10-16  Andreas Jaeger  <aj@suse.de>
2754         * sysdeps/ieee754/ldbl-96/s_nextafterl.c (__nextafterl): Fix
2755         parentheses.  Reported by David Byron <dbyron@porto.coactive.com>,
2756         close PR libc/2589.
2758 2001-10-15  Ulrich Drepper  <drepper@redhat.com>
2760         * po/ca.po: New file.  Contributed by the translation team.
2762 2001-10-15  Ralf Baechle  <ralf@gnu.org>
2764         * sysdeps/unix/sysv/linux/mips/sys/sysmips.h: Make sysmips() prototype
2765         a varargs prototype.  Remove dependency from kernel header files.
2767         * sysdeps/unix/sysv/linux/mips/bits/termios.h: General cleanup, use
2768         __USE_MISC / __USE_XOPEN not __USE_BSD where appropriate.
2770 2001-10-14  Ulrich Drepper  <drepper@redhat.com>
2772         * locale/programs/ld-collate.c (handle_ellipsis): Use %lX not %lx
2773         to generate hexadecimal identifier.
2774         Patch by Jungshik Shin <jungshik.shin@yale.edu>.
2776 2001-10-09  Stephen L Moshier  <moshier@mediaone.net>
2778         * sysdeps/ieee754/ldbl-96/s_cbrtl.c (__cbrtl): Fix algorithm.
2780 2001-10-14  Ulrich Drepper  <drepper@redhat.com>
2782         * sysdeps/ieee754/ldbl-128/e_powl.c: New file.
2783         * sysdeps/ieee754/ldbl-128/s_cbrtl.c: New file.
2784         Contributed by Stephen L Moshier <moshier@mediaone.net>.
2786         * sysdeps/ieee754/ldbl-128/e_j0l.c: Constify float variables.
2787         * sysdeps/ieee754/ldbl-128/e_j1l.c: Likewise.
2788         * sysdeps/ieee754/ldbl-128/e_lgammal_r.c: Likewise
2789         * sysdeps/ieee754/ldbl-128/s_erfl.c: Likewise
2790         * sysdeps/ieee754/ldbl-128/s_expm1l.c: Likewise
2791         * sysdeps/ieee754/ldbl-128/s_log1pl.c: Likewise
2793         * timezone/africa: Update from tzdata2001d.
2794         * timezone/asia: Likewise.
2795         * timezone/australasia: Likewise.
2796         * timezone/backward: Likewise.
2797         * timezone/europe: Likewise.
2798         * timezone/leapseconds: Likewise.
2799         * timezone/northamerica: Likewise.
2800         * timezone/southamerica: Likewise.
2801         * timezone/zone.tab: Likewise.
2803 2001-10-09  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2805         * sysdeps/s390/s390-32/sys/ucontext.h: Correct __psw_t typedef.
2806         * sysdeps/s390/s390-64/sys/ucontext.h: Likewise.
2808 2001-10-12  Ulrich Drepper  <drepper@redhat.com>
2810         * elf/elf.h (PT_TLS): New definition.
2812 2001-10-10  Jeff Bailey  <jbailey@nisa.net>
2814         * sysdeps/mach/hurd/Makefile: Add $(CFLAGS) for generation of
2815         bits/errno.h
2817 2001-10-07  Roland McGrath  <roland@frob.com>
2819         * sysdeps/mach/hurd/setrlimit.c (__setrlimit): Never return ENOSYS.
2821 2001-10-10  Ulrich Drepper  <drepper@redhat.com>
2823         * elf/elf.h: Add more ELFOSABI_* constants.
2825 2001-10-04  Ben Collins  <bcollins@debian.org>
2827         * sysdeps/generic/inttypes.h: Fix typo (define, not defined) in
2828         decleration of __need_wchar_t.
2830 2001-10-03  Jakub Jelinek  <jakub@redhat.com>
2832         * string/bits/string2.h (__strsep_g): Add prototype.
2833         (__strsep): Use it.
2834         * string/Versions (__strsep): Remove.
2835         * sysdeps/generic/strsep.c (__strsep_g): Add alias to __strsep.
2837 2001-10-07  Ulrich Drepper  <drepper@redhat.com>
2839         * manua/llio.texi: Clarify file references added by mmap.
2840         Patch by Marcus Brinkmann <Marcus.Brinkmann@ruhr-uni-bochum.de>.
2842 2001-09-29  Jes Sorensen  <jes@trained-monkey.org>
2844         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext):
2845         Add sc_loadrs and sc_rbs_bas to match current kernel.
2847 2001-09-27  Jakub Jelinek  <jakub@redhat.com>
2849         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
2851         * sysdeps/ieee754/ldbl-128/s_erfl.c (__erfcl): Fix erfc(-inf).
2853 2001-09-27  Jakub Jelinek  <jakub@redhat.com>
2855         * elf/dl-open.c (dl_open_worker): If l_opencount of freshly loaded
2856         object has been bumped because of relocation dependency, avoid
2857         duplicates in l_scope.
2858         (show_scope): Fix typos.
2859         * elf/Makefile: Add rules to build and run reldep6.
2860         * elf/reldep6.c: New file.
2861         * elf/reldep6mod0.c: New file.
2862         * elf/reldep6mod1.c: New file.
2863         * elf/reldep6mod2.c: New file.
2864         * elf/reldep6mod3.c: New file.
2865         * elf/reldep6mod4.c: New file.
2867 2001-09-26  Jakub Jelinek  <jakub@redhat.com>
2869         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_fixup_plt): Call
2870         sparc64_fixup_plt.
2871         (sparc64_fixup_plt): Moved from elf_machine_fixup_plt.  Optimize
2872         near jumps and 0xfffff800XXXXXXXX target addresses, no thread safety
2873         for non-lazy binding. Fix .plt[32768+] handling.
2874         (elf_machine_plt_value): Don't add addend.
2875         (elf_machine_rela): Call sparc64_fixup_plt instead of
2876         elf_machine_fixup_plt.
2877         (elf_machine_runtime_setup, TRAMPOLINE_TEMPLATE): Optimize for
2878         dynamic linker at 0xfffff800XXXXXXXX.
2880         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
2882 2001-09-28  Ulrich Drepper  <drepper@redhat.com>
2884         * elf/elf.h: Define SHF_GROUP and SHF_TLS.
2886 2001-09-25  Jakub Jelinek  <jakub@redhat.com>
2888         * sysdeps/unix/bsd/bsd4.4/bits/socket.h (struct cmsghdr): Don't
2889         declare __cmsg_data field if its size would be bigger than 0.
2890         (CMSG_DATA): Adjust accordingly.
2891         * sysdeps/unix/sysv/aix/bits/socket.h: Likewise.
2892         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: Likewise.
2893         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: Likewise.
2894         * sysdeps/unix/sysv/linux/s390/s390-64/bits/socket.h: Likewise.
2895         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
2896         * sysdeps/unix/sysv/linux/mips/bits/socket.h: Likewise.
2897         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Likewise.
2899 2001-09-25  Ulrich Drepper  <drepper@redhat.com>
2901         * iconvdata/TESTS: Add entries for IBM1160 and IBM1161.
2902         * iconvdata/testdata/IBM1160: New file.
2903         * iconvdata/testdata/IBM1160..UTF8: New file.
2904         * iconvdata/testdata/IBM1161: New file.
2905         * iconvdata/testdata/IBM1161..UTF8: New file.
2906         Patch by Masahide Washizawa <WASHI@jp.ibm.com>.
2908 2001-09-24  Ulrich Drepper  <drepper@redhat.com>
2910         * sysdeps/unix/bsd/ulimit.c (ulimit): Handle overflow in
2911         UL_SETFSIZE computations better.
2913         * rt/Makefile: Remove use of filter for librt again.
2915         * sysdeps/unix/sysv/linux/ulimit.c (__ulimit): Handle overflow in
2916         UL_SETFSIZE computations better.
2918         * string/Versions: Export __strsep for GLIBC_2.2.5.
2919         * string/bits/string2.h: Define all __STRING_INLINE functions if
2920         _FORCE_INLINES is defined.
2921         Use int instead of char of parameter types.
2922         (__strsep): Don't use __strsep_g.  Don't define it.
2923         (__strsep_1c, __strsep_2c, __strsep_3c): Optimize.
2924         * sysdeps/i386/i486/string.h (__strcpy_a_small): Renamed from
2925         __strcpy_small.
2926         (__stpcpy_a_small): Renamed from __stpcpy_small.
2927         (__strcspn_c1): Don't define if _FORCE_INLINES.
2928         (__strspn_c1): Likewise.
2930 2001-09-22  Ben Collins  <bcollins@debian.org>
2932         * sysdeps/sparc/bits/sigaction.h: Define SA_RESTART and friends when
2933         _UNIX98_SOURCE is defined too.  Matches generic/bits/sigaction.h.
2934         * sysdeps/ia64/bits/sigaction.h: Likewise.
2935         * sysdeps/s390/s390-64/bits/sigaction.h: Likewise.
2937 2001-09-24  Andrew Haley  <aph@cambridge.redhat.com>
2939         * sysdeps/unix/sysv/linux/sh/Makefile (sysdep_headers): Add sys/io.h.
2941 2001-09-24  Jakub Jelinek  <jakub@redhat.com>
2943         * elf/dl-open.c (dl_open_worker): Update l_scope_max.
2945 2001-09-24  Ulrich Drepper  <drepper@redhat.com>
2947         * wcsmbs/wchar.h: Add __attribute_pure__ to mbsinit prototype.
2949 2001-09-20  H.J. Lu  <hjl@gnu.org>
2951         * include/dlfcn.h (__RTLD_SPROF): New definiton.
2952         * elf/dl-open.c (dl_open_worker): Return immediately after loading
2953         for __RTLD_SPROF.
2954         * elf/sprof.c (main): Default to the filename if soname doesn't exist.
2955         (load_shobj): Call dlopen with `RTLD_LAZY | __RTLD_SPROF'.
2957 2001-09-20  H.J. Lu  <hjl@gnu.org>
2959         * elf/dl-profile.c (_dl_mcount): Use old *narcsp value for newarc,
2960         don't add 1.
2962 2001-09-22  Ulrich Drepper  <drepper@redhat.com>
2964         * nss/getent.c: Accept -s parameter to overwrite rules in
2965         nsswitch.conf.  Patch by Nalin Dahyabhai <nalin@redhat.com>.
2967         * nss/nss_files/files-network.c (LINE_PARSER): Pad addr string
2968         with as many ".0" as necessary to form a complete address
2969         inet_network understands.
2971         * nss/getent.c: Various cleanups.  Use simpler and fewer function
2972         calls.
2974 2001-09-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2976         * sysdeps/s390/s390-32/bits/setjmp.h: Correct pointer comparison in
2977         _JMPBUF_UNWINDS.
2978         * sysdeps/s390/s390-64/bits/setjmp.h: Likewise.
2980 2001-09-22  Ulrich Drepper  <drepper@redhat.com>
2982         * iconvdata/Makefile: Add rules to build and distribute IBM1160 and
2983         IBM1161.
2984         * iconvdata/gconv-modules: Add entries for IBM1160 and IBM1161.
2985         * iconvdata/ibm1160.c: New file.
2986         * iconvdata/ibm1160.h: New file.
2987         * iconvdata/ibm1161.c: New file.
2988         * iconvdata/ibm1161.h: New file.
2989         Patch by Masahide Washizawa <WASHI@jp.ibm.com>.
2991 2001-09-19  Jakub Jelinek  <jakub@redhat.com>
2993         * sysdeps/alpha/dl-machine.h (elf_machine_load_address): Compute the
2994         difference between base address and first PT_LOAD's virtual address,
2995         not the base address.
2997 2001-09-11  Tom Rix  <trix@redhat.com>
2999         * sysdeps/unix/sysv/aix/init-first.c (init):  Use USE_NONONPTION_FLAG
3000         ifdef for __getopt_clean_environment.
3001         * sysdeps/unix/sysv/aix/libc-start.c: Add real implementation.
3003 2001-09-22  Andreas Jaeger  <aj@suse.de>
3005         * elf/reldep4.c (main): Add proper prototype to fix warning.
3007         * elf/reldep5.c (main): Remove unused variable.
3009         * math/math_private.h: Add prototypes.
3011 2001-09-21  Andreas Jaeger  <aj@suse.de>
3013         * sysdeps/unix/sysv/linux/x86_64/Dist: New file.
3014         * sysdeps/x86_64/Dist: New file.
3015         * sysdeps/x86_64/soft-fp/Dist: New file.
3017         * sysdeps/gnu/Dist: Remove eval.c.
3019 2001-09-20  Ulrich Drepper  <drepper@redhat.com>
3021         * malloc/memusage.c (realloc): Don't count already allocated
3022         memory in the sums.
3023         (me): Always use dlsym() to find the real implementations.
3025         * malloc/memusage.sh: Make -n option actually do something.
3027 2001-09-20  Andreas Jaeger  <aj@suse.de>
3029         * elf/elf.h (R_390_NUM): Correct value.
3031         * Versions.def: Add missing versions 2.2.3 for libthread_db and
3032         libpthread.
3034         * sysdeps/unix/sysv/linux/configure.in: Add minimal kernel version
3035         for x86-64, install x86-64 into */lib64.
3037         * shlib-versions: Add x86-64.
3039         * elf/elf.h: Add x86-64 relocations.
3041 2001-09-19  Ulrich Drepper  <drepper@redhat.com>
3043         * po/fr.po: Update from translation team.
3045 2001-09-19  Andreas Jaeger  <aj@suse.de>
3047         * sysdeps/unix/sysv/linux/x86_64/Makefile: New file.
3048         * sysdeps/unix/sysv/linux/x86_64/Versions: New file.
3049         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: New file.
3050         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: New file.
3051         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: New file.
3052         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: New file.
3053         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: New file.
3054         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: New file.
3055         * sysdeps/unix/sysv/linux/x86_64/brk.c: New file.
3056         * sysdeps/unix/sysv/linux/x86_64/clone.S: New file.
3057         * sysdeps/unix/sysv/linux/x86_64/fstatfs64.c: New file.
3058         * sysdeps/unix/sysv/linux/x86_64/ftruncate64.c: New file.
3059         * sysdeps/unix/sysv/linux/x86_64/fxstat.c: New file.
3060         * sysdeps/unix/sysv/linux/x86_64/fxstat64.c: New file.
3061         * sysdeps/unix/sysv/linux/x86_64/getdents.c: New file.
3062         * sysdeps/unix/sysv/linux/x86_64/getdents64.c: New file.
3063         * sysdeps/unix/sysv/linux/x86_64/getrlimit64.c: New file.
3064         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.c: New file.
3065         * sysdeps/unix/sysv/linux/x86_64/glob64.c: New file.
3066         * sysdeps/unix/sysv/linux/x86_64/lxstat.c: New file.
3067         * sysdeps/unix/sysv/linux/x86_64/lxstat64.c: New file.
3068         * sysdeps/unix/sysv/linux/x86_64/mmap64.c: New file.
3069         * sysdeps/unix/sysv/linux/x86_64/pread64.c: New file.
3070         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h: New file.
3071         * sysdeps/unix/sysv/linux/x86_64/pwrite64.c: New file.
3072         * sysdeps/unix/sysv/linux/x86_64/readdir.c: New file.
3073         * sysdeps/unix/sysv/linux/x86_64/readdir64.c: New file.
3074         * sysdeps/unix/sysv/linux/x86_64/readdir64_r.c: New file.
3075         * sysdeps/unix/sysv/linux/x86_64/readdir_r.c: New file.
3076         * sysdeps/unix/sysv/linux/x86_64/recv.c: New file.
3077         * sysdeps/unix/sysv/linux/x86_64/register-dump.h: New file.
3078         * sysdeps/unix/sysv/linux/x86_64/send.c: New file.
3079         * sysdeps/unix/sysv/linux/x86_64/setrlimit64.c: New file.
3080         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: New file.
3081         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: New file.
3082         * sysdeps/unix/sysv/linux/x86_64/sigpending.c: New file.
3083         * sysdeps/unix/sysv/linux/x86_64/sigprocmask.c: New file.
3084         * sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: New file.
3085         * sysdeps/unix/sysv/linux/x86_64/statfs64.c: New file.
3086         * sysdeps/unix/sysv/linux/x86_64/sys/perm.h: New file.
3087         * sysdeps/unix/sysv/linux/x86_64/sys/procfs.h: New file.
3088         * sysdeps/unix/sysv/linux/x86_64/sys/reg.h: New file.
3089         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h: New file.
3090         * sysdeps/unix/sysv/linux/x86_64/sys/user.h: New file.
3091         * sysdeps/unix/sysv/linux/x86_64/syscall.S: New file.
3092         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: New file.
3093         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: New file.
3094         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: New file.
3095         * sysdeps/unix/sysv/linux/x86_64/time.c: New file.
3096         * sysdeps/unix/sysv/linux/x86_64/truncate64.c: New file.
3097         * sysdeps/unix/sysv/linux/x86_64/umount.c: New file.
3098         * sysdeps/unix/sysv/linux/x86_64/vfork.S: New file.
3099         * sysdeps/unix/sysv/linux/x86_64/xstat.c: New file.
3100         * sysdeps/unix/sysv/linux/x86_64/xstat64.c: New file.
3101         * sysdeps/unix/x86_64/sysdep.S: New file.
3102         * sysdeps/unix/x86_64/sysdep.h: New file.
3103         * sysdeps/x86_64/Implies: New file.
3104         * sysdeps/x86_64/Makefile: New file.
3105         * sysdeps/x86_64/Versions: New file.
3106         * sysdeps/x86_64/__longjmp.S: New file.
3107         * sysdeps/x86_64/abort-instr.h: New file.
3108         * sysdeps/x86_64/atomicity.h: New file.
3109         * sysdeps/x86_64/bits/endian.h: New file.
3110         * sysdeps/x86_64/bits/setjmp.h: New file.
3111         * sysdeps/x86_64/bits/string.h: New file.
3112         * sysdeps/x86_64/bp-asm.h: New file.
3113         * sysdeps/x86_64/bsd-_setjmp.S: New file.
3114         * sysdeps/x86_64/bsd-setjmp.S: New file.
3115         * sysdeps/x86_64/dl-machine.h: New file.
3116         * sysdeps/x86_64/elf/initfini.c: New file.
3117         * sysdeps/x86_64/elf/start.S: New file.
3118         * sysdeps/x86_64/ffs.c: New file.
3119         * sysdeps/x86_64/ffsll.c: New file.
3120         * sysdeps/x86_64/fpu/bits/fenv.h: New file.
3121         * sysdeps/x86_64/fpu/bits/mathdef.h: New file.
3122         * sysdeps/x86_64/fpu/e_acosl.c: New file.
3123         * sysdeps/x86_64/fpu/e_atan2l.c: New file.
3124         * sysdeps/x86_64/fpu/e_exp2l.S: New file.
3125         * sysdeps/x86_64/fpu/e_expl.c: New file.
3126         * sysdeps/x86_64/fpu/e_fmodl.S: New file.
3127         * sysdeps/x86_64/fpu/e_log10l.S: New file.
3128         * sysdeps/x86_64/fpu/e_log2l.S: New file.
3129         * sysdeps/x86_64/fpu/e_logl.S: New file.
3130         * sysdeps/x86_64/fpu/e_powl.S: New file.
3131         * sysdeps/x86_64/fpu/e_rem_pio2l.c: New file.
3132         * sysdeps/x86_64/fpu/e_scalbl.S: New file.
3133         * sysdeps/x86_64/fpu/e_sqrtl.c: New file.
3134         * sysdeps/x86_64/fpu/fclrexcpt.c: New file.
3135         * sysdeps/x86_64/fpu/fedisblxcpt.c: New file.
3136         * sysdeps/x86_64/fpu/feenablxcpt.c: New file.
3137         * sysdeps/x86_64/fpu/fegetenv.c: New file.
3138         * sysdeps/x86_64/fpu/fegetexcept.c: New file.
3139         * sysdeps/x86_64/fpu/fegetround.c: New file.
3140         * sysdeps/x86_64/fpu/feholdexcpt.c: New file.
3141         * sysdeps/x86_64/fpu/fesetenv.c: New file.
3142         * sysdeps/x86_64/fpu/fesetround.c: New file.
3143         * sysdeps/x86_64/fpu/fgetexcptflg.c: New file.
3144         * sysdeps/x86_64/fpu/fraiseexcpt.c: New file.
3145         * sysdeps/x86_64/fpu/fsetexcptflg.c: New file.
3146         * sysdeps/x86_64/fpu/ftestexcept.c: New file.
3147         * sysdeps/x86_64/fpu/libm-test-ulps: New file.
3148         * sysdeps/x86_64/fpu/math_ldbl.h: New file.
3149         * sysdeps/x86_64/fpu/printf_fphex.c: New file.
3150         * sysdeps/x86_64/fpu/s_atanl.c: New file.
3151         * sysdeps/x86_64/fpu/s_cosl.S: New file.
3152         * sysdeps/x86_64/fpu/s_expm1l.S: New file.
3153         * sysdeps/x86_64/fpu/s_fpclassifyl.c: New file.
3154         * sysdeps/x86_64/fpu/s_isinfl.c: New file.
3155         * sysdeps/x86_64/fpu/s_isnanl.c: New file.
3156         * sysdeps/x86_64/fpu/s_log1pl.S: New file.
3157         * sysdeps/x86_64/fpu/s_logbl.c: New file.
3158         * sysdeps/x86_64/fpu/s_nextafterl.c: New file.
3159         * sysdeps/x86_64/fpu/s_nexttoward.c: New file.
3160         * sysdeps/x86_64/fpu/s_nexttowardf.c: New file.
3161         * sysdeps/x86_64/fpu/s_rintl.c: New file.
3162         * sysdeps/x86_64/fpu/s_significandl.c: New file.
3163         * sysdeps/x86_64/fpu/s_sincosl.S: New file.
3164         * sysdeps/x86_64/fpu/s_sinl.S: New file.
3165         * sysdeps/x86_64/fpu/s_tanl.S: New file.
3166         * sysdeps/x86_64/gmp-mparam.h: New file.
3167         * sysdeps/x86_64/hp-timing.c: New file.
3168         * sysdeps/x86_64/hp-timing.h: New file.
3169         * sysdeps/x86_64/htonl.S: New file.
3170         * sysdeps/x86_64/memusage.h: New file.
3171         * sysdeps/x86_64/setjmp.S: New file.
3172         * sysdeps/x86_64/soft-fp/sfp-machine.h: New file.
3173         * sysdeps/x86_64/stackinfo.h: New file.
3174         * sysdeps/x86_64/sysdep.h: New file.
3175         * sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed: New file.
3177         * sysdeps/ieee754/ldbl-128/s_erfl.c: New file, contributed Stephen
3178         L Moshier.
3180 2001-09-18  Ulrich Drepper  <drepper@redhat.com>
3182         * malloc/malloc.c (ptmalloc_init): Handle _environ==NULL.
3183         Reported by B. D. Elliott <bde@nwlink.com> [PR libc/2541].
3185 2001-09-18  Andreas Schwab  <schwab@suse.de>
3187         * elf/dl-load.c (_dl_map_object_from_fd): Update handling of scope
3188         list, now that l_scope is a pointer.
3190         * elf/dl-open.c (dl_open_worker): Fix thinko when enlarging the
3191         scope list.
3193 2001-09-18  kaz Kojima  <kkojima@rr.iij4u.or.jp>
3195         * sysdeps/sh/dl-machine.h (elf_machine_rela): Fix reverse condition.
3196         (elf_machine_rela_relative): Add a missing declaration.
3198 2001-09-18  Jakub Jelinek  <jakub@redhat.com>
3200         * sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed: New file.
3201         * sysdeps/unix/sysv/linux/s390/ldd-rewrite.sed: New file.
3202         * sysdeps/unix/sysv/linux/configure.in: Add ia64 and s390
3203         ldd-rewrite scripts.
3205 2001-09-18  Ulrich Drepper  <drepper@redhat.com>
3207         * elf/ldd.bash.in: Update copyright message.
3209 2001-09-17  H.J. Lu  <hjl@gnu.org>
3211         * hurd/hurdmalloc.c (bcopy): Removed.
3212         (realloc): Replace bcopy with memcpy.
3213         * hurd/path-lookup.c (file_name_path_scan): Likewise.
3214         * resolv/gethnamaddr.c (map_v4v6_address): Likewise.
3215         * sunrpc/rpcinfo.c (pmapdump): Likewise.
3217         * resolv/gethnamaddr.c (getanswer): Replace bcopy with memmove.
3218         (gethostbyaddr): Likewise.
3219         * sunrpc/rpcinfo.c (get_inet_address): Likewise.
3221 2001-09-18  Ulrich Drepper  <drepper@redhat.com>
3223         * sysdeps/gnu/eval.c: Removed.
3225 2001-09-18  Andreas Jaeger  <aj@suse.de>
3227         * sysdeps/i386/fpu/s_logbl.S: Move to ...
3228         * sysdeps/i386/fpu/s_logbl.c: ...here, use inline assembler.
3230         * sysdeps/i386/fpu/s_rintl.S: Move to ...
3231         * sysdeps/i386/fpu/s_rintl.c: ...here, use inline assembler.
3233         * sysdeps/i386/fpu/s_significandl.S: Move to ...
3234         * sysdeps/i386/fpu/s_significandl.c: ...here, use inline assembler.
3236 2001-09-16  Ulrich Drepper  <drepper@redhat.com>
3238         * string/strcoll.c [USE_IN_EXTENDED_LOCALE_MODEL]: Correctly get
3239         nrules value.
3241 2001-09-14  H.J. Lu  <hjl@gnu.org>
3243         * sysdeps/mips/fpu/libm-test-ulps: Updated.
3245 2001-09-14  Ulrich Drepper  <drepper@redhat.com>
3247         * sysdeps/unix/sysv/linux/s390/s390-32/sys/ucontext.h: Fix a typo.
3248         Patch by Florian La Roche <laroche@redhat.com>.
3250         * string/bits/string2.h (__strtok_r_1c): Optimize a bit.
3252         * sysdeps/unix/sysv/linux/net/ethernet.h: Correct references to
3253         ETHER_CRC_LEN.
3255 2001-09-14  Andreas Schwab  <schwab@suse.de>
3257         * posix/execl.c: Fix last argument of memcpy.  Reported by Brian
3258         Sumner <bls@sgi.com>.
3259         * posix/execlp.c: Likewise.
3261 2001-09-13  Jakub Jelinek  <jakub@redhat.com>
3263         * elf/dl-deps.c (_dl_map_object_deps): Fix filter handling if filter
3264         is already found earlier in the search scope.
3266 2001-09-12  Jakub Jelinek  <jakub@redhat.com>
3268         * rt/Makefile (LDFLAGS-rt.so): Use shared thread library as librt's
3269         filter.
3271 2001-09-13  Ulrich Drepper  <drepper@redhat.com>
3273         * sysdeps/powerpc/fpu/libm-test-ulps: Adjust expected errors for j0.
3275 2001-09-12  Ulrich Drepper  <drepper@redhat.com>
3277         * config.h.in: Enforce optimization to be used.
3278         * Makeconfig (preprocess-versions): Define ASSEMBLER.
3279         * stdlib/Makefile (isomac-CFLAGS): Define to -O.
3280         * posix/Makefile (annexc-CFLAGS): Define to -O.
3281         * sysdeps/unix/make-syscalls.sh: Define __OPTIMIZE__ in use of asm_CPP.
3283 2001-09-11  Ulrich Drepper  <drepper@redhat.com>
3285         * nscd/nscd_gethst_r.c: Don't expect IPv6 addresses for IPv4 lookup.
3286         Patch by Stephan Kulow.
3288 2001-09-08  Ben Collins  <bcollins@debian.org>
3290         * sysdeps/arm/dl-machine.h (elf_machine_rel): Fix thinko in
3291         usage of RESOLVE() (r_type, not reloc->r_type).
3293 2001-09-08  Ulrich Drepper  <drepper@redhat.com>
3295         * elf/dl-object.c: Avoid allocating extra memory block for name.
3296         * elf/dl-close.c (_dl_close): Don't free l_libname if it is not
3297         allocated separately.
3298         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
3300 2001-09-08  H.J. Lu  <hjl@gnu.org>
3302         * po/zh_TW.po: Fix a typo.
3304 2001-09-07  Tom Rix  <trix@redhat.com>
3306         * sysdeps/unix/sysv/aix/sysv_termio.h: New file.
3308 2001-08-26  Tom Rix  <trix@redhat.com>
3310         * sysdeps/unix/sysv/aix/Makefile (aix-syscalls.o): More linker
3311         command line options.
3312         * sysdeps/unix/sysv/aix/start.s: New file, rework of start.c
3313         * sysdeps/unix/sysv/aix/start.c: Removed.
3314         * sysdeps/unix/sysv/aix/start-libc.c: New file.
3315         * sysdeps/unix/sysv/aix/init-first.c: New file.
3316         * sysdeps/unix/sysv/aix/fcntl.c: Alias __libc_fcntl to __fcntl.
3318 2001-09-08  Ben Collins  <bcollins@debian.org>
3320         * sysdeps/arm/dl-machine.h: Fix usage of new _dl_signal_error() format.
3321         * sysdeps/generic/dl-machine.h: Likewise.
3322         * sysdeps/hppa/dl-fptr.c: Likewise.
3323         * sysdeps/ia64/dl-fptr.c: Likewise.
3324         * sysdeps/mach/hurd/dl-sysdep.c: Likewise.
3325         * sysdeps/mips/dl-machine.h: Likewise.
3326         * sysdeps/mips/mips64/dl-machine.h: Likewise.
3327         * sysdeps/powerpc/dl-machine.c: Likewise.
3329 2001-09-07  Ben Collins  <bcollins@debian.org>
3331         * sysdeps/sparc/sparc32/dl-machine.h: Fix typo.
3333         * sysdeps/hppa/dl-lookupcfg.h: Forward declare struct link_map.
3335 2001-09-08  Ulrich Drepper  <drepper@redhat.com>
3337         * elf/dl-lookup.c (add_dependency): Bump l_opencount of all
3338         dependencies if necessary.
3340         * elf/dl-close.c (_dl_close): If object has no r_list (i.e., wasn't
3341         loaded directly) determine length if l_initfini list by iterating
3342         over its elements.  Minor optimizations.
3343         * elf/dl-deps.c (_dl_map_object_deps): Always add own map to l_initfini
3344         for dependency objects.
3345         If object was already loaded check whether any of the dependencies
3346         is already on the relocation dependency list.  If yes, remove the
3347         latter.  Minor optimizations.
3348         * elf/dl-lookup.c (add_dependency): Add check for self reference of
3349         maps here.  Search l_initfini list only if the object was loaded
3350         directly and not only as a dependency.
3351         (_dl_lookup_symbol): Add relocation dependency also if object
3352         is not in global scope.  Remove test for self-reference here.
3353         (_dl_lookup_versioned_symbol): Likewise.
3354         * elf/dl-object (_dl_new_object): Cleanup.  Initialize dont_free
3355         element of first name record.
3356         * elf/loadtest.c: Add some more test to recognize early if an object
3357         wasn't unloaded.
3358         * elf/Makefile: Add rules to build and run reldep5.
3359         * elf/reldep5.c: New file.
3360         * elf/reldepmod5.c: New file.
3361         * elf/reldepmod6.c: New file.
3363         * elf/reldep2.c: Fix typo.
3365 2001-09-07  Ulrich Drepper  <drepper@redhat.com>
3367         * include/link.h (struct link_map): Add l_scope_mem and l_scope_max
3368         elements.  Change l_scope to be a pointer only.
3369         * elf/dl-object.c (_dl_new_object): Initialize l_scope and l_scope_max.
3370         * elf/dl-open.c (dl_open_worker): If dependency wasn't just opened
3371         here add searchlist of newly open file to the dependency's scope.
3372         * elf/dl-close.c (_dl_close): If dependency is used otherwise remove
3373         only searchlist from its scope.  Free own scope array if necessary.
3374         * elf/Makefile (tests): Add dblload and dblunload now.
3376 2001-09-06  Andreas Jaeger  <aj@suse.de>
3378         * sysdeps/ieee754/ldbl-128/e_lgammal_r.c: New file, contributed
3379         Stephen L Moshier.
3381 2001-09-05  Ulrich Drepper  <drepper@redhat.com>
3383         * elf/Makefile: Add rules to build new tests.  Don't run them yet since
3384         they both fail.
3385         * elf/dblload.c: New file.
3386         * elf/dblloadmod1.c: New file.
3387         * elf/dblloadmod2.c: New file.
3388         * elf/dblloadmod3.c: New file.
3389         * elf/dblunload.c: New file.
3391 2001-09-04  Richard Henderson  <rth@redhat.com>
3393         * elf/elf.h (R_ALPHA_OP_*, R_ALPHA_IMMED_*): Remove.
3394         (R_ALPHA_GPREL16): Rename from R_ALPHA_IMMED_GP_16.
3396 2001-09-04  Ulrich Drepper  <drepper@redhat.com>
3398         Correct very misleading message for error in failed runtime relocation.
3399         * elf/dl-error.c (_dl_signal_error): Take extra parameter to describe
3400         place of the error.
3401         (_dl_signal_cerror): Likewise.
3402         * sysdeps/generic/ldsodefs.h: Adjust prototypes.
3403         * elf/dl-close.c: Likewise.
3404         * elf/dl-deps.c: Likewise.
3405         * elf/dl-load.c: Likewise.
3406         * elf/dl-lookup.c: Likewise.
3407         * elf/dl-open.c: Likewise.
3408         * elf/dl-reloc.c: Likewise.
3409         * elf/dl-sym.c: Likewise.
3410         * elf/dl-version.c: Likewise.
3411         * sysdeps/generic/dl-sysdep.c: Likewise.
3413 2001-09-04  Jakub Jelinek  <jakub@redhat.com>
3415         * iconv/strtab.c (strtabinit): Initialize null Strent.
3416         (newstring): Move len == 0 handling...
3417         (strtabadd): ...here.
3418         If len == 1, return null Strent.
3419         When inserting a suffix of an existing string, check if
3420         it is not equal to some suffix already recorded.
3421         Copy left and right members over if adding longer string.
3423 2001-09-04  Jakub Jelinek  <jakub@redhat.com>
3425         * sunrpc/rpc_cout.c (upcase): Account for trailing '\0'.
3427         * sysdeps/unix/sysv/linux/alpha/gethostname.c: Include <errno.h>.
3428         (__syscall_gethostname): Add prototype.
3430 2001-09-04  Ulrich Drepper  <drepper@redhat.com>
3432         * elf/dl-object.c (_dl_new_object): Remove unnecessary if.
3434 2001-09-02  Ulrich Drepper  <drepper@redhat.com>
3436         * elf/rtld.c (dl_main): Increment l_opencount for main binary.
3438 2001-08-27  Roland McGrath  <roland@frob.com>
3440         * sysdeps/unix/sysv/gethostname.c (__gethostname): When LEN is too
3441         short, copy that much into NAME anyway before returning error.
3443 2001-09-01  Richard Henderson  <rth@redhat.com>
3445         * sysdeps/alpha/elf/Dist: Remove file.
3446         * sysdeps/alpha/elf/Makefile: Remove file.
3447         * sysdeps/alpha/elf/crtbegin.S: Remove file.
3448         * sysdeps/alpha/elf/crtend.S: Remove file.
3449         * sysdeps/alpha/elf/initfini.c: New file.
3451 2001-09-01  Mark Kettenis  <kettenis@gnu.org>
3453         * iconv/tst-iconv1.c: Include <stddef.h> for wchar_t.
3454         * iconv/tst-iconv3.c: Likewise.
3456 2001-09-01  Jakub Jelinek  <jakub@redhat.com>
3458         * sysdeps/generic/inttypes.h (__gwchar_t): Define to wchar_t for C++.
3460 2001-09-01  Ulrich Drepper  <drepper@redhat.com>
3462         * iconv/gconv_cache.c: Rename variable cache to __gconv_cache and
3463         export it.
3464         * iconv/Versions (libc) [GLIBC_2.2.5]: Export __gconv_cache.
3465         * iconv/iconv_prog.c (insert_cache): New function.
3466         (print_known_names): If cache is used call insert_cache to use the
3467         information from the cache [PR libc/2509].
3469 2001-08-31  Ulrich Drepper  <drepper@redhat.com>
3471         * time/strptime.c (strptime_internal): Recognize 'l' format and
3472         handle it like 'I' for symmetry with strftime.
3474 2001-08-31  Richard Henderson  <rth@redhat.com>
3476         * elf/dl-support.c (_dl_cpuclock_offset): Protect with NONAVAIL.
3477         (HP_TIMING_AVAIL): Set to HP_SMALL_TIMING_AVAIL if present.
3478         * elf/rtld.c (HP_TIMING_AVAIL): Likewise.
3479         (print_statistics): Make scalar unsigned long long.
3480         * sysdeps/alpha/hp-timing.h: New file.
3482 2001-08-31  Jakub Jelinek  <jakub@redhat.com>
3484         * stdio-common/perror.c (perror): Save errno early, pass it
3485         down to perror_internal.
3486         (perror_internal): Add errnum argument.
3488 2001-08-31  Jakub Jelinek  <jakub@redhat.com>
3490         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Remove unused code.
3491         Don't add old memory content for R_ALPHA_REFQUAD.
3493 2001-08-30  Ulrich Drepper  <drepper@redhat.com>
3495         * crypt/md5-crypt.c (__md5_crypt_r): Compute used and required
3496         memory correctly.
3498         * sysdeps/unix/sysv/linux/ia64/ioperm.c (_ioperm): Use __open
3499         instead of open, __close instead of close, __getpagesize instead
3500         of getpagesize.
3502         * string/argz-stringify.c (__argz_stringify): Use __strnlen
3503         instead of strnlen.
3504         * include/string.h (strndupa): Redefine here to use __strnlen
3505         instead of strnlen.
3506         * string/strndup.c (__strndup): Use __strnlen not strnlen.
3508         * misc/syslog.c (vsyslog): Fix typo in last change (connect ->
3509         connected).
3511 2001-08-30  Jakub Jelinek  <jakub@redhat.com>
3513         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Don't handle
3514         R_ALPHA_RELATIVE if RTLD_BOOTSTRAP and HAVE_Z_COMBRELOC.  Only check
3515         for rtld map if neither RTLD_BOOTSTRAP nor HAVE_Z_COMBRELOC is defined.
3516         * sysdeps/i386/dl-machine.h (elf_machine_rel): Similarly.
3517         * sysdeps/ia64/dl-machine.h (elf_machine_rel): Similarly.
3518         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rel): Similarly.
3519         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rel): Similarly.
3521 2001-08-30  Ulrich Drepper  <drepper@redhat.com>
3523         * sysdeps/alpha/fpu/libm-test-ulps: Adjust j0 ULPs.
3525 2001-08-30  Andreas Jaeger  <aj@suse.de>
3527         * sysdeps/ieee754/ldbl-128/e_jnl.c: New file,
3528         contributed Stephen L Moshier.
3530 2001-08-30  Jakub Jelinek  <jakub@redhat.com>
3532         * sunrpc/etc.rpc (sgi_fam): Add.
3534 2001-08-30  Ulrich Drepper  <drepper@redhat.com>
3536         * sysdeps/unix/sysv/linux/alpha/gethostname.c: New file.
3538 2001-08-29  Ulrich Drepper  <drepper@redhat.com>
3540         * nis/nis_findserv.c (__nis_findfastest): Don't fail if reply received
3541         first is from a previous call.
3542         Patch by Alexander Belopolsky <alexb@rentec.com> for [PR libc/3670].
3544 2001-08-29  Andreas Schwab  <schwab@suse.de>
3546         * sysdeps/ia64/fpu/libm-test-ulps: Updated.
3548 2001-08-25  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
3550         * config.make.in (INSTALL_SCRIPT): Define.
3551         * Makeconfig (INSTALL_SCRIPT): Define.
3552         * Makerules (do-install-script): New macro to install scripts using
3553         INSTALL_SCRIPT.
3554         (install-bin-script): New rule to install scripts with
3555         do-install-script.
3556         (install-bin-script-nosubdir): New rule.
3557         (install-no-libc.a-nosubdir): Add install-bin-script-nosubdir.
3558         (distinfo-vars): Add $(install-bin-script).
3559         * Rules (others): Likewise.
3560         * Makefile (glibcbug): Install with install-bin-script.
3561         * debug/Makefile (xtrace): Likewise.
3562         (catchsegv): Likewise.
3563         * elf/Makefile (ldd): Likewise.
3564         * malloc/Makefile (mtrace): Likewise.
3565         * timezone/Makefile (tzselect): Likewise.
3567 2001-08-29  H.J. Lu  <hjl@gnu.org>
3569         * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Pass
3570         ELF_RTYPE_CLASS_PLT, instead of R_MIPS_REL32, to
3571         _dl_lookup_versioned_symbol () and _dl_lookup_symbol ().
3573 2001-08-29  Andreas Schwab  <schwab@suse.de>
3575         * sysdeps/m68k/fpu/libm-test-ulps: Updated.
3577 2001-08-28  H.J. Lu  <hjl@gnu.org>
3579         * Makeconfig (combreloc-LDFLAGS): New variable.
3580         Add it to LDFLAGS.so, LDFLAGS-rtld, and +link.
3581         * config.make.in (have-z-combreloc): New variable.
3582         * configure.in: Substitute libc_cv_z_combreloc.
3584 2001-08-29  Ulrich Drepper  <drepper@redhat.com>
3586         * po/sv.po: Update from translation team.
3587         * po/fr.po: Likewise.
3588         * po/da.po: Likewise.
3590 2001-08-28  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
3592         * Makerules: Fix a typo: MD% -> MD5.
3594 2001-08-28  Ulrich Drepper  <drepper@redhat.com>
3596         * sunrpc/rpc_hout.c (pargdef): Function must take pointer to object.
3597         Patch by Patrick Duval <Patrick.Duval@devinci.fr>.
3599 2001-08-28  Andreas Jaeger  <aj@suse.de>
3601         * manual/libc-texinfo.sh: Add entry about free manuals.
3603         * manual/contrib.texi (Contributors): Fix cross reference.
3605         * manual/libc.texinfo (Copying): Include freemanuals.
3607         * manual/Makefile (appendices): Add freemanuals.
3609         * manual/freemanuals.texi: New file.
3610         Patch by Brian Youmans <3diff@gnu.org>.
3612         * manual/libm-err-tab.pl: Pretty print more platforms, print a
3613         smaller table.
3615         * manual/math.texi (Errors in Math Functions): Fix grammar, start
3616         table on separate page.
3617         Patch by Brian Youmans <3diff@gnu.org>.
3619 2001-08-27  Ulrich Drepper  <drepper@redhat.com>
3621         * misc/syslog.c (vsyslog): Try a bit harder to use syslogd.  If
3622         the connection went down after we first used it try to connect
3623         again and resend the message before printing to the console.
3624         Reported by Coserea Gh. Tudor <tudore@tudore.gecadsoftware.com>.
3626 2001-08-27  Jakub Jelinek  <jakub@redhat.com>
3628         * string/tst-strlen.c (main): Test strnlen (, -1) too.
3629         * sysdeps/generic/strnlen.c (__strnlen): Fix for maxlens with top
3630         bit set.
3632 2001-08-27  Ulrich Drepper  <drepper@redhat.com>
3634         * iconv/strtab.c (searchstring): Use correct length for comparison.
3635         (strtabadd): Account total size correct if new string has old string as
3636         substring.
3638 2001-08-27  Jakub Jelinek  <jakub@redhat.com>
3640         * elf/rtld.c (dl_main): Update call to _dl_lookup_symbol.
3642 2001-08-27  Andreas Jaeger  <aj@suse.de>
3644         * sysdeps/i386/fpu/libm-test-ulps (float): Add ulps for new tests.
3646         * math/libm-test.inc (j0_test): Add extra tests.
3647         * sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee754_j0l): Use |x|,
3648         not x, in Hankel approximation.
3649         Patches by Stephen L Moshier.
3651 2001-08-26  Ulrich Drepper  <drepper@redhat.com>
3653         * sysdeps/ia64/dl-lookupcfg.h: Add forward declaration for struct
3654         link_map.
3656         * configure.in: Fix test for .rela.dyn section.
3658         * elf/dl-runtime.c: Update calls to _dl_lookup_*.
3660 2001-08-26  Jakub Jelinek  <jakub@redhat.com>
3662         * elf/dl-reloc.c (RESOLVE_MAP, RESOLVE): Use elf_machine_type_class
3663         instead of elf_machine_lookup_noexec_p and elf_machine_lookup_noplt_p.
3664         Pass type_class to _dl_lookup_*.
3665         * elf/dl-lookup.c (_dl_lookup_symbol): Take type_class parameter now.
3666         Pass around just type_class instead of noexec, noplt pair.
3667         (_dl_lookup_versioned_symbol): Likewise.
3668         (_dl_lookup_symbol_skip): Pass around just type_class instead of
3669         noexec, noplt pair.
3670         (_dl_lookup_versioned_symbol_skip): Likewise.
3671         (_dl_do_lookup, _dl_do_lookup_versioned): Likewise.
3672         * elf/do-lookup.h (do_lookup): Likewise.
3673         * include/link.h (struct link_map): Replace noexec and noplt fields
3674         in l_lookup_cache with type_class field.
3675         * sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_PLT,
3676         ELF_RTYPE_CLASS_COPY): Define.
3677         Adjust prototypes for _dl_lookup_symbol and
3678         _dl_lookup_versioned_symbol.
3679         * sysdeps/alpha/dl-machine.h (elf_machine_lookup_noplt_p,
3680         elf_machine_lookup_noexec_p): Remove.
3681         (elf_machine_type_class): Define.
3682         * sysdeps/arm/dl-machine.h: Likewise.
3683         * sysdeps/hppa/dl-machine.h: Likewise.
3684         * sysdeps/cris/dl-machine.h: Likewise.
3685         * sysdeps/i386/dl-machine.h: Likewise.
3686         * sysdeps/ia64/dl-machine.h: Likewise.
3687         * sysdeps/m68k/dl-machine.h: Likewise.
3688         * sysdeps/mips/mips64/dl-machine.h: Likewise.
3689         * sysdeps/mips/dl-machine.h: Likewise.
3690         * sysdeps/powerpc/dl-machine.h: Likewise.
3691         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
3692         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
3693         * sysdeps/sh/dl-machine.h: Likewise.
3694         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
3695         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
3697 2001-08-26  Ulrich Drepper  <drepper@redhat.com>
3699         * manual/message.texi (Advanced gettext functions): Change
3700         description of plural forms for Slovak.
3701         Reported by Marcel Telka <marcel@telka.sk>.
3703         * manuaL/time.texi (Low-Level Time String Parsing): Fix description of
3704         %z.  Reported by C. Scott Ananian <cananian@lesser-magoo.lcs.mit.edu>.
3706 2001-08-26  Jakub Jelinek  <jakub@redhat.com>
3708         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_lazy_rel): Fix a
3709         typo.  Patch by Florian La Roche <laroche@redhat.com>.
3711 2001-08-26  Ulrich Drepper  <drepper@redhat.com>
3713         * include/link.h (struct link_map): Add l_lookup_cache element.
3714         * elf/dl-reloc.c (RESOLVE): Add symbol caching here.
3715         (RESOLVE_MAP): Likewise.
3716         (_dl_relocate_object): Remove cache initialization.
3717         * elf/dl-lookup.c: Rip out cache handling code.
3718         * sysdeps/generic/ldsodefs.h: Remove lookup_cache struct and variable
3719         declarations.
3721         * elf/dl-lookup.c (_dl_lookup_symbol): Reorder some conditions and
3722         remove some __builtin_expect.
3723         (_dl_lookup_versioned_symbol): Likewise.
3725         * config.h.in: Add HAVE_Z_COMBRELOC.
3726         * configure.in: Add test for -z combreloc.
3728         * sysdeps/i386/dl-machine.h (elf_machine_rel): Minor cleanups and
3729         optimizations.  Use HAVE_Z_COMBRELOC to avoid generaton of
3730         R_386_RELATIVE handling for ld.so startup.  Reduce RTLD_BOOTSTRAP
3731         case to almost no code.
3733 2001-08-25  Ulrich Drepper  <drepper@redhat.com>
3735         * po/tr.po: Update from translation team.
3737 2001-08-24  Andreas Jaeger  <aj@suse.de>
3739         * iconv/Makefile (extra-objs): Add iconvconfig-modules so that
3740         make clean works.
3742 2001-08-24  Ulrich Drepper  <drepper@redhat.com>
3744         * elf/rtld.c (print_statistics): Printf % after percent values.
3745         * elf/dl-misc.c (_dl_debug_vdprintf): Implement %%.
3747         * elf/dl-lookup.c (_dl_lookup_symbol): If we use the cache we
3748         don't have to compute the hash value and initialize current_value.
3749         Move reference_name variable to where it is needed.
3750         (_dl_lookup_versioned_symbol): Likewise.
3752 2001-08-24  Roland McGrath  <roland@frob.com>
3754         * string/tester.c (test_strerror): Don't use _sys_errlist/_sys_nerr.
3755         Just test that strerror returns non-null for a few errno codes.
3757 2001-08-23  Roland McGrath  <roland@frob.com>
3759         * hurd/Versions (libc: GLIBC_2.2.5): New set; add _hurd_raise_signal,
3760         _hurdsig_interrupt_timeout, _hurdsig_fault_preemptor.
3762         * sysdeps/posix/shm_unlink.c (shm_unlink): __unlink -> unlink.
3764         * mach/Versions (libc: GLIBC_2.2.5): New set; add __mach_msg_destroy,
3765         __mach_reply_port.
3767 2001-08-24  Ulrich Drepper  <drepper@redhat.com>
3769         * nss/test-netdb.c (test_hosts): Don't segfault if gethostname
3770         returns NULL.
3772         * elf/do-rel.h (elf_dynamic_do_rel): Fix problem with ld.so
3773         startup.  Explicitly remove lazy part for RTLD_BOOTSTRAP since gcc
3774         doesn't do it.
3775         * elf/rtld.c: Include <sys/param.h>.
3776         * elf/dl-reloc.c: Likewise.
3778 2001-08-24  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
3780         * sysdeps/unix/sysv/linux/mips/configure.in: Define AC_SUBST to
3781         empty to prevent junk from being generated.
3782         * sysdeps/unix/sysv/linux/mips/configure: Regenerated.
3784 2001-08-24  Jakub Jelinek  <jakub@redhat.com>
3786         * elf/do-rel.h (elf_dynamic_do_rel): If l_addr is 0, skip relative
3787         records.  Rename endrel to relative, initialize it to r, and use it
3788         in elf_machine_rel_relative calls.  Point r after relative relocs.
3790 2001-08-24  Ulrich Drepper  <drepper@redhat.com>
3792         * sysdeps/i386/dl-machine.h (elf_machine_rel): Correct prediction
3793         of R_386_NONE.
3795 2001-08-24  Jakub Jelinek  <jakub@redhat.com>
3797         * elf/do-rel.h (elf_machine_rel_relative): Define for rela if
3798         necessary.  Undefine newly defined macros at the end.
3799         * sysdeps/hppa/dl-machine.h (elf_machine_rela_relative):
3800         Rename from elf_machine_rel_relative.
3801         * sysdeps/cris/dl-machine.h (elf_machine_rela_relative): Likewise.
3802         * sysdeps/m68k/dl-machine.h (elf_machine_rela_relative): Likewise.
3803         * sysdeps/powerpc/dl-machine.h (elf_machine_rela_relative): Likewise.
3804         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela_relative):
3805         Likewise.
3806         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela_relative):
3807         Likewise.
3808         * sysdeps/ia64/dl-machine.h (elf_machine_rela_relative): Likewise.
3809         Fix argument types.
3810         * sysdeps/alpha/dl-machine.h (elf_machine_rela_relative): Likewise.
3811         Fix argument types.
3812         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela_relative):
3813         Likewise.  Fix argument types.
3814         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela_relative):
3815         Likewise.  Fix argument types.
3816         * sysdeps/sh/dl-machine.h (elf_machine_rela_relative): Likewise.
3817         Fix argument types.
3818         * sysdeps/mips/dl-machine.h (elf_machine_rel_relative): Use
3819         ElfW(Rel) in argument.
3820         * sysdeps/mips/mips64/dl-machine.h (elf_machine_rel_relative): New
3821         function.
3823 2001-08-24  Alexandre Oliva  <aoliva@redhat.com>
3825         * sysdeps/sh/dl-machine.h (elf_machine_rela): Fix typo.
3827 2001-08-24  Andreas Jaeger  <aj@suse.de>
3829         * sysdeps/ieee754/ldbl-128/e_j1l.c: New file, contributed by
3830         Stephen L Moshier <moshier@mediaone.net>.
3832 2001-08-24  Ulrich Drepper  <drepper@redhat.com>
3834         * elf/do-rel.h (elf_dynamic_do_rel): RELATIVE relocations comes
3835         first if RELCOUNT is set.
3837         * elf/do-rel.h (elf_dynamic_do_rel): If not relocating lazily, don't
3838         call elf_machine_rel for the last DT_RELCOUNT relocations but instead
3839         elf_machine_rel_relative.
3840         * sysdeps/alpha/dl-machine.h: Define elf_machine_rel_relative.
3841         Minor optimizations.
3842         * sysdeps/arm/dl-machine.h: Likewise.
3843         * sysdeps/cris/dl-machine.h: Likewise.
3844         * sysdeps/hppa/dl-machine.h: Likewise.
3845         * sysdeps/i386/dl-machine.h: Likewise.
3846         * sysdeps/ia64/dl-machine.h: Likewise.
3847         * sysdeps/m68k/dl-machine.h: Likewise.
3848         * sysdeps/mips/dl-machine.h: Likewise.
3849         * sysdeps/powerpc/dl-machine.h: Likewise.
3850         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
3851         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
3852         * sysdeps/sh/dl-machine.h: Likewise.
3853         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
3854         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
3856 2001-08-23  Roland McGrath  <roland@frob.com>
3858         * rt/tst-aio4.c [! SIGRTMIN] (SIGRTMIN, SIGRTMAX): Define as -1.
3860         * sysdeps/mach/hurd/bits/libc-lock.h: New file, initially copied from
3861         sysdeps/mach version.  Implement counting ("recursive") mutexes
3862         on top of cthreads mutexes.
3863         * sysdeps/mach/hurd/bits/stdio-lock.h: File removed; generic now works.
3865         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_initializer): Define to
3866         _LIBC_LOCK_RECURSIVE_INITIALIZER if defined, else do an #error.
3867         (__libc_cleanup_region_start, __libc_cleanup_region_end,
3868         __libc_clean_end): Define these to call the cleanup function after
3869         normal exit when they're supposed to.
3871         * sysdeps/mach/bits/libc-lock.h (__libc_cleanup_region_start):
3872         Take new first arg DOIT, a boolean saying whether to really install
3873         any cleanup handler.
3874         (__libc_cleanup_region_end): Do nothing if start's DOIT arg was zero.
3875         (__libc_cleanup_end): Likewise.
3876         * sysdeps/generic/bits/libc-lock.h: Same changes.
3877         * stdio-common/vfscanf.c (LOCK_STREAM): Pass new arg.
3878         * stdio-common/vfprintf.c (buffered_vfprintf, vfprintf): Likewise.
3879         * sysdeps/mach/hurd/bits/stdio-lock.h (_IO_cleanup_region_start):
3880         Likewise.
3881         * misc/syslog.c (vsyslog, openlog, closelog): Likewise.
3882         * sysdeps/generic/bits/stdio-lock.h
3883         (_IO_cleanup_region_start, _IO_cleanup_region_start_noarg): Likewise.
3885 2001-08-23  Jakub Jelinek  <jakub@redhat.com>
3887         * elf/ldconfig.c (search_dir): Remove stale symlinks.
3889 2001-08-23  Jakub Jelinek  <jakub@redhat.com>
3891         * elf/dl-lookup.c (lookup_cache, lookup_cache_versioned): New.
3892         (_dl_lookup_symbol): Lookup relocations in cache and store successfull
3893         lookups in cache.
3894         (_dl_lookup_versioned_symbol): Likewise.
3895         * elf/dl-reloc.c (_dl_relocate_object): Initialize cache for
3896         relocation lookup.
3897         * elf/rtld.c (print_statistics): Output _dl_num_cache_relocations.
3898         * sysdeps/generic/ldsodefs.h (struct lookup_cache): New definition.
3899         (lookup_cache, lookup_cache_versioned): Add declarations.
3901 2001-08-23  Ulrich Drepper  <drepper@redhat.com>
3903         * stdlib/tst-random.c (main): Swap parameters in fail call.
3904         Patch by Pete Bevin <pete@petebevin.com>.
3906 2001-08-23  Jakub Jelinek  <jakub@redhat.com>
3908         * sysdeps/generic/inttypes.h: Use __gwchar_t instead of __wchar_t.
3910 2001-08-23  Ulrich Drepper  <drepper@redhat.com>
3912         * malloc/obstack.c: Indent preprocessor directives.
3913         Patch by Jim Meyering <meyering@ascend.com>.
3915         * po/ja.po: Update from translation team.
3917 2001-08-23  Roland McGrath  <roland@frob.com>
3919         * libio/tst-ungetwc1.c (main): Add a const to quiet a warning.
3921         * nss/test-netdb.c (test_hosts): Don't use MAXHOSTNAMELEN.
3922         Instead, use dynamic buffer to test gethostname's ENAMETOOLONG error.
3924 2001-08-22  Roland McGrath  <roland@frob.com>
3926         * sysdeps/generic/ldsodefs.h (_dl_load_lock): Declare it here with
3927         __libc_lock_define_recursive.
3928         * elf/dl-open.c: Don't declare it here any more.
3929         * elf/dl-close.c: Likewise.
3930         * elf/dl-lookup.c: Likewise.
3931         * elf/dl-iteratephdr.c: Likewise.
3932         * elf/dl-lookup.c (add_dependency): Use __libc_lock_lock_recursive and
3933         __libc_lock_unlock_recursive.
3934         * elf/dl-close.c (_dl_close): Likewise
3935         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise
3936         * elf/dl-open.c (_dl_open): Likewise
3938         * sysdeps/generic/bits/libc-lock.h
3939         (__libc_lock_define_recursive): New macro.
3940         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_t): Use it.
3941         (_IO_lock_lock): Use __libc_lock_lock_recursive.
3942         (_IO_lock_unlock): Use __libc_lock_unlock_recursive.
3944         * conform/conformtest.pl (checknamespace): Sort the output list.
3946         * sysdeps/generic/bits/poll.h (POLLWRBAND): New alias for POLLOUT.
3947         (POLLRDNORM, POLLRDBAND, POLLWRNORM, POLLWRBAND): Make these
3948         definitions conditional on [__USE_XOPEN].
3950         * sysdeps/mach/hurd/bits/fcntl.h (O_ASYNC, O_FSYNC, O_SYNC): Define
3951         these unconditionally, not only use [__USE_BSD], so as to match
3952         the sysdeps/unix/sysv/linux files.
3954 2001-08-22  Ulrich Drepper  <drepper@redhat.com>
3956         * test-skeleton.c (add_temp_file): Add __attribute__ ((unused)) to
3957         avoid warnings.
3959         * dlfcn/tst-dladdr.c (do_test): Get address of ref1 using
3960         DL_LOOKUP_ADDRESS.
3962 2001-08-22  Roland McGrath  <roland@frob.com>
3964         * sysdeps/generic/bits/sigaction.h (struct sigaction): Fix up
3965         conditionalization of sa_handler/sa_sigaction member types to
3966         match the sysdeps/unix/sysv/linux file.
3968 2001-08-22  Ulrich Drepper  <drepper@redhat.com>
3970         * elf/dl-addr.c (_dl_addr): Handle broken binaries with zero
3971         symbol sizes a bit better.
3973         * sysdeps/ia64/strncpy.S: Complete rewrite.
3974         Contributed by Jakub Jelinek <jakub@redhat.com>.
3976         * string/stratcliff.c (main): Add strncpy test.
3978 2001-08-22  Roland McGrath  <roland@frob.com>
3980         * sysdeps/generic/dl-environ.c: Include <stdlib.h> and <unistd.h>,
3981         and don't declare unsetenv or _environ directly.
3982         (unsetenv): Return int, not void.  Use __environ instead of _environ.
3984 2001-08-01  Mark Kettenis  <kettenis@gnu.org>
3986         * sysdeps/unix/bsd/bsd4.4/Makefile: New file.
3987         * sysdeps/unix/bsd/bsd4.4/Versions: New file.
3988         * sysdeps/unix/bsd/bsd4.4/cmsg_nxthdr.c: New file.
3989         * sysdeps/unix/bsd/bsd4.4/bits/socket.h (__cmsg_nxthdr): Correct
3990         test for cmsg struct size.
3992 2001-04-23  Paul Eggert  <eggert@twinsun.com>
3994         * posix/getopt.h (getopt_long, getopt_long_only, _getopt_internal):
3995         Rename __argc to ___argc in prototypes to avoid compatibility
3996         problems with systems that reserve the identifier "__argc".
3997         Similarly for __argv.
3999 2001-08-21  Roland McGrath  <roland@frob.com>
4001         * stdio-common/tst-fseek.c: Include <time.h> for `time' declaration.
4003         * mach/Makefile (tests): Removed.
4004         * mach/hello.c: File removed.
4006 2001-08-22  Ulrich Drepper  <drepper@redhat.com>
4008         * po/sv.po: Update from translation team.
4010         * stdio-common/vfscanf.c: Fix handling of %l[].
4011         Reported by Mitsuru Chinen <mchinen@yamato.ibm.com>.
4013         * libio/Makefile (tests): Add tst-sscanf.
4014         * libio/tst-sscanf.c: New file.
4016         * elf/dl-addr.c (_dl_addr): Fix tests to determine dli_sname.
4017         * malloc/mtrace.c (tr_where): dli_sname always points to a
4018         non-empty string if != NULL.
4019         Reported by Tim Janik <timj@gtk.org>.
4021 2001-08-22  Jakub Jelinek  <jakub@redhat.com>
4023         * sunrpc/xdr_rec.c (xdrrec_create): Fix buf sizes before allocating
4024         buf.  Free resources on failure.
4025         * sunrpc/svc_unix.c (svcunix_create): Free resources on failure.
4026         (makefd_xprt): Likewise.
4027         * sunrpc/svc_udp.c (svcudp_bufcreate): Likewise.
4028         * sunrpc/svc_tcp.c (svctcp_create, makefd_xprt): Likewise.
4029         * sunrpc/auth_unix.c (authunix_create): Likewise.
4031 2001-08-21  Jakub Jelinek  <jakub@redhat.com>
4033         * string/strnlen.c: Remove.
4034         * sysdeps/generic/strnlen.c: New file.
4035         * sysdeps/i386/i486/bits/string.h (strnlen): Remove.
4037 2001-08-21  Roland McGrath  <roland@frob.com>
4039         * sysdeps/mach/i386/machine-sp.h (__thread_stack_pointer): Define this
4040         as a macro, not an extern inline function.
4042         * hurd/Versions (GLIBC_2.2.5): New set, define __hurd_fail here.
4043         * Versions.def (libc): Add GLIBC_2.2.5 set.
4044         * hurd/hurd.h (_HURD_H_EXTERN_INLINE): New macro.
4045         (__hurd_fail): Use that instead of _EXTERN_INLINE in decl.
4047 2001-08-20  Roland McGrath  <roland@frob.com>
4049         * hurd/hurdlookup.c (__hurd_file_name_lookup): Fail with ENOENT for "".
4050         (__hurd_file_name_split, __hurd_directory_name_split): Likewise.
4052 2001-08-21  Ulrich Drepper  <drepper@redhat.com>
4054         * string/bits/string2.h: Remove strnlen optimization here.
4055         * sysdeps/i386/i486/bits/string.h: Add it here.
4057 2001-08-21  Wolfram Gloger  <wg@malloc.de>
4059         * malloc/malloc.c: Make access to ..._hook pointers thread-safe.
4061 2001-08-21  Ulrich Drepper  <drepper@redhat.com>
4063         * po/gl.po: Update from translation team.
4065 2001-08-20  Ulrich Drepper  <drepper@redhat.com>
4067         * misc/error.c (error_tail): Use fputws_unlocked instead of fputws.
4068         * misc/err.c (convert_and_print): Likewise.
4070         * malloc/obstack.c (print_and_abort): Use fprintf instead of two
4071         function calls.
4073 2001-08-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4075         * sysdeps/unix/sysv/linux/s390/s390-32/sys/ucontext.h: Revert the
4076         change of the gregset_t type.
4077         * sysdeps/unix/sysv/linux/s390/s390-64/sys/ucontext.h: Likewise.
4079 2001-08-20  kaz Kojima  <kkojima@rr.iij4u.or.jp>
4081         * sysdeps/unix/sysv/linux/sh/sysdep.S: Align errno.
4083 2001-08-20  Ulrich Drepper  <drepper@redhat.com>
4085         * posix/regex.c (truncate_wchar): Use wcrtomb not wctomb.
4087         * string/strnlen.c: Fix the implementation.  We cannot use memchr.
4089 2001-08-18  Mark Kettenis  <kettenis@gnu.org>
4091         * sysdeps/mach/hurd/i386/init-first.c (init): Initialize __environ
4092         before calling the cthreads initialization code.
4094 2001-08-20  Ulrich Drepper  <drepper@redhat.com>
4096         * argp/argp-help.c: Fix two problems introduced in last change.
4098         * include/dirent.h: Include <dirstream.h> first.
4100 2001-08-19  Ulrich Drepper  <drepper@redhat.com>
4102         * io/fts.c (fts_safe_changedir): Use __fxstat64 instead of __fstat.
4104         * sunrpc/svcauth_des.c (_svcauth_des): Avoid using bcopy.
4105         * sunrpc/xdr_rec.c: Likewise.
4106         * sunrpc/xdr_mem.c: Likewise.
4107         * sunrpc/svc_authux.c (_svcauth_unix): Likewise.
4108         * sunrpc/rpc_cmsg.c: Likewise.
4109         * sunrpc/getrpcport.c (getrpcport): Likewise.
4110         * sunrpc/clnt_simp.c (callrpc): Likewise.
4111         * sunrpc/clnt_gen.c (clnt_create): Likewise.
4112         * string/envz.c: Likewise.
4114         * po/ko.po: Update from translation team.
4116         * argp/argp-help.c: Handle wide oriented stderr stream.
4118 2001-08-18  Ulrich Drepper  <drepper@redhat.com>
4120         * sysdeps/generic/strtol.c: Little optimizations.  Add some
4121         __builtin_expect.
4123         * conform/conformtest.pl: <inttypes.h> test requires <stddef.h>.
4125         * wcsmbs/wchar.h (wcwdith): Change parameter type to wchar_t.
4126         * wcsmbs/wcwidth.c (wcwdith): Likewise.
4127         * wcsmbs/wcwidth.h (internal_wcwdith): Likewise.
4129         * conform/data/unistd.h-data: Remove _SC_MULTIPLE_PROCESS.
4131         * conform/data/ucontext.h-data: Fix typos in ucontext_t element tests.
4133         * time/time.h (struct timespec): Use __time_t for tv_sec element.
4135         * sysdeps/generic/inttypes.h: Define __wchar_t.  Use it instead of
4136         wchar_t for function declarations and defintions.
4138         * misc/sys/select.h: Define __need_time_t before including <time.h>.
4139         Define suseconds_t if it hasn't happened yet.
4141         * iconv/gconv.h: Define __need_wchar_t before including <stddef.h>.
4143         * conform/data/sys/uio.h-data: Allow UIO_MAXIOV to be defined.
4145         * sysdeps/generic/stdint.h: Don't get definition of wchar_t from
4146         <stddef.h>.
4148         * conform/data/stddef.h-data: Remove wint_t.
4150         * conform/conformtest.pl: Change namespace test to take #undef
4151         lines into account.
4153         * conform/data/netinet/in.h-data: Fix typo in allow-header line.
4155         * conform/data/sys/socket.h-data: Add sockatmark.
4157 2001-08-17  Ulrich Drepper  <drepper@redhat.com>
4159         * io/fts.c: Update from recent BSD source.
4161 2001-08-17  Roland McGrath  <roland@frob.com>
4163         * stdio-common/perror.c (perror) [! USE_IN_LIBIO]: Don't use _IO_fwide.
4164         * misc/error.c (error_tail, error, error_at_line) [! USE_IN_LIBIO]:
4165         Likewise.
4167 2001-08-17  Ulrich Drepper  <drepper@redhat.com>
4169         * locale/duplocale.c (__duplocale): Also initialize the special
4170         __ctype_* elements.
4172         * conform/data/netdb.h-data: Adjust gai_strerror return type.
4174 2001-08-17  Andreas Jaeger  <aj@suse.de>
4176         * misc/getpass.c: Include wchar.h for prototypes.
4177         * malloc/obstack.c: Likewise.
4179 2001-08-17  Ulrich Drepper  <drepper@redhat.com>
4181         * sunrpc/svc_simple.c (universal): Use __write instead of write.
4183         * wcsmbs/wcscoll.c: Also define __wcscoll.
4184         * include/wchar.h: Declare __wcscoll.
4186         * libio/fwprintf.c: Use __vfwprintf instead of vfwprintf.
4187         * libio/vwprintf.c: Likewise.
4188         * libio/wprintf.c: Likewise.
4190         * iconv/gconv_cache.c: Use __munmap instead of munmap.
4192 2001-08-16  Ulrich Drepper  <drepper@redhat.com>
4194         * posix/regex.c [_LIBC] (convert_mbs_to_wcs): Use __mbrtowc
4195         instead of mbrtowc.
4196         [_LIBC]: Use __iswctype instead of iswctype, __wcslen instead of
4197         wcslen, and __wcscoll instead of wcscoll.
4199         * sysdeps/unix/sockatmark.c (sockatmark): Use __ioctl instead of ioctl.
4201         * sysdeps/unix/sysv/linux/gai_sigqueue.c (__gai_sigqueue): Use
4202         __getuid instead of getuid.
4204         * stdio-common/perror.c (perror): Use __close instead of close.
4205         * iconv/gconv_cache.c (__gconv_load_cache): Likewise.
4206         * libio/freopen.c (freopen): Likewise.
4207         * libio/freopen64.c (freopen64): Likewise.
4209         * libio/tst-ungetwc2.c (main): Define str const.
4211         * include/wchar.h: Add prototypes for __fwprintf and __vfwprintf.
4212         * libio/fwprintf.c: Also define __fwprintf.
4213         * stdio-common/vfprintf.c [COMPILE_WPRINTF]: Also define __vfwprintf.
4214         * argp/argp-fmtstream.c: Handle wide oriented stderr stream.
4215         * assert/assert-perr.c: Likewise.
4216         * assert/assert.c: Likewise.
4217         * gmon/gmon.c: Likewise.
4218         * inet/rcmd.c: Likewise.
4219         * malloc/obstack.c: Likewise.
4220         * misc/err.c: Likewise.
4221         * misc/error.c: Likewise.
4222         * misc/getpass.c: Likewise.
4223         * posix/getopt.c: Likewise.
4224         * resolv/res_hconf.c: Likewise.
4225         * stdio-common/perror.c: Likewise.
4226         * stdio-common/psignal.c: Likewise.
4227         * stdlib/fmtmsg.c: Likewise.
4228         * sunrpc/auth_unix.c: Likewise.
4229         * sunrpc/clnt_perr.c: Likewise.
4230         * sunrpc/clnt_tcp.c: Likewise.
4231         * sunrpc/clnt_udp.c: Likewise.
4232         * sunrpc/clnt_unix.c: Likewise.
4233         * sunrpc/svc_simple.c: Likewise.
4234         * sunrpc/svc_tcp.c: Likewise.
4235         * sunrpc/svc_udp.c: Likewise.
4236         * sunrpc/svc_unix.c: Likewise.
4237         * sunrpc/xdr.c: Likewise.
4238         * sunrpc/xdr_array.c: Likewise.
4239         * sunrpc/xdr_rec.c: Likewise.
4240         * sunrpc/xdr_ref.c: Likewise.
4241         * sysdeps/generic/wordexp.c: Likewise.
4243         * po/it.po: Update from translation team.
4245         * misc/err.c: Handle wide oriented stderr stream.
4247 2001-08-14  Tom Rix  <trix@redhat.com>
4249         * iconv/gconv_cache.c (find_module): Add #ifndef STATIC_GCONV.
4250         * iconv/Makefile: Fix gconv_cache.c CFLAGS.
4252 2001-08-13  Tom Rix  <trix@redhat.com>
4254         * sysdeps/unix/sysv/aix/Makefile: Add rule to import kernel symbols.
4255         * sysdeps/unix/sysv/aix/bits/types.h: Fix type of __id_t, __useconds_t
4256         and __intptr_t.
4258 2001-08-15  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4260         * sysdeps/unix/sysv/linux/s390/s390-32/getcontext.S (__getcontext):
4261         Store the access registers to the ucontext structure.
4262         * sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S (__getcontext):
4263         Likewise.
4265         * sysdeps/unix/sysv/linux/s390/s390-32/setcontext.S (__setcontext):
4266         Load the access registers from the ucontext structure.
4267         * sysdeps/unix/sysv/linux/s390/s390-64/setcontext.S (__setcontext):
4268         Likewise.
4270         * sysdeps/unix/sysv/linux/s390/s390-32/ucontext_i.h: Adjust the SC_xxx
4271         offsets to the new ucontext layout.
4272         * sysdeps/unix/sysv/linux/s390/s390-64/ucontext_i.h: Likewise.
4274         * sysdeps/unix/sysv/linux/s390/s390-32/sys/ucontext.h: Fix the layout
4275         of the ucontext structure.
4276         * sysdeps/unix/sysv/linux/s390/s390-64/sys/ucontext.h: Likewise.
4278 2001-08-15  Ulrich Drepper  <drepper@redhat.com>
4280         * misc/error.c (error): Handle wide oriented stderr stream correctly.
4281         (error_at_line): Likewise.
4283         * stdio-common/perror.c (perror): Implement according to standard.
4284         The stream orientation must not be changed if the stream was not
4285         oriented before the call.
4286         * stdio-common/Makefile (tests): Add tst-perror.
4287         * stdio-common/tst-perror.c: New file.
4290 See ChangeLog.12 for earlier changes.