185ce2201e0c736d662d293d8632a5a13c19910d
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
2
3         * inet/getnameinfo.c: Use extend_alloca where appropriate.
4         * sysdeps/posix/getaddrinfo.c: Likewise.
5
6         * include/alloca.h (extend_alloca): New define.  Based on stack
7         direction it'll try to append to the previouls allocated buffer.
8
9 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
10
11         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
12         use the same service for AF_INET and AF_INET6.
13
14 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
15
16         * intl/localealias.c (read_alias_file): Use only about 400 bytes
17         of stack space instead of 16k.
18
19 2002-11-18  Wolfram Gloger  <wg@malloc.de>
20
21         * malloc/arena.c
22         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
23         nothing if not initialized.  Bug report from Marcus Brinkmann
24         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
25
26 2002-11-19  Roland McGrath  <roland@redhat.com>
27
28         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
29         sched_setaffinity.
30
31         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
32         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
33         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
34         * configure: Regenerated.
35
36 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
37
38         * include/dlfcn.h: __libc_dlopen is now a macro calling
39         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
40         (__libc_dlopen_mode): New prototype.
41         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
42         new parameter.  Store new parameter in mode field of structure passed
43         to do_dlopen.
44         (struct do_dlopen_args): Add new field mode.
45         (do_dlopen): Pass mode from parameter structure to _dl_open.
46
47 2002-11-11  Randolf Chung  <tausq@debian.org>
48
49         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
50         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
51         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
52
53         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
54
55         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
56         Set -mdisable-fpregs for this file.
57
58 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
59
60         * sysdeps/unix/sysv/linux/configure.in:
61         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
62         from gcc-3.0 era for backwards compatibility.
63         * sysdeps/unix/sysv/linux/configure: Regenerate.
64
65         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
66         Define mcontext_t as a sigcontext.
67
68 2002-11-18  Roland McGrath  <roland@redhat.com>
69
70         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
71         Free memory in `last_result' if it was used.
72
73         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
74         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
75         Do the parsing inline instead of copying strings and calling
76         inet_network, and properly skip all alias names not matching the form.
77
78         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
79
80 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
81
82         * manual/pattern.texi (Wordexp Example): Fix sample code.
83
84         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
85         childs stack which will be loaded into the %esi register.
86
87 2002-11-14  Paul Eggert  <eggert@twinsun.com>
88
89         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
90         overflow when skipping the question part and when unpacking aliases.
91
92 2002-11-15  Roland McGrath  <roland@redhat.com>
93
94         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
95         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
96         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
97
98 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
99
100         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
101         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
102
103 2002-11-15  Roland McGrath  <roland@redhat.com>
104
105         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
106         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
107         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
108         (+make-include-of-dep): New canned sequence.
109
110         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
111         From Dmitry V. Levin <ldv@altlinux.org>.
112
113 2002-11-14  Roland McGrath  <roland@redhat.com>
114
115         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
116         * inet/herrno.c (__libc_h_errno): Likewise.
117         * resolv/res_libc.c (__libc_res): Likewise.
118         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
119         (__res_state) [! USE___THREAD]: Don't define as weak.
120         * csu/Versions: Revert last change.
121         * resolv/Versions: Revert last change.
122
123         * Makerules ($(common-objpfx)%.make): New pattern rule.
124         * tls.make.c: New file.
125         * Makefile (distribute): Add it.
126
127         * sysdeps/generic/errno.c [! USE___THREAD]
128         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
129         with compat_symbol so they are not link-time visible.
130         [! USE___THREAD] (__libc_errno): New alias for errno.
131         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
132         Add __libc_errno here.
133         * inet/herrno.c [USE___THREAD]: Use this conditional
134         in place of [USE_TLS && HAVE___THREAD].
135         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
136         (h_errno, _h_errno): Declare these with compat_symbol so they are not
137         link-time visible.
138         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
139         * resolv/res_libc.c [! USE___THREAD]
140         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
141         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
142         (__libc_res): Define as alias for _res.
143         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
144         Add __libc_h_errno and __libc_res here.
145
146 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
147
148         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
149         * resolv/Versions (h_errno, _res): Likewise.
150
151 2002-11-14  Roland McGrath  <roland@redhat.com>
152
153         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
154         (%.symlist): Likewise.
155
156 2002-11-13  Roland McGrath  <roland@redhat.com>
157
158         * scripts/abilist.awk: New file.
159         * Makefile (distribute): Add it.
160         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
161         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
162         [$(subdir) = elf] (tests): Depend on libc.symlist.
163         (generated, common-generated): Add those files.
164
165         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
166         * configure: Regenerated.
167         * config.make.in (OBJDUMP): New variable, substituted by configure.
168
169         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
170         (mallochook, reallochook): Set them up.
171         (checkhdr): Check HDR->magic2 value.
172         (freehook): Reset HDR->magic2.
173         (memalignhook): New static function.
174         (old_memalign_hook): New static variable.
175         (mcheck, reallochook): Set __memalign_hook to memalignhook.
176
177         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
178         for the new TCB.
179
180 2002-11-13  Andreas Jaeger  <aj@suse.de>
181
182         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
183         attribute.
184         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
185
186 2002-11-11  Paul Eggert  <eggert@twinsun.com>
187
188         * manual/crypt.texi (Cryptographic Functions): Mention that
189         the MD5 one-way algorithm is compatible with BSD's.
190
191 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
192
193         * posix/regex_internal.c (re_string_skip_chars): Also return the last
194         wide character.
195         (re_string_reconstruct): Calculate the context by itself when the
196         offset points out of the valid range.
197         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
198         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
199         (IS_WIDE_WORD_CHAR): New macro.
200         (IS_WIDE_NEWLINE): New macro.
201
202 2002-11-12  Andreas Jaeger  <aj@suse.de>
203
204         * sysdeps/x86_64/strchr.S: Don't use one register for two
205         purposes, this fixes a bug noticed by test-strchr.c.
206
207         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
208         correctly.
209
210 2002-11-12  Roland McGrath  <roland@redhat.com>
211
212         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
213         (_G_IO_NO_BACKWARD_COMPAT): Define it.
214
215         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
216         instead of <pt-machine.h>.
217         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
218         testandset.
219         From Ian Wienand <ianw@gelato.unsw.edu.au>.
220
221 2002-11-10  Roland McGrath  <roland@redhat.com>
222
223         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
224         Call fputs instead of fwprintf (simpler to follow in debugger).
225
226         * crypt/md5-crypt.c: Doc fix.
227
228         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
229         the beginning of generated target commands.
230
231         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
232         dependencies for these in case implicit rule search skipped the
233         nonexistent source directory.
234         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
235         files with $(object-suffixes) as targets too.
236         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
237         and a target for it using $(make-target-directory).
238
239         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
240
241 2002-11-10  Roland McGrath  <roland@frob.com>
242
243         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
244         * sysdeps/generic/bits/pthreadtypes.h: ... here.
245
246         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
247         l_start == 0 and l_len == 1 as we do l_len == 0.
248
249 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
250
251         * po/da.po: Update from translation team.
252
253 2002-11-10  Roland McGrath  <roland@redhat.com>
254
255         * config.make.in (includedir): New variable, substituted by configure.
256         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
257         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
258
259 2002-11-10  Andreas Jaeger  <aj@suse.de>
260
261         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
262         REG_OLDMASK and REG_CR2 to synch with kernel header.
263         (NGREG): Increase.
264
265         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
266         aliasing problem.
267         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
268         * nss/getnssent_r.c (__nss_getent_r): Likewise.
269         (__nss_setent): Likewise.
270         (__nss_getent_r): Likewise.
271         * inet/getnetgrent_r.c (innetgr): Likewise.
272         (__internal_setnetgrent_reuse): Likewise.
273         (internal_getnetgrent_r): Likewise.
274         * inet/ether_hton.c (ether_hostton): Likewise.
275         * inet/ether_ntoh.c (ether_ntohost): Likewise.
276         * sunrpc/netname.c (netname2user): Likewise.
277         * sunrpc/publickey.c (getpublickey): Likewise.
278         (getsecretkey): Likewise.
279
280 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
281
282         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
283         error in range calculation.
284
285 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
286
287         * string/test-strspn.c (do_test): Ensure zero termination.
288         * string/test-strpbrk.c (do_test): Likewise.
289         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
290         * string/test-strncpy.c (stupid_strncpy): Likewise.
291         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
292
293 2002-10-08  Roland McGrath  <roland@redhat.com>
294
295         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
296         nonzero characters.
297
298 2002-09-22  H.J. Lu  <hjl@gnu.org>
299
300         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
301         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
302         only if __NR_mmap2 is defined.
303
304         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
305         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
306         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
307         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
308
309 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
310
311         * posix/bug-regex13.c (tests): Add new test.
312
313         * string/test-strchr.c (stupid_strchr): New function.
314         (do_random_tests): Make sure the string is zero terminated.
315         * string/test-strpbrk.c (stupid_strpbrk): New function.
316         (do_random_tests): Make sure the string is zero terminated.
317         * string/test-strcmp.c (stupid_strcmp): New function.
318         (do_random_tests): Make sure the strings are zero terminated.
319         * string/test-strspn.c (stupid_strspn): New function.
320         (simple_strspn): Rename rej argument to acc.
321         (do_random_tests): Make sure the string is zero terminated.
322         * string/test-strcspn.c (stupid_strcspn): New function.
323         * string/test-strncpy.c (stupid_strncpy): New function.
324         * string/test-stpncpy.c (stupid_stpncpy): New function.
325         * string/test-strncmp.c (stupid_strncmp): New function.
326         (do_random_tests): Make sure the strings are zero terminated.
327         * string/test-string.h (impl_t): Change test into long.
328         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
329
330 2002-11-08  Roland McGrath  <roland@redhat.com>
331
332         * sysdeps/ia64/elf/configure.in: Add TLS check.
333         From Ian Wienand <ianw@cse.unsw.edu.au>.
334         * sysdeps/ia64/elf/configure: Regenerated.
335
336 2002-11-07  Roland McGrath  <roland@redhat.com>
337
338         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
339         place of _IO_new_do_write.
340         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
341         #undef before versioned_symbol use.
342
343 2002-11-07  Richard Henderson  <rth@redhat.com>
344
345         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
346         * configure: Regenerated.
347         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
348         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
349         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
350         _dl_fini via gp-relative relocations.
351         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
352
353         * elf/tls-macros.h: Add alpha versions.
354         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
355         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
356         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
357         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
358         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
359         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
360         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
361         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
362         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
363         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
364         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
365         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
366         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
367         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
368         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
369         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
370         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
371         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
372
373         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
374         Kill argument registers across the inline syscall.
375
376         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
377
378         * linuxthreads/sysdeps/alpha/tls.h: New file.
379         * sysdeps/alpha/dl-tls.h: New file.
380
381 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
382
383         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
384         (gmon_initializer): New function.
385         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
386         __gmon_start__ here.  Call it from gmon_initializer() instead.
387
388 2002-03-12  H.J. Lu  <hjl@gnu.org>
389
390         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
391         tst-array2, and tst-array3.
392         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
393         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
394         ($(objpfx)tst-array1.out): New target.
395         ($(objpfx)tst-array2): Likewise.
396         ($(objpfx)tst-array2.out): Likewise.
397         ($(objpfx)tst-array3.out): Likewise.
398         * elf/tst-array1.c: New file.
399         * elf/tst-array1.exp: Likewise.
400         * elf/tst-array2.c: Likewise.
401         * elf/tst-array2dep.c: Likewise.
402         * elf/tst-array2.exp: Likewise.
403         * elf/tst-array3.c: Likewise.
404
405 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
406
407         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
408         Don't add L->l_addr to array entry values.
409
410 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
411
412         * string/test-string.h: New file.
413         * string/test-strlen.c: New file.
414         * string/test-string.h: New file.
415         * string/test-strcmp.c: New file.
416         * string/test-strchr.c: New file.
417         * string/test-strrchr.c: New file.
418         * string/test-strcpy.c: New file.
419         * string/test-stpcpy.c: New file.
420         * string/test-strncpy.c: New file.
421         * string/test-stpncpy.c: New file.
422         * string/test-strpbrk.c: New file.
423         * string/test-strcspn.c: New file.
424         * string/test-strspn.c: New file.
425         * string/test-strcat.c: New file.
426         * string/test-strncmp.c: New file.
427         * string/test-memchr.c: New file.
428         * string/test-memcmp.c: New file.
429         * string/test-memset.c: New file.
430         * string/test-memcpy.c: New file.
431         * string/test-mempcpy.c: New file.
432         * string/test-memmove.c: New file.
433         * string/Makefile (strop-tests): New variable.
434         (tests): Add strop-tests.
435         (distribute): Add test-string.h.
436
437 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
438
439         * posix/regcomp.c: Use tabs instead of spaces.
440         * posix/regexec.c: Likewise.
441         * posix/regex_internal.h: Likewise.
442
443         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
444
445 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
446
447         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
448         here.
449         (regcomp): Don't set can_be_null here.
450         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
451         (re_compile_internal): Clear can_be_null, set regs_allocated.
452
453         * posix/regcomp.c (re_set_fastmap): New function.
454         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
455         COMPLEX_BRACKET check.
456         * posix/regexec.c (re_search_internal): Optimize searching with
457         fastmap.  Call re_string_reconstruct even if match_first is
458         smaller than raw_mbs_idx.
459
460 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
461
462         * posix/regcomp (free_dfa_content): Use free_state.
463         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
464         pointers in case that realloc failed.
465         (re_node_set_merge): Likewise.
466         (register_state): Likewise.
467         (create_newstate_common): Invoke memory release functions in case of
468         error conditions.
469         (create_ci_newstate): Likewise.
470         (create_cd_newstate): Likewise.
471         (free_state): New function.
472         * posix/regexec.c (re_search_internal): Invoke memory release
473         functions in case of error conditions.
474         (sift_states_backward): Likewise.
475         (merge_state_array): Likewise.
476         (add_epsilon_src_nodes): Likewise.
477         (sub_epsilon_src_nodes): Likewise.
478         (search_subexp): Likewise.
479         (sift_states_bkref): Likewise.
480         (transit_state_sb): Likewise.
481         (transit_state_mb): Likewise.
482         (transit_state_bkref_loop): Likewise.
483         (group_nodes_into_DFAstates): Likewise.
484         (push_fail_stack): Don't edit pointers in case that realloc failed.
485         (extend_buffers): Likewise.
486         (match_ctx_add_entry): Likewise.
487
488 2002-11-06  Roland McGrath  <roland@redhat.com>
489
490         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
491         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
492
493         * configure.in: Add checks on as and ld for binutils 2.13 or later.
494         * configure: Regenerated.
495
496 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
497
498         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
499         If re_compile_internal failed free fastmap buffer.
500         (free_dfa_content): Broken out of regfree function.  Frees all dfa
501         related data.
502         (regfree): Add free_dfa_content.
503         (re_compile_internal): If any of the called functions fails free
504         all dfa related memory.
505
506 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
507
508         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
509         warnings from the kernel headers.
510
511 2002-11-05  Roland McGrath  <roland@redhat.com>
512
513         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
514         From Johannes Stezenbach <js@convergence.de>.
515
516         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
517         #errlist-compat magic comment to give 123 as size.
518         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
519         (libc: GLIBC_2.2): ... here.
520         (libc: GLIBC_2.3): Likewise.
521
522 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
523
524         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
525         which happens at the beginning so that we can unload modules in
526         __libc_freeres.
527
528 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
529
530         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
531         under [__USE_MISC || _ASM].
532
533         * elf/elf.h: Remove the obsolete SH TLS relocations.
534
535 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
536
537         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
538
539 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
540
541         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
542         __NR_pread64 and __NR_pwrite64.
543         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
544         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
545         and __NR_pwrite64.
546         Revert change to use INLINE_SYSCALL.
547         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
548         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
549         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
550         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
551         INLINE_SYSCALL.
552         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
553
554         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
555         Update clobber list and add a comment about the syscall ABI.
556
557         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
558         s_pwrite64, s_ftruncate, s_truncate): Re-add.
559
560 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
561
562         * iconv/gconv_dl.c (free_mem): Clear loaded.
563         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
564         cleanup if any.
565
566 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
567
568         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
569
570         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
571         as old code without locking.  _IO_seekoff calls this function after
572         locking the stream.
573         * libio/ioseekpos.c: Likewise for _IO_seekpos.
574         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
575         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
576         prototypes.
577         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
578         of _IO_seekoff_internal.
579         (_IO_rewind): Likewise.
580         * libio/ioftell.c: Likewise.
581         * libio/ftello.c: Likewise.
582         * libio/ftello64.c: Likewise.
583         * libio/iofgetpos.c: Likewise.
584         * libio/iofgetpos64.c: Likewise.
585         * libio/oldiofgetpos.c: Likewise.
586         * libio/oldiofgetpos64.c: Likewise.
587         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
588         _IO_seekpos_internal.
589         * libio/iofsetpos64.c: Likewise.
590         * libio/oldiofsetpos.c: Likewise.
591         * libio/oldiofsetpos64.c: Likewise.
592
593 2002-11-04  Roland McGrath  <roland@redhat.com>
594
595         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
596         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
597         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
598         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
599         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
600         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
601         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
602         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
603         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
604         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
605         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
606         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
607         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
608         Remove these, no longer used.
609
610 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
611
612         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
613         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
614         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
615         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
616         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
617         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
618         syscall stubs.
619
620         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
621         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
622         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
623         and __NR_pread.
624         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
625         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
626         and __NR_pwrite.
627         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
628
629 2002-11-03  Roland McGrath  <roland@redhat.com>
630
631         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
632         `_dl_tls_static_used'.
633         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
634         (__libc_setup_tls): Initialize it.  Let the initial value of
635         _dl_tls_static_size indicate some surplus space in the computed value.
636         * elf/dl-open.c (_dl_tls_static_size): New variable.
637         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
638         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
639         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
640         (CHECK_STATIC_TLS): Use it.
641         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
642         closed objects occupied a trailing contiguous chunk of static TLS area.
643
644 2002-10-18  Bruno Haible  <bruno@clisp.org>
645
646         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
647
648 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
649
650         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
651         _wide_data->_IO_read_end if adjustment can be made in the current
652         buffer.
653
654         * sysdeps/unix/sysv/linux/fexecve.c: New file.
655
656         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
657         wide oriented streams are used.
658
659         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
660         service hasn't been used [PR libc/4744].
661
662         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
663         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
664
665         * manual/examples/dir.c: Don't include <stddef.h>.
666         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
667         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
668
669 2002-11-02  H.J. Lu  <hjl@gnu.org>
670
671         * stdio-common/reg-printf.c: Include <stddef.h>.
672
673 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
674
675         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
676
677         * po/ca.po: Update from translation team.
678         * po/es.po: Likewise.
679
680         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
681         is defined write out memory map.
682         * sysdeps/unix/sysv/linux/segfault.c: New file.
683
684 2002-11-02  Roland McGrath  <roland@redhat.com>
685
686         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
687         pointers that can alias.
688         Reported by Daniel Jacobowitz <drow@mvista.com>.
689
690         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
691
692 2002-11-02  Roland McGrath  <roland@redhat.com>
693
694         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
695         description to be clearer and to say that *RESULT is set to ENTRY.
696
697 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
698
699         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
700         dests_ch arrays together.  Alloca or malloc dest_states,
701         dest_states_word and dest_states_nl arrays together.  Free memory on
702         error exit.
703
704 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
705
706         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
707         and current_saltbits.
708
709 2002-11-02  Roland McGrath  <roland@redhat.com>
710
711         * stdio-common/reg-printf.c: Include <stdlib.h>.
712
713 2002-11-02  H.J. Lu  <hjl@gnu.org>
714
715         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
716         caller to EXTRA instead of execve.
717
718 2002-11-01  Roland McGrath  <roland@redhat.com>
719
720         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
721         in place of [!(USE_TLS && HAVE___THREAD)].
722         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
723
724 2002-10-31  Roger Sayle  <roger@eyesopen.com>
725
726         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
727         New macros.
728         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
729
730         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
731         without defining FP_ROUNDMODE.
732
733 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
734
735         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
736         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
737         declare_symbol.
738         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
739         (OLD_SIGLIST_SIZE): Define.
740         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
741         (OLD_SIGLIST_SIZE): Define.
742         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
743
744 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
745
746         * sysdeps/ia64/strncpy.S: Fix recovery code.
747
748 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
749
750         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
751         New macros.
752         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
753         text_set_element.
754         * elf/dl-libc.c (free_mem): Likewise.
755         * iconv/gconv_conf.c (free_mem): Likewise.
756         * iconv/gconv_db.c (free_mem): Likewise.
757         * iconv/gconv_dl.c (free_mem): Likewise.
758         * iconv/gconv_cache.c (free_mem): Likewise.
759         * intl/finddomain.c (free_mem): Likewise.
760         * intl/dcigettext.c (free_mem): Likewise.
761         * locale/setlocale.c (free_mem): Likewise.
762         * misc/fstab.c (fstab_free): Likewise.
763         * nss/nsswitch.c (free_mem): Likewise.
764         * posix/regcomp.c (free_mem): Likewise.
765         * resolv/gai_misc.c (free_res): Likewise.
766         * stdlib/fmtmsg.c (free_mem): Likewise.
767         * sunrpc/clnt_perr.c (free_mem): Likewise.
768         * sysdeps/generic/setenv.c (free_mem): Likewise.
769         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
770         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
771         * time/tzset.c (free_mem): Likewise.
772         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
773         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
774         * malloc/set-freeres.c (__libc_freeres): Likewise.
775
776         * login/getutent.c: Include stdlib.h instead of stddef.h.
777         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
778         (__getutent): Allocate buffer the first time it is run.
779         * login/getutid.c: Include stdlib.h instead of stddef.h.
780         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
781         (__getutid): Allocate buffer the first time it is run.
782         * login/getutline.c: Include stdlib.h instead of stddef.h.
783         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
784         (__getutline): Allocate buffer the first time it is run.
785         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
786         (mtrace): Allocate malloc_trace_buffer.
787         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
788         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
789         * string/strerror.c: Include libintl.h and errno.h.
790         (buf): New variable.
791         (strerror): Only allocate buffer if actually needed (unknown error).
792         * time/tzfile.c (transitions): Add libc_freeres_ptr.
793         (freeres): Remove.
794
795 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
796
797         * include/libc-symbols.h (libc_freeres_ptr): New macro.
798         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
799         symbol_set_define.
800         (__libc_freeres): Free all pointers in that section.
801         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
802         commands when creating .lds script.
803         (LDSEDCMD-c.so): New variable.
804         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
805         (rcmd_af): Use strdup to allocate ahostbuf.
806         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
807         (rexec_af): Use strdup to allocate ahostbuf.
808         * stdio-common/reg-printf.c (printf_funcs): Remove.
809         (__printf_arginfo_table): Change into printf_arginfo_function **.
810         Add libc_freeres_ptr.
811         (__register_printf_function): Allocate __printf_arginfo_table
812         and __printf_function_table the first time it is called.
813         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
814         printf_arginfo_function **.
815         (parse_one_spec): Add __builtin_expect.
816         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
817         (free_mem): Remove.
818         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
819         (free_mem): Remove.
820         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
821         (string_space, map): Add libc_freeres_ptr.
822         (free_mem): Remove.
823         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
824         (free_mem): Remove.
825         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
826         (free_mem): Remove.
827         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
828         (buffer): Add libc_freeres_ptr.
829         (free_mem): Remove for _LIBC.
830         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
831         (free_mem): Remove.
832         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
833         (free_mem): Remove.
834         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
835         (free_mem): Remove.
836         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
837         (free_mem): Remove.
838         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
839         (free_mem): Remove.
840         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
841         (free_mem): Remove.
842         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
843         libc_freeres_ptr.
844         (free_mem): Remove.
845         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
846         libc_freeres_ptr.
847         (free_mem): Remove.
848
849 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
850
851         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
852         instead of duplicating the whole function in libc.
853
854 2002-10-31  Roland McGrath  <roland@redhat.com>
855
856         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
857         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
858
859 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
860
861         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
862         32bit-predefine when creating .new32 list and -U for each
863         32bit-predefine when creating .new64 list.
864         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
865
866 2002-10-29  Andreas Schwab  <schwab@suse.de>
867
868         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
869         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
870
871 2002-10-25  Roland McGrath  <roland@redhat.com>
872
873         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
874         * sysdeps/unix/sysv/linux/configure: Regenerated.
875
876         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
877         _dl_starting_up decl.
878
879 2002-10-20  H.J. Lu  <hjl@gnu.org>
880
881         * sysdeps/unix/sysv/linux/configure.in: Don't check
882         /lib/modules/`uname -r`/build/include for kernel headers if
883         cross compiling.
884         * sysdeps/unix/sysv/linux/configure: Regenerated.
885
886 2002-10-25  Roland McGrath  <roland@redhat.com>
887
888         * math/math.h (M_LOG2El): Correct the value.
889         From Stephen L Moshier <steve@moshier.net>.
890
891         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
892         conditional from __libc_multiple_libcs access.  Remove kludge for weak
893         symbol access with old compilers we no longer support.
894         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
895         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
896
897 2002-10-25  Roland McGrath  <roland@redhat.com>
898
899         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
900         implement SV_RESETHAND by translating it to SA_RESETHAND.
901
902 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
903
904         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
905         type on ELF64 platforms.
906
907 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
908
909         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
910
911         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
912
913 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
914
915         * elf/dl-misc.c: Include <sysdep.h>.
916         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
917
918         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
919         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
920         (INLINE_SYSCALL): Use that.
921         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
922         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
923         (INLINE_SYSCALL): Use that.
924         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
925         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
926         (INLINE_SYSCALL): Use that.
927         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
928         dl-sysdep.h.
929         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
930         (__INTERNAL_SYSCALL_STRING): Define.
931         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
932         dl-sysdep.h.
933         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
934         (__INTERNAL_SYSCALL_STRING): Define.
935         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
936         __SYSCALL_STRING to inline_syscall*.
937         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
938         New macros.
939         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
940         inline_syscall4, inline_syscall5, inline_syscall6): Add string
941         argument.
942
943 2002-10-24  Roland McGrath  <roland@redhat.com>
944
945         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
946         * sysdeps/unix/sysv/linux/init-first.c: Not here.
947         * sysdeps/powerpc/elf/libc-start.c: Or here.
948         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
949         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
950         * sysdeps/unix/sysv/aix/init-first.c: Or here.
951         * sysdeps/generic/libc-start.c: Or here.
952         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
953         access with [! SHARED].
954         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
955
956         * libio/bug-wfflush.c: New file.
957         * libio/Makefile (tests): Add bug-wfflush.
958
959 2002-10-23  Roland McGrath  <roland@redhat.com>
960
961         * stdio-common/tst-fphex.c: New file.
962         * stdio-common/Makefile (tests): Add tst-fphex.
963         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
964         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
965         chars always before the value digits.
966         Reported by James Antill <james.antill@redhat.com>.
967
968 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
969
970         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
971         (free_mem): New function.
972         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
973         if not cross compiling.
974         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
975         (bug-regex14-ENV): Set.
976         (bug-regex14-mem): New target.
977         * posix/bug-regex14.c: New file.
978
979 2002-10-23  Roland McGrath  <roland@redhat.com>
980
981         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
982         target, so we don't touch it when the link fails.
983
984         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
985         Check for the result overflowing off_t and fail with EOVERFLOW.
986         * libio/ioftell.c (_IO_ftell): Likewise.
987         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
988
989         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
990         use a temporary timeval on the stack for gettimeofday and copy it.
991         * login/logout.c (logout): Likewise.
992         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
993
994         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
995         Use __SWORD_TYPE instead of int for member types.
996         (struct statfs64): Likewise.
997         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
998         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
999         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
1000         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
1001         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
1002
1003         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
1004         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
1005         (ST_NODIRATIME): Restore fixed value of 2048.
1006         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
1007         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
1008
1009         Rearranged <bits/types.h> definitions to reduce duplication.
1010         * sysdeps/generic/bits/types.h: Rewritten, using macros from
1011         <bits/wordsize.h> and new header <bits/typesizes.h>.
1012         * posix/Makefile (headers): Add bits/typesizes.h here.
1013         * sysdeps/generic/bits/typesizes.h: New file.
1014         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
1015         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
1016         * sysdeps/mach/hurd/bits/typesizes.h: New file.
1017         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
1018         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
1019         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
1020         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
1021         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
1022         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
1023         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
1024         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
1025         <bits/pthreadtypes.h> here, not in <bits/types.h>.
1026         * signal/signal.h: Likewise.
1027
1028         * streams/stropts.h: Include <bits/xtitypes.h>.
1029         * streams/Makefile (headers): Add bits/xtitypes.h here.
1030         * sysdeps/generic/bits/xtitypes.h: New file.
1031         * sysdeps/s390/bits/xtitypes.h: New file.
1032         * sysdeps/ia64/bits/xtitypes.h: New file.
1033         * sysdeps/x86_64/bits/xtitypes.h: New file.
1034
1035         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
1036         * sysdeps/generic/bits/ipctypes.h: New file.
1037         * sysdeps/mips/bits/ipctypes.h: New file.
1038         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
1039         * sysdeps/gnu/bits/msq.h: Likewise.
1040         * sysvipc/sys/ipc.h: Likewise.
1041
1042 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
1043
1044         * elf/dl-load.c (struct filebuf): For buf element to have the
1045         alignment of ElfXX_Ehdr since this is what will be stored in it.
1046
1047 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
1048
1049         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
1050         into pointer to locrec_offset.
1051         (add_locale_to_archive): Adjust callers.  Free normalized_name right
1052         before returning, not immediately after add_locale, pass it to
1053         add_alias if not NULL instead of name.  Rename second normalized_name
1054         occurence to nnormalized_codeset_name.
1055
1056         * locale/programs/locarchive.c (enlarge_archive): Make sure
1057         string_size is always a multiple of 4.
1058         Reported by Andreas Schwab <schwab@suse.de>.
1059
1060 2002-10-21  Andreas Schwab  <schwab@suse.de>
1061
1062         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
1063         caller to EXTRA instead of execve, since the latter has a
1064         higher-priority implementation in linuxthreads.
1065
1066 2002-10-21  Roland McGrath  <roland@redhat.com>
1067
1068         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
1069         slotinfo list's len member to the proper size, not just 1.
1070         Initialize static_map.l_tls_initimage.
1071
1072         * elf/dl-open.c (dl_open_worker): Fix loop searching for
1073         dtv_slotinfo_list element containing new modules' l_tls_modid.
1074
1075         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
1076         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
1077         * elf/Makefile (tests): Add tst-tls9.
1078         (tests-static): Add tst-tls9-static.
1079         (tst-tls9-static-ENV): New variable.
1080         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
1081
1082         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
1083         modids used by partially loaded modules being closed can't be known.
1084
1085 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
1086
1087         * posix/Makefile: Add a test case for the bug reported by Aharon
1088         Robbins <arnold@skeeve.com>.
1089         * posix/bug-regex13.c: New file.
1090         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
1091
1092 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
1093
1094         * csu/gmon-start.c: Pretty printing.
1095
1096 2002-10-19  Art Haas  <ahaas@neosoft.com>
1097
1098         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
1099         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
1100         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
1101         * configure: Regenerated.
1102
1103 2002-10-19  Roland McGrath  <roland@redhat.com>
1104
1105         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
1106         and then set $subdirs directly, because the new Autoconf breaks
1107         compatibility in every way imaginable and insists on whining
1108         about usage that worked since the dawn of time.
1109         * configure: Regenerated.
1110
1111         * configure: Regenerated (using Autoconf 2.54).
1112         * sysdeps/alpha/elf/configure: Likewise.
1113         * sysdeps/generic/configure: Likewise.
1114         * sysdeps/i386/elf/configure: Likewise.
1115         * sysdeps/ia64/elf/configure: Likewise.
1116         * sysdeps/mach/hurd/configure: Likewise.
1117         * sysdeps/mach/configure: Likewise.
1118         * sysdeps/unix/configure: Likewise.
1119         * sysdeps/unix/common/configure: Likewise.
1120         * sysdeps/unix/sysv/aix/configure: Likewise.
1121         * sysdeps/unix/sysv/linux/configure: Likewise.
1122         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
1123         * sysdeps/x86_64/elf/configure: Likewise.
1124
1125         * config.make.in: Nix completely-soft nonsense.
1126         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
1127         of machine directories instead of fpu subdirectory.
1128         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
1129         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
1130         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
1131         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
1132         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
1133         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
1134         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
1135         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
1136         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
1137         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
1138         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
1139         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
1140         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
1141         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
1142         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
1143         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
1144         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
1145         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
1146         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
1147         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
1148         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
1149         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
1150         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
1151         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
1152         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
1153         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
1154         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
1155         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
1156         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
1157         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
1158         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
1159         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
1160         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
1161         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
1162         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
1163         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
1164         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
1165         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
1166         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
1167         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
1168
1169 2002-10-19  Bruno Haible  <bruno@clisp.org>
1170
1171         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
1172
1173 2002-10-18  Roland McGrath  <roland@redhat.com>
1174
1175         * io/Makefile (routines): Add lchmod.
1176         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
1177         * sysdeps/generic/lchmod.c: New file.
1178         * sysdeps/mach/hurd/lchmod.c: New file.
1179         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
1180
1181 2002-10-18  Art Haas  <ahaas@neosoft.com>
1182
1183         * configure.in: Remove remaining AC_FD_CC macros, and replace
1184         AC_FD_MSG with AS_MESSAGE_FD.
1185
1186 2002-10-18  Roland McGrath  <roland@redhat.com>
1187
1188         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
1189         typos: VALUE -> FINALADDR.
1190
1191         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
1192         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
1193         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
1194         (inline_syscall6): Move these macros ...
1195         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
1196
1197         * configure.in (libc_link_dests, libc_link_sources): Remove these
1198         variables and the AC_LINK_FILES call.
1199
1200         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
1201         change to put new symbols here instead of in GLIBC_2.2.
1202         * sysdeps/powerpc/Subdirs: Move this file ...
1203         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
1204
1205 2002-10-07  Roland McGrath  <roland@redhat.com>
1206
1207         * sysdeps/generic/bits/time.h: Replaced with contents of the
1208         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
1209         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
1210         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
1211         macros is ok even for architectures that don't now implement them.
1212         * sysdeps/mach/hurd/bits/time.h: File removed.
1213         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
1214         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
1215         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
1216         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
1217         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
1218
1219 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
1220
1221         * configure.in: Replace obsolete AC_OUTPUT syntax with
1222         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
1223
1224         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
1225         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
1226
1227         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
1228         * sysdeps/alpha/elf/configure.in: Likewise.
1229         * sysdeps/i386/elf/configure.in: Likewise.
1230         * sysdeps/mach/hurd/configure.in: Likewise.
1231         * sysdeps/x86_64/elf/configure.in: Likewise.
1232
1233         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
1234
1235         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
1236         * sysdeps/generic/configure.in: Likewise.
1237         * sysdeps/i386/elf/configure.in: Likewise.
1238         * sysdeps/ia64/elf/configure.in: Likewise.
1239         * sysdeps/mach/configure.in: Likewise.
1240         * sysdeps/mach/hurd/configure.in: Likewise.
1241         * sysdeps/unix/configure.in: Likewise.
1242         * sysdeps/unix/common/configure.in: Likewise.
1243         * sysdeps/unix/sysv/aix/configure.in: Likewise.
1244         * sysdeps/unix/sysv/linux/configure.in: Likewise.
1245         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
1246         * sysdeps/x86_64/elf/configure.in: Likewise.
1247
1248         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
1249         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
1250         that it's obvious when extra autoconf machinery is being dragged in.
1251
1252 2002-10-18  Roland McGrath  <roland@redhat.com>
1253
1254         * configure.in: Remove bogus echo included in
1255         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
1256         * configure: Regenerated.
1257
1258 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
1259
1260         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
1261         (statfs_filesize_max): New function.
1262         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
1263         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
1264         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
1265         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
1266         statfs_filesize_max.
1267         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
1268         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
1269         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
1270
1271 2002-10-17  Roland McGrath  <roland@redhat.com>
1272
1273         * configure.in (MIG): Just AC_SUBST it here.
1274         * configure: Regenerated.
1275         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
1276         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
1277         * sysdeps/mach/configure: Regenerated.
1278
1279         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
1280         and AC_PROVIDE([_AS_CR_PREPARE]).
1281
1282         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
1283         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
1284
1285         * elf/dl-support.c: Move _dl_tls_* variables to ...
1286         * sysdeps/generic/libc-tls.c: ... here.
1287
1288         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
1289         allow IDX to be one past the current last slotinfo entry.
1290         (_dl_close): Pass IMAP->l_init_called for that parameter.
1291
1292 2002-10-07  Andreas Schwab  <schwab@suse.de>
1293
1294         * aclocal.m4: Fix for autoconf 2.53.
1295         * configure.in: Likewise.  Require autoconf 2.53.
1296
1297 2002-10-08  Richard Henderson  <rth@redhat.com>
1298
1299         * soft-fp/op-4.h: Handle carry correctly in
1300         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
1301         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
1302         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
1303
1304 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
1305
1306         * configure.in: Compute completely-soft.
1307         * config.make.in: Make completely-soft available to sub-makes.
1308         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
1309         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
1310         fe_nomask to libm-support.
1311         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
1312         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
1313         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
1314         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
1315         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
1316         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
1317         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
1318         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
1319         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
1320         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
1321         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
1322         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
1323         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
1324         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
1325         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
1326         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
1327         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
1328         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
1329         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
1330         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
1331         __sim_round_mode.
1332         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
1333         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
1334         FP_HANDLE_EXCEPTIONS.
1335         Define FP_ROUNDMODE.
1336         Redefine FP_* macros to correspond to the FE_* bit positions.
1337         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
1338         Define externs for __sim_exceptions, __sim_disabled_exceptions,
1339         __sim_round_mode, __simulate_exceptions.
1340         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
1341         * sysdeps/powerpc/bits/fenv.h: ...to here.
1342
1343 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
1344
1345         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
1346         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
1347         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
1348         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
1349         __builtin_expect.
1350
1351 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
1352
1353         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
1354         __libc_res_nsend): New prototypes.
1355         * resolv/res_query.c (QUERYSIZE): Define.
1356         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
1357         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
1358         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
1359         res_nsend, pass answerp.
1360         (res_nquery): Changed into wrapper around __libc_res_nquery.
1361         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
1362         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
1363         instead of the non-__libc_ variants, pass them answerp.
1364         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
1365         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
1366         Added answerp argument.  Call __libc_res_nquery instead of
1367         res_nquery, pass answerp.
1368         (res_nquerydomain): Changed into wrapper around
1369         __libc_res_nquerydomain.
1370         * resolv/res_send.c: Include sys/ioctl.h.
1371         (MAXPACKET): Define.
1372         (send_vc): Change arguments.  Reallocate answer buffer if it is
1373         too small.
1374         (send_dg): Likewise.
1375         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
1376         Reallocate answer buffer if it is too small and hooks are in use.
1377         Adjust calls to send_vc and send_dg.
1378         (res_nsend): Changed into wrapper around __libc_res_nsend.
1379         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
1380         just 1K answer buffer on the stack, use __libc_res_nsearch instead
1381         of res_nsearch.
1382         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
1383         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
1384         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
1385         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
1386         (gethostbyaddr): Similarly with __libc_res_nquery.
1387         * resolv/Versions (libresolv): Export __libc_res_nquery and
1388         __libc_res_nsearch at GLIBC_PRIVATE.
1389
1390 2002-10-17  Roland McGrath  <roland@redhat.com>
1391
1392         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
1393         * configure: Regenerated.
1394
1395         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
1396         before performing the reloc, not after.
1397         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
1398
1399 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
1400
1401         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
1402         * locale/programs/linereader.c (lr_open): Likewise.
1403         * locale/programs/charmap-dir.c (charmap_open): Likewise.
1404         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
1405
1406 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
1407
1408         * posix/bug-regex11.c: Add a test case for the bug reported by
1409         Paolo Bonzini <bonzini@gnu.org>.
1410         * posix/regexec.c (sift_states_bkref): Use correct destination of
1411         the back reference.
1412
1413 2002-10-17  Roland McGrath  <roland@redhat.com>
1414
1415         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
1416         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
1417         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
1418         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
1419         Call it after performing TPOFF relocs.
1420         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
1421         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
1422         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
1423
1424         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
1425         when closing a partially-initialized object.
1426
1427         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
1428         instead of _dl_fatal_printf when we see PT_TLS.
1429
1430         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
1431         instead of $(libof-$<).
1432
1433 2002-10-16  Roland McGrath  <roland@redhat.com>
1434
1435         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
1436         instead of += to append, to be sure $(lib) gets expanded at defn time.
1437         (libof-$(cpp-src)): New variable, define this instead.
1438         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
1439         (lib): Don't use override.
1440         (CPPFLAGS-$(lib)): New variable, put -D's here.
1441         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
1442         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
1443         LIB found by $(libof-*) for basename, target, or source.
1444         * Makerules (CPPFLAGS-nonlib): New variable.
1445         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
1446         * locale/Makefile (lib): Likewise.
1447         * sunrpc/Makefile (lib): Likewise.
1448
1449         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
1450         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
1451         * sysdeps/unix/sysv/linux/pathconf.h: New file.
1452         (statfs_link_max): New function, guts from fpathconf.c.
1453         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
1454         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
1455         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
1456         to use the linux/pathconf.c code by #include rather than duplication.
1457         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
1458
1459 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
1460
1461         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
1462         Use __libc_errno only for libc itself.
1463
1464 2002-10-16  Andreas Jaeger  <aj@suse.de>
1465
1466         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
1467
1468 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
1469
1470         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
1471         Use __libc_errno only for libc itself.
1472
1473 2002-10-15  Roland McGrath  <roland@redhat.com>
1474             Jakub Jelinek  <jakub@redhat.com>
1475
1476         * sysdeps/unix/sysv/linux/Makefile
1477         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
1478         sparc/Makefile to produce a bi-arch file as needed.
1479         That's now parameterized by the variable $(64bit-predefine).
1480         Use LC_ALL=C for `comm' commands in that rule.
1481         No longer conditional on [$(no_syscall_list_h)].
1482         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
1483         (64bit-predefine): New variable.
1484         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
1485         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
1486         * sysdeps/unix/sysv/linux/powerpc/Makefile
1487         (64bit-predefine): New variable.
1488
1489 2002-10-15  Roland McGrath  <roland@redhat.com>
1490
1491         * sysdeps/unix/sysv/linux/Makefile
1492         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
1493
1494         * login/utmp-private.h: Declare __libc_utmp_lock.
1495         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
1496         and call __libc_utmp_jump_table functions directly, instead of using
1497         __setutent et al.
1498
1499         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
1500         * sysdeps/unix/sysv/linux/configure: Regenerated.
1501
1502         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
1503         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
1504         Use int32_t for ll_time.
1505         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
1506         Use int32_t instead of long int for ut_session.
1507         Use an anonymous struct with 32-bit fields for ut_tv.
1508         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
1509         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
1510         here as in utmp.h for `struct utmp'.
1511         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
1512         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
1513         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
1514         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
1515         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
1516         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
1517
1518         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
1519         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
1520         All the following files were identical or equivalent to it.
1521         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
1522         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
1523         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
1524         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
1525         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
1526         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
1527         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
1528         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
1529         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
1530         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
1531
1532         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
1533         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
1534         Other than the previously incorrect sign of msg_iovlen, this is a
1535         no-op on 32-bit platforms.  On 64-bit platforms it makes this header
1536         match their layouts as well, so the following are now identical to it.
1537         * sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
1538         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
1539         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
1540         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
1541         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
1542
1543 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
1544
1545         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
1546         Define for 2.4+ kernels.
1547
1548         * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
1549         are known to have the vfork syscall.  Don't confuse the CPUs
1550         branch prediction unit by jumping to the return address.
1551
1552         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
1553         support for reiserfs and xfs.
1554
1555         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
1556         XFS link count.
1557         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
1558         and XFS_LINK_MAX.
1559         Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
1560
1561 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
1562
1563         * include/libc-symbols.h (attribute_tls_model_ie): Define.
1564         * include/errno.h (errno): Define to __libc_errno in libc.so.
1565         Add attribute_tls_model_ie.
1566         * include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
1567         Add attribute_tls_model_ie.
1568         * include/resolv.h (_res): Define to __libc_res in libc.so.  Add
1569         attribute_tls_model_ie.
1570         * inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
1571         (h_errno): Define.
1572         * resolv/res_libc.c (__libc_res): Add hidden alias to _res.
1573         (_res): Define.
1574         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
1575         attribute_tls_model_ie.
1576         * sysdeps/generic/errno-loc.c (errno): Only undefine if not using
1577         __thread.
1578         * sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
1579         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
1580         __libc_errno in USE___THREAD case.
1581         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
1582         Likewise.
1583         * configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
1584         __attribute__((tls_model (""))).
1585         * configure: Rebuilt.
1586         * config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
1587
1588 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
1589
1590         * timezone/asia: Update from tzdata2002d.
1591         * timezone/australasia: Likewise.
1592         * timezone/iso3166.tab: Likewise.
1593         * timezone/southamerica: Likewise.
1594         * timezone/zone-tab: Likewise.
1595
1596 2002-10-15  Roland McGrath  <roland@redhat.com>
1597
1598         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
1599         Adjust TCB pointer before calling free, so we get the whole block.
1600
1601 2002-10-14  Roland McGrath  <roland@redhat.com>
1602
1603         * sysdeps/unix/sysv/linux/x86_64/sigaction.c
1604         [HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
1605         extern using attribute_hidden instead of static, avoids warning.
1606
1607 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
1608
1609         * sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
1610         * sysdeps/unix/sysv/linux/configure: Rebuilt.
1611
1612 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
1613
1614         * po/sv.po: Update from translation team.
1615
1616 2002-10-12  H.J. Lu  <hjl@gnu.org>
1617
1618         * sunrpc/thrsvc.c (PROCQUIT): New.
1619         (struct rpc_arg): New.
1620         (dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
1621         (test_one_call): Take struct rpc_arg * instead of CLIENT *c.
1622         (thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
1623         (main): Modified for struct rpc_arg *.
1624
1625 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
1626
1627         * dirent/scandir.c: Rearrange code a bit to reduce binary size.
1628
1629 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
1630
1631         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
1632         (SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
1633         in ld.so even if __thread is supported.
1634
1635 2002-10-13  Jakub Jelinek  <jakub@redhat.com>
1636
1637         * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
1638         Add hack to prevent the compiler from clobbering the signal context.
1639         * sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
1640         Likewise.
1641         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
1642         Likewise.
1643
1644 2002-10-14  Andreas Jaeger  <aj@suse.de>
1645
1646         * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
1647         Guido Guenther <agx@sigxcpu.org>.
1648
1649 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
1650
1651         * po/sk.po: Update from translation team.
1652
1653 2002-09-26  Roland McGrath  <roland@redhat.com>
1654
1655         * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
1656         dynamic string tag.
1657         * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
1658         DL_DST_LIB based on $(slibdir).
1659
1660 2002-10-13  Roland McGrath  <roland@frob.com>
1661
1662         * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
1663
1664         * sysdeps/mach/hurd/getresuid.c: New file.
1665         * sysdeps/mach/hurd/getresgid.c: New file.
1666         * sysdeps/mach/hurd/setresuid.c: New file.
1667         * sysdeps/mach/hurd/setresgid.c: New file.
1668
1669         * posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
1670         setresgid): Declare them.
1671         * NEWS: Mention it.
1672         * include/unistd.h
1673         (__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
1674         add libc_hidden_proto.
1675         * posix/Versions (libc: GLIBC_2.3.2): New set.  Add
1676         getresuid, getresgid, setresuid, setresgid here.
1677         * Versions.def (libc): Define GLIBC_2.3.2 set.
1678         * sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
1679         Add libc_hidden_def.
1680         * sysdeps/generic/getresgid.c (__getresgid): Likewise.
1681         * sysdeps/generic/setresgid.c: New file.
1682         * sysdeps/generic/setresuid.c: New file.
1683         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
1684         (sysdep_routines): Don't add getresuid and getresgid here.
1685         * sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
1686         (sysdep_routines): Don't add setresuid and setresgid here.
1687         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
1688         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
1689         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
1690         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
1691         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
1692         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
1693         * posix/Makefile (routines): Add them all here instead.
1694         * sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
1695         __getresuid.  Add libc_hidden_def for that, and weak alias to old name.
1696         * sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
1697         __getresgid.  Add libc_hidden_def for that, and weak alias to old name.
1698         * sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
1699         [! __NR_setresuid]: Include generic file.
1700         * sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
1701         __setresgid.  Add libc_hidden_def for that, and weak alias to old name.
1702         [! __NR_setresuid]: Include generic file.
1703         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
1704         Caller is - now, not EXTRA.
1705         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
1706         (setresuid, setresgid, getresuid, getresgid): Likewise.
1707         * sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
1708         Add these calls here.
1709         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
1710         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
1711         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
1712         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
1713         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
1714         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
1715         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
1716         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
1717         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
1718
1719         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
1720         (sysdep_routines): Add setfsuid and setfsgid here.
1721         * sysdeps/unix/sysv/linux/arm/Makefile: Not here.
1722         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
1723         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
1724         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
1725         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
1726         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
1727         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
1728         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
1729
1730         * hurd/errno.c: Renamed to ...
1731         * hurd/errno-loc.c: ... this.
1732         * hurd/Makefile (routines): errno -> errno-loc
1733
1734 2002-10-13  Ulrich Drepper  <drepper@redhat.com>
1735
1736         * po/de.po: Update from translation team.
1737
1738         * MakeTAGS: Add -E flag to xgettext runs.
1739
1740 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
1741
1742         * po/fr.po: Update from translation team.
1743
1744         * sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
1745         Optimize a bit for use in glibc.
1746
1747 2002-10-12  Roland McGrath  <roland@redhat.com>
1748
1749         * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
1750         Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
1751
1752 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
1753
1754         * po/sv.po: Update from translation team.
1755
1756 2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
1757
1758         * posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
1759         OP_CONTEXT_NODE.
1760         (regfree): Likewise.
1761         (create_initial_state): Likewise.
1762         (analyze): Remove the substitutions which became useless.
1763         (calc_first): Likewise.
1764         (calc_epsdest): Use edests of OP_BACK_REF in case that it has
1765         epsilon destination.
1766         (duplicate_node_closure): New function.
1767         (duplicate_node): Remove the handling OP_CONTEXT_NODE.
1768         (calc_inveclosure): Likewise.
1769         (calc_eclosure): Likewise.
1770         (calc_eclosure_iter): Invoke duplicate_node_closure instead of
1771         direct invocation of duplicate_node.
1772         (parse): Don't use comma operator in the return to avoid compiler
1773         warning.
1774         (parse_reg_exp): Likewise.
1775         (parse_branch): Likewise.
1776         (parse_expression): Likewise.
1777         (parse_sub_exp): Likewise.
1778         (parse_dup_op): Likewise.
1779         * posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
1780         which became useless.
1781         (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
1782         (create_cd_newstate): Likewise.
1783         * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
1784         (re_token_t): Likewise.
1785         (re_dfa_t): Likewise.
1786         (re_node_set_remove): New macro.
1787         * posix/regexec.c (check_matching): Remove the handling
1788         OP_CONTEXT_NODE.
1789         (check_halt_node_context): Likewise.
1790         (proceed_next_node): Likewise.
1791         (pop_fail_stack): Fix the memory leak.
1792         (set_regs): Likewise.
1793         (free_fail_stack_return): New function.
1794         (sift_states_backward): Fix the memory leak.  Remove the handling
1795         OP_CONTEXT_NODE.
1796         (update_cur_sifted_state): Append some if clause to avoid redundant
1797         call.
1798         (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
1799         back reference.
1800         (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
1801         (check_subexp_limits): Likewise.
1802         (search_subexp): Likewise.
1803         (sift_states_bkref): Likewise.
1804         (transit_state_mb): Likewise.
1805         (transit_state_bkref_loop): Likewise.
1806         (transit_state_bkref_loop): Likewise.
1807         (group_nodes_into_DFAstates): Likewise.
1808         (check_node_accept): Likewise.
1809         (sift_ctx_init): Add initializing.
1810
1811 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
1812
1813         * sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
1814         __builtin_expect.
1815
1816 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
1817
1818         * elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
1819         duplicated variable c.
1820
1821         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
1822         if possible.
1823
1824         * sysdeps/unix/sysv/linux/i386/sysdep.h
1825         (INTERNAL_SYSCALL_ERROR_P): New define.
1826         (INTERNAL_SYSCALL_ERRNO): Likewise.
1827
1828         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
1829         Add hack to prevent the compiler from clobbering the signal context.
1830
1831 2002-10-11  Roland McGrath  <roland@redhat.com>
1832
1833         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
1834         Fix typos.
1835
1836         * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
1837         * sysdeps/sh/dl-lookupcfg.h: File removed.
1838         * sysdeps/i386/dl-lookupcfg.h: File removed.
1839
1840         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
1841         missing labels and ; from last change.
1842
1843         * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
1844         number literals, so they are doubles instead of ints.
1845
1846 2002-10-09  Roland McGrath  <roland@redhat.com>
1847
1848         * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
1849         changed from [USE_TLS && HAVE___THREAD].
1850
1851         * sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
1852         Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
1853         * sysdeps/x86_64/dl-machine.h
1854         (elf_machine_type_class, elf_machine_rela): Likewise.
1855         * sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
1856         Likewise.
1857
1858         * include/link.h (struct link_map): Remove member l_tls_tp_initialized.
1859         * elf/rtld.c (_dl_start_final, dl_main): Don't use it.
1860         (_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
1861
1862         * sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
1863         instead of ___tls_get_addr.
1864         (___tls_get_addr_internal): Add attribute_hidden to decl.
1865
1866         * sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
1867         _dl_error_catch_tsd.
1868         * elf/rtld.c (startup_error_tsd): New function.
1869         (dl_main): Point _dl_error_catch_tsd at that.
1870         * elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
1871         use new function pointer instead.
1872         * elf/dl-tsd.c: New file.
1873         * elf/Makefile (routines): Add it.
1874
1875 2002-10-07  Roland McGrath  <roland@redhat.com>
1876
1877         * elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
1878         writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
1879         take _dl_load_lock around calling __writev.
1880
1881         * sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
1882         (INLINE_SYSCALL): Use that.
1883
1884         * sysdeps/generic/dl-sysdep.h: New file.
1885         * sysdeps/mach/hurd/dl-sysdep.h: New file.
1886         * sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
1887         * include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
1888         [RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
1889         access it directly.
1890         * elf/dl-minimal.c (__errno_location): Removed.
1891         * sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
1892         Use GOTOFF access for errno.
1893         * sysdeps/unix/sysv/linux/i386/sysdep.h
1894         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
1895
1896         * sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
1897         Use PC-relative access for errno.
1898         * sysdeps/unix/sysv/linux/x86_64/sysdep.h
1899         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
1900
1901         * include/tls.h: New file.
1902         (USE___THREAD): New macro.
1903         Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
1904         libc or libpthread.
1905         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
1906         changed from [USE_TLS && HAVE___THREAD].
1907         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
1908         * sysdeps/unix/i386/sysdep.S: Likewise.
1909         * sysdeps/unix/x86_64/sysdep.S: Likewise.
1910         * include/errno.h: Likewise.
1911         * include/netdb.h: Likewise.
1912         * include/resolv.h: Likewise.
1913
1914         * sysdeps/generic/errno.c: New file.
1915         * csu/Makefile (aux): New variable, list errno.
1916         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
1917         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
1918         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
1919         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
1920         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
1921         * sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
1922         * sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
1923         * sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
1924         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
1925         * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
1926         * sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
1927         * sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
1928         * sysdeps/unix/alpha/sysdep.S: Likewise.
1929         * sysdeps/generic/start.c: Likewise.
1930         * sysdeps/unix/start.c: Likewise.
1931         * sysdeps/unix/arm/start.c: Likewise.
1932         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
1933         * sysdeps/unix/sparc/start.c: Likewise.
1934         * sysdeps/unix/sysv/irix4/start.c: Likewise.
1935         * sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
1936
1937         * manual/search.texi (Tree Search Function, Hash Search Function):
1938         Mention search.h clearly.
1939
1940 2002-10-05  Roland McGrath  <roland@redhat.com>
1941
1942         * elf/dl-fxstat64.c: File removed.
1943         * elf/dl-xstat64.c: File removed.
1944         * elf/Makefile (rtld-routines): Remove them.
1945         * sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
1946         Instead, use strong_alias instead of versioned_symbol in the
1947         !SHLIB_COMPAT case.
1948         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
1949         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
1950
1951         * include/shlib-compat.h
1952         (SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
1953         [! NOT_IN_libc] (IS_IN_libc): Define it.
1954         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
1955         * elf/Makefile (CPPFLAGS-.os): Likewise.
1956
1957         * sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
1958         Return the status instead of calling exit.
1959
1960         * Makeconfig (CFLAGS): Prepend -std=gnu99.
1961         * Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
1962         Remove superfluous rm command, whose @ plus make bugs hid
1963         all these commands from the make output.
1964
1965         * include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
1966         * Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
1967         Use that file's contents instead of literal echo's for the prologue.
1968         * include/features.h: Include <gnu/stubs.h> unconditionally.
1969         * include/gnu/stubs.h: New file.
1970
1971 2002-09-30  Roland McGrath  <roland@redhat.com>
1972
1973         * elf/rtld-Rules: New file.
1974         * elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
1975         $(objpfx)rtld-libc.a): New targets.
1976         (generated): Add them.
1977         (reloc-link): Remove -o $@ from the variable.
1978         ($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
1979         (distribute): Add rtld-Rules.
1980         (CPPFLAGS-.os): Define this instead of CFLAGS-.os.
1981         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
1982         (common-mostlyclean, common-clean): Clean up rtld-* files.
1983         * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
1984
1985 2002-10-11  Roland McGrath  <roland@redhat.com>
1986
1987         * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
1988         now-unused dtv slot, reset the slot to TLS_DTV_UNALLOCATED.
1989
1990         * elf/tls-macros.h [__x86_64__] (TLS_GD): Fix the sequence with the
1991         proper set of no-op insn prefixes.
1992
1993         * elf/tst-tls8.c (do_test): Use %zd format for l_tls_modid members.
1994
1995 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
1996
1997         * sysdeps/unix/sysv/linux/execve.c: Don't try calling
1998         __pthread_kill_other_threads_np.
1999
2000         * sysdeps/generic/pselect.c: Avoid unnecessary sigprocmask calls.
2001
2002 2002-10-08  Roland McGrath  <roland@redhat.com>
2003
2004         * locale/newlocale.c (__newlocale): If setting all categories to "C",
2005         just return &_nl_C_locobj instead of copying it.
2006         * locale/freelocale.c (__freelocale): Check for &_nl_C_locobj.
2007         * locale/duplocale.c (__duplocale): Likewise.
2008
2009 2002-10-07  Roland McGrath  <roland@frob.com>
2010
2011         * config.h.in (HAVE_I386_SET_GDT): New #undef.
2012         * sysdeps/mach/configure.in: Define it with new check for i386_set_gdt.
2013         * sysdeps/mach/configure: Regenerated.
2014
2015 2002-10-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2016
2017         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
2018         Add all necessary register outputs for syscall-clobbered registers.
2019
2020 2002-10-02  David Mosberger  <davidm@hpl.hp.com>
2021
2022         * sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for
2023         Itanium 2 (and Itanium).
2024         Fix unwind directives and make it fit in 80 columns.
2025         * sysdeps/ia64/memset.S: Likewise.
2026         * sysdeps/ia64/memcpy.S: Likewise.
2027         Move jump table to .rodata section.
2028
2029 2002-10-03  Roland McGrath  <roland@frob.com>
2030
2031         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add
2032         clobbers to asm.
2033
2034 2002-10-10  Andreas Jaeger  <aj@suse.de>
2035
2036         * sysdeps/x86_64/_mcount.S: Restore correct registers.
2037
2038 2002-10-10  Ulrich Drepper  <drepper@redhat.com>
2039
2040         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __pselect.
2041
2042 2002-10-09  Ulrich Drepper  <drepper@redhat.com>
2043
2044         * sysdeps/generic/ldsodefs.h: Remove attribute_hidden from
2045         _dl_allocate_tls_init.  Add rtld_hidden_proto.
2046         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add
2047         rtld_hidden_def.
2048         * elf/Versions (ld) [GLIBC_PRIVATE]: Add _dl_allocate_tls_init.
2049
2050         * version.h (VERSION): Bump to 2.3.1.
2051
2052         * Make-dist: Add back one of the tar invocations removed before.
2053
2054         * stdlib/Makefile (distribute): Add allocalim.h.
2055
2056         * sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
2057         (__libc_tsd_address): Use correct variable name.
2058         Patch by Stefan Jones <stefan.jones@multigig.com>.
2059
2060         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
2061         Reported by edwardsg@sgi.com [PR libc/4678].
2062
2063         * Versions.def (libc): Add GLIBC_2.3.1.
2064         (libpthread): Add GLIBC_2.3.1.
2065
2066         * include/signal.h: Add libc_hidden_proto for __sigwait, __sigwaitinfo,
2067         and __sigtimedwait.
2068         * signal/Versions: Add __sigtimedwait, __sigwait, and __sigwaitinfo.
2069         * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Add
2070         libc_hidden_def.
2071         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
2072         * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.
2073
2074         * include/sys/msg.h: Declare __libc_msgrcv and __libc_msgsnd.
2075         * sysdeps/unix/sysv/linux/msgrcv.c (__msgrcv): Rename to __libc_msgrcv
2076         and make old name an alias.
2077         * sysdeps/unix/sysv/linux/msgsnd.c (__msgsnd): Rename to __libc_msgsnd
2078         and make old name an alias.
2079         * sysvipc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_msgrcv and
2080         __libc_msgsnd.
2081
2082         * include/sys/uio.h: Declare __libc_readv and __libc_writev.
2083         * misc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_readv and
2084         __libc_writev.
2085         * sysdeps/generic/readv.c (__readv): Rename to __libc_readv and make
2086         old name an alias.
2087         * sysdeps/posix/readv.c: Likewise
2088         * sysdeps/unix/sysv/aix/readv.c: Likewise.
2089         * sysdeps/unix/sysv/linux/readv.c: Likewise.
2090         * sysdeps/generic/writev.c (__writev): Rename to __libc_writev and make
2091         old name an alias.
2092         * sysdeps/posix/writev.c: Likewise
2093         * sysdeps/unix/sysv/aix/writev.c: Likewise.
2094         * sysdeps/unix/sysv/linux/writev.c: Likewise.
2095
2096         * include/sys/wait.h: Declare __waitid.
2097         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __waitid.
2098         * sysdeps/generic/waitid.c (waitid): Rename to __waitid and make old
2099         name an alias.
2100         * sysdeps/posix/waitid.c: Likewise.
2101         * sysdeps/unix/sysv/aix/waitid.c: Likewise.
2102
2103         * sysdeps/unix/sysv/linux/syscalls.list: Add creat syscall.
2104
2105 2002-10-07  Jakub Jelinek  <jakub@redhat.com>
2106
2107         * include/alloca.h (__libc_use_alloca, __libc_alloca_cutoff): New
2108         prototypes.
2109         (__MAX_ALLOCA_CUTOFF): Define.
2110         Include allocalim.h.
2111         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
2112         _nss_dns_gethostbyaddr_r): Use alloca or malloc to allocate
2113         host_buffer depending on __libc_use_alloca.
2114         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
2115         _nss_dns_getnetbyaddr_r): Use alloca or malloc to allocate
2116         net_buffer depending on __libc_use_alloca.
2117         * resolv/res_query.c (res_nquery): Use alloca or malloc to allocate
2118         buf depending on __libc_use_alloca.
2119         * resolv/gethnamaddr.c (gethostbyname2, gethostbyaddr): Likewise.
2120         * stdio-common/vfprintf.c (vfprintf): Use __libc_use_alloca
2121         instead of hardcoded constants.
2122         Pass proper size argument to alloca and compute end for wide char
2123         version.
2124         * stdio-common/printf_fp.c (__printf_fp): Use __libc_use_alloca
2125         instead of hardcoded constants.
2126         * string/strcoll.c (strcoll): Likewise.
2127         * string/strxfrm.c (strxfrm): Likewise.
2128         * sysdeps/posix/readv.c (__readv): Likewise.
2129         * sysdeps/posix/writev.c (__writev): Likewise.
2130         * sysdeps/generic/allocalim.h: New file.
2131
2132 2002-10-08  Roland McGrath  <roland@redhat.com>
2133
2134         * configure.in (aux_missing warning): Change "too old" to
2135         "incompatible versions", since for autoconf it's "too new" right now.
2136         * configure: Regenerated.
2137
2138         * configure.in (AUTOCONF): New check to set it.  Set to "no" if the
2139         one found doesn't work on our configure.in.
2140         * configure: Regenerated.
2141         * config.make.in (AUTOCONF): New substituted variable.
2142         * Makefile (autoconf-it-cvs): New canned sequence, broken out of ...
2143         (autoconf-it): ... here, use that instead of defining conditionally.
2144         Use $(AUTOCONF) instead of literal autoconf.
2145         [$(AUTOCONF) != no] (configure, %/configure): Protect these rules
2146         with this condition.
2147         * Make-dist (autoconf-it, configure, %/configure): Copy those changes.
2148
2149 2002-10-08  Ulrich Drepper  <drepper@redhat.com>
2150
2151         * Make-dist (dist): Cleanup a bit.  We are not interested in the
2152         14 char filename limit anymore.  Remove intermediate files and
2153         symlinks.
2154
2155 2002-10-05  Ulrich Drepper  <drepper@redhat.com>
2156
2157         * po/sk.po: Update from translation team.
2158         * po/tr.po: Likewise.
2159         * po/gl.po: Likewise.
2160
2161 2002-10-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2162
2163         * elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.
2164
2165 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
2166
2167         * version.h (RELEASE): Change to stable.
2168
2169 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
2170
2171         * sysdeps/unix/sysv/linux/_exit.c (__syscall_exit,
2172         __syscall_exit_group): New prototypes.
2173
2174 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
2175
2176         * glibc 2.3 released.
2177
2178
2179 See ChangeLog.13 for earlier changes.