49945b1d2bcd727f9faaab17fc8c97e5dd94985f
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
2
3         * elf/dl-load.c (_dl_map_object_from_fd): Use
4         GL(dl_tls_dtv_slotinfo_list) != NULL to check whether TLS has
5         been already initialized.
6
7 2003-01-15  Dmitry V. Levin  <ldv@altlinux.org>
8
9         * sysdeps/unix/sysv/linux/ptsname.c: Fix typo in comment.
10
11 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
12
13         * posix/regcomp.c (re_compile_internal): If clearing buffer, clear
14         allocated too.  Reported by Al Viro <aviro@redhat.com>.
15
16 2003-01-16  Roland McGrath  <roland@redhat.com>
17
18         Tweak merged .abilist file format to merge duplicate symbols in
19         different sets into multi-version stanzas with new "| SET regexp..."
20         header continuation lines.
21         * scripts/merge-abilist.awk: Rewritten for new format.
22         * scripts/extract-abilist.awk: Likewise.
23
24 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
25
26         * nscd/connections.c (nscd_run): Remove bogus return which isn't
27         necessary with gcc 3.2+.
28         (nscd_init): Don't use error() to print message, use dbg_log.
29
30         * iconv/gconv_simple.c (STORE_REST): Explicitly store the total
31         expected size into state.
32         (UNPACK_BYTES): Do the reverse.
33         * iconv/loop.c: Use CLEAR_STATE if defined to clear __state element.
34         * wcsmbs/tst-mbrtowc.c (utf8_test_1): Add test for the bug.
35         Reported by Al Viro <aviro@redhat.com>.
36
37         * stdio-common/Makefile (tests): Add bug14.
38         * stdio-common/bug14.c: New file.
39
40         * stdio-common/vfscanf.c: When recognizing multibyte characters in
41         string reset the byte counter after mbrtowc reported it is not a
42         partial character.  Reported by Al Viro <aviro@redhat.com>.
43
44 2003-01-15  Steven Munroe  <sjmunroe@us.ibm.com>
45
46         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Include
47         sysdep-cancel.h, not sysdep.h.
48
49 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
50
51         * nscd/connections.c (nscd_run): Protect accept call with
52         TEMP_FAILURE_RETRY.
53
54 2003-01-15  Andreas Schwab  <schwab@suse.de>
55
56         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-bp.d.
57         (common-generated): Add s-proto-bp.d.
58         * sysdeps/unix/make-syscalls.sh: Use s-proto-bp.d for dependencies
59         of bp thunks.
60         * sysdeps/unix/s-proto-bp.S: New file.
61         * sysdeps/generic/bp-thunks.h: Don't include <sys/vm86.h> here.
62         Use <io/sys/sendfile.h> instead of <sys/sendfile.h>.
63         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: New file.
64
65 2003-01-15  Roland McGrath  <roland@redhat.com>
66
67         * Makerules: Use -include for tls.make, suppresses warning.
68         Move gen-as-const-headers rules up so before-compile is set in time.
69         (sed-remove-dotdot): Fix to work right for subdirs or top dir.
70
71 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
72
73         * nscd/nscd.c (main): Make code to close all file descriptors
74         faster and more robust.
75
76         * nscd/nscd_getpw_r.c (nscd_getpw_r): Consolidate writing of the
77         request with one writev call.  Protect all read calls with
78         TEMP_FAILURE_RETRY.
79         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
80         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
81
82         * nscd/hstcache.c: Use extend_alloca to reallocate alloca'd buffer.
83         Protect writev calls with TEMP_FAILURE_RETRY.
84         * nscd/grpcache.c: Likewise.
85         * nscd/pwdcache.c: Likewise.
86
87         * nscd/hstcache.c (addhstbynamev6): Don't interpret hostname as
88         IPv6 address in debug output.
89
90 2003-01-14  Roland McGrath  <roland@redhat.com>
91
92         * Makerules (check-abi-%): Use two rules for $(common-objpfx) and
93         $(objpfx) directories, and get rid of vpath directives.  The previous
94         arrangement resulted in files being written to the source directories
95         when run in a clean build.  Find all .abilist files in $(..)abilist/.
96         (update-abi-%): Likewise.
97         (generated): Don't add .symlist files, they'll be intermediates.
98
99         * sysdeps/generic/init-first.c: Add a comment.
100
101         * elf/Makefile ($(objpfx)ld.so): Pass -z defs in link.
102
103         * scripts/gen-as-const.awk: Grok lone "--" as a separator between
104         #includes and expressions.
105
106         * scripts/merge-abilist.awk: Omit cpu-.*-os.*/modifier from merged
107         config list when it already contains cpu-.*-os.* without / part.
108
109         * Makerules (sed-remove-dotdot): New variable.
110         ($(common-objpfx)%.make): Use it.  Depend on $(before-compile).
111         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.
112         (check-abi-config): New variable, append /tls or /notls to the tuple.
113         (check-abi-%): Use that for -v config value.
114         Find .abilist files in abilist/libfoo.abilist, not in subdir.
115         * Rules: Move bits/stdio_lim.h generation rules to Makerules.
116
117 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
118
119         * manual/install.texi: Correct description of header preparation for
120         Linux build.  Patch by mhwood@Ameritech.Net [PR libc/4941].
121
122 2003-01-14  Guido Guenther  <agx@sigxcpu.org>
123
124         * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
125         INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
126         INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
127
128 2003-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
129
130         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
131         (INTERNAL_SYSCALL): Make use of ERR parameter.
132         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
133         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
134         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
135         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
136
137 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
138
139         * sunrpc/pm_getport.c (pmap_getport): Open TCP socket if protocol
140         == IPPROTO_TCP.
141         Patch by James Strandboge <jamie@tpptraining.com> [PR libc/4943].
142
143         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (_dl_x86_cap_flags):
144         Fix entry for bit 31.
145
146         * iconvdata/Makefile: Add rules to build IBM866NAV.
147         * iconvdata/ibm866nav.c: New file.
148         * iconvdata/tst-tables.sh: Add IBM866NAV.
149         * iconvdata/gconv-modules: Add entries for IBM866NAV.
150
151 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
152
153         * string/tester.c (test_strcpy): Use the previously #if 0'ed code
154         to test void* parameters.
155
156         * sysdeps/i386/i486/bits/string.h (__STRING_SMALLL_GET16): Cast
157         source pointer before dereferencing.
158         (__STRING_SMALLL_GET32): Likewise.
159         (__memset_gc): Add missing parenthesis around macro arguments.
160         Patch by Denis Zaitsev <zzz@cd-club.ru>.
161
162         * sysdeps/i386/i486/bits/string.h (__strspn_cg): Tell the compiler
163         that %eax is modified.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
164
165 2003-01-14  Jakub Jelinek  <jakub@redhat.com>
166
167         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL): Undefined before
168         defining.
169
170 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
171
172         * sysdeps/s390/s390-64/initfini.c: Avoid unterminated string literals.
173         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (L): Don't define it
174         here.
175         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (L): Likewise.
176
177 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
178
179         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Move branch instructions
180         from here...
181         (PSEUDO): ... to here.
182         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Move branch instruction
183         from here...
184         (PSEUDO): ... to here.
185
186 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
187
188         * locale/programs/charmap-dir.c (charmap_readdir): Use struct
189         dirent64 instead of struct dirent for dirent.  Call readdir64
190         instead of readdir.
191
192         * locale/programs/locfile.c (siblings_uncached): Use struct
193         dirent64 instead of struct dirent for other_dentry.  Call
194         readdir64 instead of readdir.
195
196         * elf/ldconfig.c (direntry): Change type to struct dirent64.
197         (search_dir): Use readdir64 instead of readdir.
198         Patch by Zhangfan Xing <xing@pacific.jpl.nasa.gov>.
199
200 2003-01-12  Roland McGrath  <roland@redhat.com>
201
202         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Use strtoul,
203         not strtol.  The former is usable in ld.so, the latter not.
204
205         * include/fcntl.h: Declare __libc_creat.
206
207         * sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
208         libhurduser-link.so-no-z-defs): New variables.
209
210         * malloc/malloc.c: Revert last change.
211         * malloc/malloc.h (_int_*): Move these decls to ...
212         * include/malloc.h: ... here.  Add attribute_hidden.
213         (_int_valloc): Declare it too.
214
215 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
216
217         * elf/dl-close.c (_dl_close): Fix typo, must be == not = in
218         search for removed searchlist.  Reported by Roland McGrath.
219
220         * io/ftwtest-sh: Add test for case of symlink to nonexisting file
221         given as start file.
222
223         * io/ftw.c (ftw_startup): Use correct name in check for symlink
224         without existing target.  Patch by Jim Meyering.
225
226         * Makerules (build-shlib-helper): Don't use -z defs linker option
227         if no-z-defs is defined either.
228
229 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
230
231         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
232         file.
233
234 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
235
236         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
237         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
238
239 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
240
241         * io/ftwtest-sh: Add test case for relative path with /. at the end.
242
243 2003-01-12  Jim Meyering  <jim@meyering.net>
244
245         * io/ftw.c (ftw_startup): When trying to stat the starting directory,
246         use the basename if we've already chdir'd into its parent directory.
247
248 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
249
250         * io/ftw.c (process_entry): Use relative path when using chdir()
251         to change directory after call to ftw_dir.
252         * io/ftwtest-sh: Add test for relative path argument to nftw()
253         with FTW_CHDIR option.
254
255 2002-01-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
256
257         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
258         Define for powerpc.
259         * sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
260         into account.
261         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
262         (INTERNAL_SYSCALL): Make use of ERR parameter.
263         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
264         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
265         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
266         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
267
268 2002-01-09  Richard Henderson  <rth@redhat.com>
269
270         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
271         DTPREL64 and TPREL64 without loadbase applied.
272
273 2002-01-09  Richard Henderson  <rth@redhat.com>
274
275         * sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
276         for NOT_IN_libc.
277
278         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
279         * sysdeps/unix/alpha/sysdep.h: ... here.
280         (PSEUDO_LOADGP): Remove.
281         (PSEUDO_PROLOGUE): Load GP in non-pic case.
282         (SYSCALL_ERROR_LABEL): New.
283         (PSEUDO): Use it in error branch.
284         (PSEUDO_END): Add $syscall_error label.
285
286 2003-01-12  Andreas Jaeger  <aj@suse.de>
287
288         * math/bits/mathcalls.h: Round is a const function.
289
290 2003-01-11  Jim Meyering  <jim@meyering.net>
291
292         * io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
293         [HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
294         Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
295         [!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
296         [!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
297         [!_LIBC] (internal_function, dirent64, MAX): Define.
298         (__set_errno): Define if not already defined.
299         (open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
300         the basename, not the entire file name.
301         (process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
302         the basename, not the entire file name.
303
304 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
305
306         * string/tester.c (test_strcpy): Disable last added strcpy until
307         it is fixed.
308
309 2003-01-11  Philip Blundell  <philb@gnu.org>
310
311         * sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.
312
313 2003-01-11  Andreas Schwab  <schwab@suse.de>
314
315         * Makerules: Add vpath for %.dynsym and %.so so that the
316         implicit rule chaining for check-abi works.
317
318 2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
319
320         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
321         Add non-PIC case.
322
323 2003-01-11  Jakub Jelinek  <jakub@redhat.com>
324
325         * elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
326         [__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
327         gp is used early.
328         [__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
329         * elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
330         Ensure libc.so in DT_NEEDED.
331         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
332         CHECK_STATIC_TLS before l_tls_offset use.
333         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
334         Likewise.
335         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
336         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
337         Allocate TLS_PRE_TCB_SIZE bytes below result.
338         (_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
339         * sysdeps/generic/libc-tls.c (__libc_setup_tls): If
340         TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
341         segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
342         bytes below result and add tcb_offset to memsz.
343         * sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
344         * sysdeps/ia64/dl-machine.h: Include tls.h.
345         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
346         too.
347         (elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
348         Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
349         * sysdeps/ia64/libc-tls.c: New file.
350
351 2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>
352
353         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
354         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
355         Fix type.  Move definition out of #if.
356         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
357         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
358         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
359         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
360         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
361         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
362         support.
363         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
364         ftruncate64, pread64, pwrite64, truncate64 entries.
365         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
366         (INLINE_SYSCALL): New version that supports function call like
367         syscalls.  Add __builtin_expect.
368         (LOADARGS_n): Add argument size safety checks.
369         (INTERNAL_SYSCALL): New Macro.
370         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
371         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
372         redefinition of elf_fpreg_t and elf_fpregset_t.
373
374 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
375
376         * elf/dl-close.c (_dl_close): Add several asserts.  Correct and
377         simplify test for unloading.  If loader of a DSO is unloaded do not
378         use its scope anymore.  Fall back to own scope and adjust opencounts.
379         Fix several comments.
380         * elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
381         the l_searchlist, not only for l_initfini.
382
383         * elf/dl-lookup.c (add_dependencies): Avoid creating relocation
384         dependencies if objects cannot be removed.  Remove object with the
385         definition as not unloadable if necessary.
386
387         * elf/reldep6.c: Create relocation dependency before closing the first
388         module.
389
390 2003-01-10  Guido Günther  <agx@sigxcpu.org>
391
392         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
393         * sysdeps/unix/mips/brk.S: Likewise.
394         * sysdeps/unix/mips/pipe.S: Likewise.
395
396 2003-01-10  Andreas Schwab  <schwab@suse.de>
397
398         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
399
400         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
401         are known to have the vfork syscall.
402
403         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
404
405         * sysdeps/unix/sysv/linux/kernel-features.h
406         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
407         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
408         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
409
410 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
411
412         * elf/Makefile: Add rules to build and run reldep9 test.
413         * elf/reldep9.c: New file.
414         * elf/reldep9mod1.c: New file.
415         * elf/reldep9mod2.c: New file.
416         * elf/reldep9mod3.c: New file.
417
418 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
419
420         * elf/Makefile: Add rules to build and run nodelete2 test.
421         * elf/nodelete2.c: New file.
422         * elf/nodel2mod1.c: New file.
423         * elf/nodel2mod2.c: New file.
424         * elf/nodel2mod3.c: New file.
425
426 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
427
428         * posix/test-vfork.c (noop): Add __attribute_noinline__.
429         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
430         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
431         defining it.
432         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
433         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
434         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
435         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
436         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
437
438 2003-01-09  Andreas Schwab  <schwab@suse.de>
439
440         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
441
442 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
443
444         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
445         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
446         argument.
447         (INTERNAL_SYSCALL_DECL): Define.
448
449 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
450
451         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
452         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
453         argument.
454         (INTERNAL_SYSCALL_DECL): Define.
455         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
456         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
457         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
458         (INLINE_SYSCALL): Adjust.
459         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
460         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
461         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
462         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
463         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
464         add err argument to INTERNAL_SYSCALL* macros.
465         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
466         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
467         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
468         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
469         Likewise.
470         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
471         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
472         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
473
474 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
475
476         Unify symbols in user namespace exported by libc.so and libc.a.
477         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
478         argp_fmtstream_free, and argp_fmtstream_printf.
479         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
480         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
481         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
482         argp_fmtstream_point.
483         * gmon/gmon.c: Don't define write_profiling.
484         * libio/genops.c: Don't define _cleanup.
485
486         * intl/explodename.c (_nl_find_language.c): Mark as static.
487         * intl/loadinfo.h: Remove _nl_find_language prototype.
488
489         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
490         * libio/libioP.h: Remove declaration.
491
492         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
493         * libio/libioP.h: Remove declaration.
494
495         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
496         * sysdeps/generic/framestate.c: Define STATIC before including
497         unwind-dw2.c.
498
499         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
500
501 2003-01-06  Philip Blundell  <philb@gnu.org>
502
503         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
504         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
505
506         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
507         directive.
508         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
509         (SYSCALL_ERROR): New.
510         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
511         handling code.
512         (INTERNAL_SYSCALL): Define.
513         (INLINE_SYSCALL): Use it.
514         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
515         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
516         SYSCALL_ERROR in place of __syscall_error.
517
518 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
519
520         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
521         __bswap_32, __bswap_64): Put x into temporary variable
522         to avoid warnings.
523         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
524         (inline) functions.
525         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
526         __bswap_32, __bswap_64): Put x into temporary variable
527         to avoid warnings.
528         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
529         (inline) functions.
530         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
531         Likewise.
532
533 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
534
535         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
536         alias.
537
538 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
539
540         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
541         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
542
543 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
544
545         * math/libm-test.inc (significand_test): New function.
546         (main): Call it.
547
548 2003-01-06  Roland McGrath  <roland@redhat.com>
549
550         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
551         arguments.
552         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
553         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
554         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
555
556         * string/tester.c (test_strcpy): Add test with `void *' arguments.
557
558 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
559
560         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
561         return significand and not the exponent.
562         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
563
564         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
565         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
566
567         * malloc/malloc.c: Mark all _int_* functions as static.
568
569 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
570
571         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
572         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
573         handling.
574         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
575
576 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
577
578         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
579         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
580         support.
581         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
582         ftruncate64, truncate64, pread64 and pwrite64 entries.
583         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
584         (INLINE_SYSCALL): Add __builtin_expect.
585         (LOADARGS_n): Add argument size safety checks.
586         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
587         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
588         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
589         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
590         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
591         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
592
593 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
594
595         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
596         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
597         (LIBC_CANCEL_HANDLED): Add.
598
599         * sysdeps/unix/sysv/linux/alpha/sysdep.h
600         (inline_syscall_r0_constraint): Rename to...
601         (inline_syscall_r0_out_constraint): ... this.  Add =.
602         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
603
604 2003-01-06  Andreas Schwab  <schwab@suse.de>
605
606         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
607         sure this is always inlined.
608         (elf_machine_rela): Likewise.
609
610         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
611
612 2003-01-04  Roland McGrath  <roland@redhat.com>
613
614         * Makeconfig (+mkdep): Add -MP flag.
615         Suggested by Art Haas <ahaas@airmail.net>.
616
617 2003-01-05  Andreas Schwab  <schwab@suse.de>
618
619         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
620
621 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
622
623         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
624         SYSCALL_ERROR_HANDLER.
625         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
626         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
627         Add support for cancellation handling.
628         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
629         SYSCALL_ERROR_HANDLER.
630         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
631         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
632         Add support for cancellation handling.
633         (SYSCALL_ERROR_HANDLER): Define PIC variants.
634
635 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
636
637         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
638         __syscall_pread64 and __syscall_pwrite64 cancelable.
639         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
640         (INTERNAL_SYSCALL): New macro.
641         (LOADARGS_0, LOADARGS_1): Fix.
642
643 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
644
645         * Makerules (build-shlip-helper): Unless told otherwise, add
646         -Wl,-z,defs to linker command line.
647         * rt/Makefile (librt.so): Link with ld.so.
648         * dlfcn/Makefile (libdl.so): Likewise.
649
650 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
651
652         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
653         cancellation handling.
654         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
655         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
656
657 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
658
659         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
660         order of parameters passed to kill.
661
662 2003-01-04  Andreas Schwab  <schwab@suse.de>
663
664         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
665
666 2002-01-03  Paul Eggert  <eggert@twinsun.com>
667
668         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
669         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
670         when compiling Bison 1.875's `bitset bset = obstack_alloc
671         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
672
673 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
674
675         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
676         unnecessary code.
677         Correct reference counter in case SIGQUIT handler installation failed.
678
679 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
680
681         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
682         Define using _Pragma(weak ...).
683
684 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
685
686         * resolv/res_libc.c: Provide declaration for __res_init_weak and
687         reorder declarations.
688
689 2003-01-03  Art Haas  <ahaas@airmail.net>
690
691         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
692         initializer syntax to C99.
693         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
694         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
695         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
696         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
697         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
698         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
699         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
700         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
701         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
702         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
703         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
704         * localedata/tests-mbwc/dat_mblen.c: Likewise.
705         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
706         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
707         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
708         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
709         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
710         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
711         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
712         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
713         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
714         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
715         * localedata/tests-mbwc/dat_towlower.c: Likewise.
716         * localedata/tests-mbwc/dat_towupper.c: Likewise.
717         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
718         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
719         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
720         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
721         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
722         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
723         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
724         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
725         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
726         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
727         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
728         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
729         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
730         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
731         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
732         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
733         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
734         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
735         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
736         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
737         * localedata/tests-mbwc/dat_wctob.c: Likewise.
738         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
739         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
740         * localedata/tests-mbwc/dat_wctype.c: Likewise.
741         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
742
743 2003-01-03  Richard Henderson  <rth@redhat.com>
744
745         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
746         (inline_syscall_r0_constraint): New.
747         (inline_syscall[0-6]): Use them.
748
749 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
750
751         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
752         Add rtld_hidden_proto.
753         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
754         (_dl_allocate_tls): Likewise.  Remove INTDEF.
755
756 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
757
758         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
759         Morita <toshiyasu.morita@hsa.hitachi.com>.
760         * sysdeps/sh/memcpy.S: Likewise.
761
762 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
763
764         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
765         any, but unify the test.
766
767 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
768
769         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
770         sigaction): Protect weak_alias and libc_hidden_weak with
771         #ifndef LIBC_SIGACTION.
772         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
773         sigaction): Likewise.
774         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
775         sigaction): Likewise.
776         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
777         sigaction): Likewise.
778         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
779         sigaction): Likewise.
780         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
781         sigaction): Likewise.
782         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
783         sigaction): Likewise.
784         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
785         sigaction): Likewise.  Remove SIGCANCEL handling here.
786         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
787         Likewise.
788
789 2003-01-02  Art Haas  <ahaas@airmail.net>
790
791         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
792
793 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
794
795         * posix/getconf.c: Update copyright year.
796         * nss/getent.c: Likewise.
797         * nscd/nscd_nischeck.c: Likewise.
798         * iconv/iconvconfig.c: Likewise.
799         * iconv/iconv_prog.c: Likewise.
800         * elf/ldconfig.c: Likewise.
801         * catgets/gencat.c: Likewise.
802         * csu/version.c: Likewise.
803         * elf/ldd.bash.in: Likewise.
804         * elf/sprof.c (print_version): Likewise.
805         * locale/programs/locale.c: Likewise.
806         * locale/programs/localedef.c: Likewise.
807         * nscd/nscd.c (print_version): Likewise.
808         * debug/xtrace.sh: Likewise.
809         * malloc/memusage.sh: Likewise.
810         * malloc/mtrace.pl: Likewise.
811
812 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
813
814         * io/sys/stat.h: Include time.h with __need_timespec even if
815         __USE_MISC is defined but __USE_XOPEN is not.
816
817 2003-01-01  Andreas Jaeger  <aj@suse.de>
818
819         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
820         type to avoid strict aliasing problem.
821         (_nss_dns_gethostbyname2_r): Likewise.
822         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
823         (_nss_dns_getnetbyname_r): Likewise.
824         * resolv/gethnamaddr.c (_gethtent): Likewise.
825         (gethostbyname2): Likewise.
826
827 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
828
829         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
830         to avoid using the exported symbols.  Define aliases with the
831         original names separately.
832
833         * include/time.h: Add libc_hidden_proto for __strftime_l.
834         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
835         * time/strftime.c: Always use libc_hidden_def if _LIBC.
836
837         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
838         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
839
840         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
841         tr_break.
842
843         * csu/Makefile (routines): Add dso_handle.
844         * csu/dso_handle.c: New file.
845
846 2002-12-31  Roland McGrath  <roland@redhat.com>
847
848         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
849         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
850         (S-CPPFLAGS): Add -DASSEMBLER here instead.
851         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
852
853 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
854
855         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
856         is available.
857
858 2002-12-31  Andreas Jaeger  <aj@suse.de>
859
860         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
861         with Linux kernel.
862         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
863         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
864         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
865
866         * sysdeps/unix/sysv/linux/kernel_stat.h
867         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
868
869         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
870         __unused[1-3] since they're needed by some platforms.  Handle
871         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
872
873         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
874         for structs stat and stat64.
875         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
876         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
877         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
878         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
879
880         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
881
882         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
883         nsec resolution changes.
884         (xstat64_conv): Likewise.
885         (xstat32_conv): Likewise.
886
887         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
888         struct kernel_stat.
889
890         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
891         structs stat and stat64.
892
893         * time/time.h (__timespec_defined): Define for __USE_MISC.
894
895 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
896
897         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
898         and __libc_current_sigrtmax.
899
900 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
901
902         * include/errno.h (__errno_location): Add prototype.
903         Use libc_hidden_proto unconditionally.
904         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
905         unconditionally.
906         * include/resolv.h (__res_state): Likewise.
907
908         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
909         * include/sys/socket.h (accept): Add libc_hidden_proto.
910         * include/errno.h (__errno_location): Likewise.
911         * include/netdb.h (__h_errno_location): Likewise.
912         * include/resolv.h (__res_state): Likewise.
913         * include/unistd.h (__lseek): Likewise.
914         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
915         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
916         * sysdeps/generic/res-state.c (__res_state): Likewise.
917         * sysdeps/generic/accept.c (accept): Likewise.
918         * sysdeps/generic/lseek.c (__lseek): Likewise.
919         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
920         __libc_current_sigrtmax): Likewise.
921         * sysdeps/mach/hurd/accept.c (accept): Likewise.
922         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
923         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
924         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
925         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
926         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
927         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
928         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
929         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
930         alias to llseek.
931         (__GI_accept): New alias to accept.
932         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
933         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
934         New alias to llseek.
935         (__GI_accept): New alias to accept.
936         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
937         Likewise.
938         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
939         Likewise.
940         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
941
942         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
943         strong_alias (name, __GI_name).
944         * sysdeps/arm/bsd-_setjmp.S : Likewise.
945         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
946         * sysdeps/i386/bsd-_setjmp.S : Likewise.
947         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
948         * sysdeps/mips/bsd-_setjmp.S : Likewise.
949         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
950         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
951         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
952         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
953         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
954         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
955         * sysdeps/sh/bsd-_setjmp.S : Likewise.
956         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
957         * sysdeps/unix/arm/fork.S : Likewise.
958         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
959         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
960         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
961         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
962         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
963         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
964         * sysdeps/unix/i386/fork.S : Likewise.
965         * sysdeps/unix/mips/fork.S : Likewise.
966         * sysdeps/unix/sparc/fork.S : Likewise.
967         * sysdeps/unix/sparc/vfork.S : Likewise.
968         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
969         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
970         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
971         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
972         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
973         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
974         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
975         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
976         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
977         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
978         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
979         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
980         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
981         * sysdeps/unix/fork.S : Likewise.
982         * sysdeps/vax/bsd-_setjmp.S : Likewise.
983         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
984
985         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
986         inclusion.
987
988 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
989
990         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
991         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
992         * sysdeps/mach/hurd/fork.c: Likewise.
993         * sysdeps/unix/sysv/aix/fork.c: Likewise.
994         * sysdeps/unix/fork.S: Add __GI___fork alias.
995         * sysdeps/unix/arm/fork.S: Likewise.
996         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
997         * sysdeps/unix/i386/fork.S: Likewise.
998         * sysdeps/unix/mips/fork.S: Likewise.
999         * sysdeps/unix/sparc/fork.S: Likewise.
1000         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
1001         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
1002         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
1003         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
1004         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
1005         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
1006         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
1007         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
1008         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
1009         * sysdeps/unix/sparc/vfork.S: Likewise.
1010         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
1011         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
1012         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
1013         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
1014         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
1015         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
1016         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
1017         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
1018
1019         * include/time.h: Add libc_hidden_proto for __nanosleep.
1020         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
1021         * sysdeps/mach/nanosleep.c: Likewise.
1022         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
1023         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
1024
1025         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
1026         _IO_list_unlock, and _IO_list_resetlock.
1027         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
1028         _IO_list_unlock, and _IO_list_resetlock.
1029
1030         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
1031         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
1032         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
1033         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
1034
1035         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
1036         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
1037         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
1038         __GI___longjmp alias.
1039
1040         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
1041         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
1042         * sysdeps/arm/bsd-_setjmp.S: Likewise.
1043         * sysdeps/generic/bsd-_setjmp.c: Likewise.
1044         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
1045         * sysdeps/i386/bsd-_setjmp.S: Likewise.
1046         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
1047         * sysdeps/mips/bsd-_setjmp.S: Likewise.
1048         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
1049         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
1050         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
1051         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
1052         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
1053         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
1054         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
1055         * sysdeps/sh/bsd-_setjmp.S: Likewise.
1056         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
1057         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
1058         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
1059         * sysdeps/vax/bsd-_setjmp.S: Likewise.
1060         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
1061
1062 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
1063
1064         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
1065
1066 2002-12-30  Roland McGrath  <roland@redhat.com>
1067
1068         * Rules (generated): Target removed.
1069         * mach/Makefile (generated): Define it here instead.
1070
1071         * math/Makefile (generated): Add m_*l and m_*f variants too.
1072
1073 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
1074
1075         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
1076         the to-be-deleted objects right away instead of later separately.
1077         The latter fails because the scope data structures of the DSO
1078         might already be gone.
1079
1080         * elf/Makefile: Add rules to build and run reldep8 test.
1081         * elf/reldep8.c: New file.
1082         * elf/reldep8mod1.c: New file.
1083         * elf/reldep8mod2.c: New file.
1084         * elf/reldep8mod3.c: New file.
1085         Contributed by Jakub Jelinek.
1086
1087 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
1088
1089         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
1090         checking of return value ENOSYS from getdents64.
1091
1092 2002-12-28  Andreas Schwab  <schwab@suse.de>
1093
1094         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
1095         ($(common-objpfx)s-%.d): Generalized from
1096         $(common-objpfx)s-proto.d rule.
1097         (common-generated): Add s-proto-cancel.d.
1098         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
1099         cancellable syscalls.
1100         * sysdeps/unix/s-proto-cancel.S: New file.
1101
1102 2002-12-29  Roland McGrath  <roland@redhat.com>
1103
1104         * resolv/res_libc.c: Move _res defn magic after res_init defn
1105         so _res macro is in effect for that code.
1106
1107         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
1108         pattern for prepending $(..) so it doesn't affect $(foo).
1109
1110         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
1111
1112 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
1113
1114         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
1115         in hwcap.
1116
1117 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
1118
1119         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
1120
1121 2002-12-28  Andreas Jaeger  <aj@suse.de>
1122
1123         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
1124         avoid warning.
1125         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
1126
1127 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
1128
1129         * inet/herrno.c (__h_errno_location): Remove.
1130         * inet/Makefile (routines): Add herrno-loc.
1131         * resolv/res_libc.c (__res_state): Remove.
1132         * resolv/Makefile (routines): Add res-state.
1133         * sysdeps/generic/herrno-loc.c: New file.
1134         * sysdeps/generic/res-state.c: New file.
1135
1136 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
1137
1138         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
1139         Only define if USE_DL_SYSINFO is defined.
1140
1141 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
1142
1143         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
1144         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
1145         Define. Patch by Richard Henderson and Jes Sorensen.
1146         (PSEUDO): Remove unnecessary ;;.
1147         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
1148         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
1149         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
1150         if not initializing thread pointer.
1151         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
1152         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
1153         make it weak also if NONTLS_INIT_TP.
1154         * sysdeps/unix/common/pause.c: Handle cancellation.
1155         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
1156         (LOADSYSCALL): Remove.
1157         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
1158         (SYSCALL_ERROR_HANDLER): Use it.
1159         (PSEUDO): Don't jump around error handler.
1160         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
1161         jump around error handler.
1162         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
1163         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
1164         to __syscall_error_handler on failure.
1165         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
1166         (LOADSYSCALL): Remove.
1167         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
1168         (SYSCALL_ERROR_HANDLER): Use it.
1169         (PSEUDO): Don't jump around error handler.
1170         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
1171         jump around error handler.
1172         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
1173         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
1174         to __syscall_error_handler on failure.
1175
1176 2002-12-27  Roland McGrath  <roland@redhat.com>
1177
1178         * scripts/gen-as-const.awk: New file.
1179         * Makefile (distribute): Add it.
1180         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
1181         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
1182         to the list.
1183         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
1184
1185 2002-12-27  Andreas Schwab  <schwab@suse.de>
1186
1187         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
1188
1189 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
1190
1191         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
1192         _environ is NULL.
1193
1194 2002-12-27  Andreas Schwab  <schwab@suse.de>
1195
1196         * Makerules ($(common-objpfx)%.make): Filter through
1197         $(sed-remove-objpfx).
1198
1199 2002-12-23  Roland McGrath  <roland@redhat.com>
1200
1201         * scripts/abilist.awk: Produce a more compact format, divided into
1202         stanzas for each version set, the set name listed only once.
1203         * scripts/extract-abilist.awk: New file.
1204         * scripts/merge-abilist.awk: New file.
1205         * Makerules (check-abi-%, update-abi-%): New pattern rules.
1206         (update-abi, check-abi): New targets.
1207         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
1208
1209 2002-12-19  Roland McGrath  <roland@redhat.com>
1210
1211         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
1212
1213         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
1214         INTERNAL_SYSCALL.
1215
1216 2002-12-21  Andreas Schwab  <schwab@suse.de>
1217
1218         * elf/check-textrel.c (handle_file): Swap p_type.
1219
1220 2002-12-21  Andreas Schwab  <schwab@suse.de>
1221
1222         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
1223         (INLINE_SYSCALL): Use it.
1224         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
1225         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
1226
1227         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
1228         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
1229
1230 2002-12-20  Art Haas  <ahaas@airmail.net>
1231
1232         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
1233         syntax to C99.
1234
1235 2002-12-21  Philip Blundell  <philb@gnu.org>
1236
1237         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
1238         top as seventh arg to __libc_start_main.
1239         Reported by paulnash@wildseed.com.
1240
1241         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
1242
1243         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
1244         compatibility cruft when new enough kernel is assumed.
1245
1246 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
1247
1248         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
1249         instead of INLINE_SYSCALL.
1250
1251 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
1252
1253         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
1254         typo.
1255
1256         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
1257         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
1258         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
1259         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
1260         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
1261         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
1262         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
1263         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
1264         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
1265         Patch by William Lee Irwin <wli@holomorphy.com>.
1266
1267 2002-12-20  Andreas Schwab  <schwab@suse.de>
1268
1269         * locale/programs/ld-measurement.c (measurement_output): Fix
1270         index calculation.
1271
1272 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
1273
1274         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
1275         Redefine _IO_flockifle and _IO_funlockfile as inlines.
1276
1277         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
1278         builds add "tls" in the search path.
1279         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
1280         (path_hwcap): Recognize "tls".
1281
1282 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
1283
1284         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
1285         __waitpid instead of waitpid.
1286
1287         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
1288         int $0x80.
1289         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
1290         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
1291         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
1292
1293         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
1294         information for system calls.
1295
1296         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
1297         for ld.so.
1298
1299         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
1300
1301 2002-12-19  Roland McGrath  <roland@redhat.com>
1302
1303         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
1304         * iconvdata/ibm922.h: Likewise.
1305         * iconvdata/ibm930.h: Likewise.
1306         * iconvdata/ibm932.h: Likewise.
1307         * iconvdata/ibm933.h: Likewise.
1308         * iconvdata/ibm935.h: Likewise.
1309         * iconvdata/ibm937.h: Likewise.
1310         * iconvdata/ibm939.h: Likewise.
1311         * iconvdata/ibm943.h: Likewise.
1312         * iconvdata/isiri-3342.h: Likewise.
1313
1314 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
1315
1316         * test-skeleton.c (main): Make sure correct value is seen as
1317         argv[0] after adjustment of argv, and argc.
1318
1319         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
1320         RTLD_CORRECT_DYNAMIC_WEAK is defined.
1321
1322 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
1323
1324         * nscd/connections.c (nscd_run): Shut up warning.
1325         * tst-ungetc.c (assert): Undefined before redefining.
1326
1327 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
1328
1329         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
1330         is used.
1331
1332 2002-12-17  Art Haas  <ahaas@airmail.net>
1333
1334         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
1335         * iconvdata/cp775.h: Likewise.
1336         * iconvdata/ibm1046.h: Likewise.
1337         * iconvdata/ibm1124.h: Likewise.
1338         * iconvdata/ibm1129.h: Likewise.
1339         * iconvdata/ibm1132.h: Likewise.
1340         * iconvdata/ibm1133.h: Likewise.
1341         * iconvdata/ibm1160.h: Likewise.
1342         * iconvdata/ibm1161.h: Likewise.
1343         * iconvdata/ibm1162.h: Likewise.
1344         * iconvdata/ibm1163.h: Likewise.
1345         * iconvdata/ibm1164.h: Likewise.
1346
1347 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
1348
1349         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
1350         __ASSUME_CLONE_THREAD_FLAGS is defined.
1351         * sysdeps/unix/sysv/linux/kernel-features.h
1352         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
1353
1354 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
1355
1356         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
1357         of asm.
1358         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
1359
1360         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
1361         _dl_sysinfo.
1362         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
1363         code.
1364         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
1365         _rtld_global.
1366         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
1367         code.
1368         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
1369         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
1370         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
1371         Add _dl_sysinfo.
1372
1373 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
1374
1375         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
1376         __libc_writev to...
1377         [libc: GLIBC_PRIVATE]: ...here.
1378         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
1379         __libc_msgsnd to...
1380         [libc: GLIBC_PRIVATE]: ...here.
1381
1382 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
1383
1384         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
1385         Use it instead of directly int $0x80.
1386         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
1387         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
1388         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
1389         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
1390         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
1391         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
1392
1393 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
1394
1395         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
1396
1397         * elf/elf.h (AT_SYSINFO): New define.
1398         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
1399         AT_SYSINFO.
1400
1401 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
1402
1403         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
1404         Make cancelable.
1405         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
1406         Likewise.
1407         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
1408         Likewise.
1409         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
1410         Likewise.
1411         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
1412         Likewise.
1413         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
1414
1415         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
1416         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
1417         available, otherwise __libc_maybe_call.
1418         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
1419         cancellation handling.
1420         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
1421
1422 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
1423
1424         * posix/regcomp.c (free_workarea_compile): Free the new member
1425         ORG_INDICES.
1426         (analyze): Initialize ORG_INDICES.
1427         (duplicate_node_closure): Search for a existing node, which is
1428         duplicated from the node ORG_DEST and satisfies the constraint
1429         CONSTRAINT.  And use it to avoid inifimite loop.
1430         (search_duplicated_node): New function.
1431         (duplicate_node): Store the index of the original node.
1432         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
1433         if needed.
1434         * posix/regex_internal.h (re_dfa_t): Add new members.
1435
1436 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
1437
1438         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
1439
1440 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1441
1442         * sysdeps/posix/system.c (do_system): Add support for installation
1443         of cancellation handlers.
1444         * sysdeps/unix/sysv/linux/i386/system.c: New file.
1445
1446         * stdlib/Makefile (tests): Add tst-system.
1447         * stdlib/tst-system.c: New file.
1448
1449         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
1450         CENABLE]: Don't lose content of %ebx.
1451
1452 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
1453
1454         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
1455         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
1456
1457 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1458
1459         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
1460         fails to return a function pointer don't use it.
1461
1462 2002-12-16  Art Haas  <ahaas@airmail.net>
1463
1464         * io/ftw.c: Convert GCC extension initializer syntax to C99.
1465         * iconvdata/iso-ir-165.c: Likewise.
1466         * iconvdata/jis0208.c: Likewise.
1467         * iconvdata/jis0212.c: Likewise.
1468
1469 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1470
1471         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
1472         epoll_ctl, and epoll_wait.
1473         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
1474         epoll_create, epoll_ctl, and epoll_wait.
1475         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
1476         Davide Libenzi <davidel@xmailserver.org>.
1477         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
1478         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
1479         Add sys/epoll.h.
1480
1481 2002-12-16  Art Haas  <ahaas@airmail.net>
1482
1483         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
1484         syntax to C99
1485         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
1486         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
1487         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
1488
1489 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1490
1491         * stdio-common/Makefile (routines): Remove lockfile.  Add
1492         flockfile, ftrylockfile, and funlockfile.
1493         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
1494         * sysdeps/generic/flockfile.c: New file.
1495         * sysdeps/generic/ftrylockfile.c: New file.
1496         * sysdeps/generic/funlockfile.c: New file.
1497
1498 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
1499
1500         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
1501         macros instead of doing the calls directly.
1502         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
1503         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
1504         targets.
1505
1506 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
1507
1508         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
1509         * sysdeps/ieee754/bits/nan.h: Likewise.
1510
1511         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
1512         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
1513
1514 2002-12-16  Roland McGrath  <roland@redhat.com>
1515
1516         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
1517         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
1518         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
1519
1520         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
1521         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
1522         s_putpmsg.
1523         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
1524         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
1525         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
1526         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
1527         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
1528         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
1529         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
1530         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
1531
1532 2002-12-13  Paul Eggert  <eggert@twinsun.com>
1533
1534         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
1535         is now u_int, not int.
1536         (struct XDR.x_handy): Now u_int, not int.
1537         * sunrpc/xdr_mem.c: Include <limits.h>.
1538         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
1539         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
1540         x_handy is now unsigned, not signed.
1541         Do not decrement x_handy if no change is made.
1542         (xdrmem_setpos): Check for int overflow.
1543         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
1544         (xdr_sizeof): Remove cast that is now unnecessary, now that
1545         x_handy is unsigned.
1546
1547 2002-12-15  Art Haas  <ahaas@airmail.net>
1548
1549         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
1550         * iconvdata/gap.awk: Likewise.
1551         * iconvdata/gen-8bit-gap-1.sh: Likewise.
1552         * iconvdata/gen-8bit-gap.sh: Likewise.
1553         * locale/C-address.c: Likewise.
1554         * locale/C-collate.c: Likewise.
1555         * locale/C-ctype.c: Likewise.
1556         * locale/C-identification.c: Likewise.
1557         * locale/C-measurement.c: Likewise.
1558         * locale/C-messages.c: Likewise.
1559         * locale/C-monetary.c: Likewise.
1560         * locale/C-name.c: Likewise.
1561         * locale/C-numeric.c: Likewise.
1562         * locale/C-paper.c: Likewise.
1563         * locale/C-telephone.c: Likewise.
1564         * locale/C-time.c: Likewise.
1565         * nscd/connections.c: Likewise.
1566         * nscd/grpcache.c: Likewise.
1567         * nscd/hstcache.c: Likewise.
1568         * nscd/pwdcache.c: Likewise.
1569         * stdio-common/vfprintf.c: Likewise.
1570         * stdlib/random.c: Likewise.
1571         * sysdeps/generic/siglist.c: Likewise.
1572         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
1573         * sysdeps/ieee754/bits/nan.h: Likewise.
1574         * sysdeps/posix/sprofil.c: Likewise.
1575         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
1576         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
1577         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
1578
1579 2002-12-15  Roland McGrath  <roland@redhat.com>
1580
1581         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
1582
1583         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
1584         <tls.h> here, no need for it.
1585         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
1586
1587         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
1588         parameter, not varargs parameter.
1589
1590         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
1591         argument so it's not an unused variable.
1592
1593         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
1594         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
1595         for users.
1596
1597         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
1598
1599 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
1600
1601         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
1602         original __libc_fcntl code.  Just renamed.
1603
1604 2002-12-15  Andreas Schwab  <schwab@suse.de>
1605
1606         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
1607
1608 2002-12-14  Olaf Hering  <olh@suse.de>
1609
1610         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
1611         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
1612
1613 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
1614
1615         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
1616
1617         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
1618         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
1619
1620         * sysdeps/unix/sysv/linux/open64.c: New file.
1621
1622         * sysdeps/generic/pselect.c: Add support for cancellation handling.
1623         * sysdeps/posix/open64.c: Likewise.
1624         * sysdeps/posix/sigpause.c: Likewise.
1625         * sysdeps/posix/sigwait.c: Likewise.
1626         * sysdeps/posix/system.c: Likewise.
1627         * sysdeps/posix/waitid.c: Likewise.
1628         * sysdeps/unix/sysv/linux/accept.S: Likewise.
1629         * sysdeps/unix/sysv/linux/connect.S: Likewise.
1630         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
1631         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
1632         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
1633         * sysdeps/unix/sysv/linux/poll.c: Likewise.
1634         * sysdeps/unix/sysv/linux/pread.c: Likewise.
1635         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
1636         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
1637         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
1638         * sysdeps/unix/sysv/linux/readv.c: Likewise.
1639         * sysdeps/unix/sysv/linux/recv.S: Likewise.
1640         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
1641         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
1642         * sysdeps/unix/sysv/linux/send.S: Likewise.
1643         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
1644         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
1645         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
1646         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
1647         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
1648         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
1649         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
1650         * sysdeps/unix/sysv/linux/wait.c: Likewise.
1651         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
1652         * sysdeps/unix/sysv/linux/writev.c: Likewise.
1653         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
1654         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
1655
1656 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
1657
1658         * sysdeps/generic/sysdep-cancel.h: New file.
1659         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
1660         cancelable syscall.
1661         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
1662         recvmsg, send, sendmsg, sendto): Make cancelable.
1663         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
1664         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
1665         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
1666         sendto, osf_select): Likewise.
1667         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
1668         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
1669         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
1670         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
1671         sendto): Likewise.
1672         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
1673         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
1674         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
1675         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
1676         sendto): Likewise.
1677         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
1678         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
1679         sendto, select): Likewise.
1680         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
1681         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
1682         Likewise.
1683         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
1684         select, fcntl): Likewise.
1685         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
1686         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
1687         read, readv, select, sigsuspend, write, writev): Likewise.
1688
1689 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
1690
1691         * dirent/bug-readdir1.c: Include unistd.h.
1692
1693 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
1694
1695         * locale/programs/locale.c: Include locarchive.h.
1696         (ARCHIVE_NAME): Define.
1697         (write_archive_locales): New function.
1698         (write_locales): Use it.  Ensure the same locale is not printed
1699         multiple times in verbose mode.
1700         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
1701         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
1702         functions.
1703         (struct nameent): New type.
1704         (nameentcmp): New function.
1705
1706 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
1707
1708         * posix/regex_internal.c (re_string_context_at): Guard wide char
1709         code with #ifdef RE_ENABLE_I18N.
1710
1711 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
1712
1713         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
1714
1715 2002-12-13  Roland McGrath  <roland@redhat.com>
1716
1717         * posix/bug-regex15.c: New file.
1718         * posix/Makefile (tests): Add it.
1719
1720         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
1721         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
1722
1723 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
1724
1725         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
1726
1727         * misc/syslog.c (log_cleanup): Don't use parameter in
1728         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
1729         pass NULL instead of a pointer to syslog_lock.
1730
1731 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
1732
1733         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
1734         linker map for all iconv modules.
1735         (distribute): Add gconv.map.
1736         * iconvdata/gconv.map: New file.
1737
1738         * elf/Makefile: Also check all iconv modules for text relocations.
1739
1740         * stdlib/Makefile: Remove code to automatically import GMP.
1741
1742         * elf/Makefile (tests): Add rules to build and run check-textrel.
1743         * elf/check-textrel.c: New file.
1744
1745         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
1746         directive.
1747
1748 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
1749
1750         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
1751         not st.st[am]time.
1752
1753 2002-04-30  Bruno Haible  <bruno@clisp.org>
1754
1755         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
1756         the encoding if it already has slashes.
1757         Reported by Perry Rapp <prapp@erols.com>.
1758
1759 2002-12-11  Roland McGrath  <roland@redhat.com>
1760
1761         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
1762         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
1763         Turn off PIC for compiling this file.
1764
1765 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
1766
1767         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
1768         definitions.  Not needed.
1769         [_LIBC]: Use definitions from libc-lock.h instead of referencing
1770         pthread routines directly.
1771         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
1772         mutex_init calls.
1773         (arena_get2): Don't look at return value of mutex_lock.
1774
1775 2002-12-11  Roland McGrath  <roland@redhat.com>
1776
1777         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
1778         elf-init.o instead of compiling a PIC version.
1779
1780 2002-12-11  Bruno Haible  <bruno@clisp.org>
1781
1782         * intl/gettext.h: Renamed to ...
1783         * intl/gmo.h: ... here.
1784         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
1785         * intl/gettextP.h: Update.
1786         * intl/loadmsgcat.c: Update.
1787
1788         * intl/gettextP.h (PARAMS): Make more portable.
1789         (attribute_hidden): Define as empty macro if not already defined.
1790         * intl/hash-string.h (PARAMS): Make more portable.
1791         * intl/loadinfo.h (PARAMS): Likewise.
1792         * intl/plural-exp.h (PARAMS): Likewise.
1793         (attribute_hidden): Move definition near the definition of
1794         internal_function.
1795
1796         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
1797         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
1798
1799 2002-07-13  Bruno Haible  <bruno@clisp.org>
1800
1801         * intl/dcigettext.c (freea): New macro.
1802         (FREE_BLOCKS): Free also the registered blocks.
1803         (DCIGETTEXT): Free the 'search' variable.
1804         Reported by Andreas Fischer <a.fischer@asentics.de>.
1805
1806 2002-04-27  Bruno Haible  <bruno@clisp.org>
1807
1808         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
1809         * intl/dcigettext.c: Likewise.
1810         * intl/dcgettext.c: Likewise.
1811         * intl/dgettext.c: Likewise.
1812         * intl/gettext.c: Likewise.
1813         * intl/dcngettext.c: Likewise.
1814         * intl/dngettext.c: Likewise.
1815         * intl/ngettext.c: Likewise.
1816         * intl/textdomain.c: Likewise.
1817         * intl/bindtextdom.c: Likewise.
1818         * intl/plural-exp.h: Likewise.
1819
1820 2002-01-02  Bruno Haible  <bruno@clisp.org>
1821
1822         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
1823
1824 2001-04-30  Bruno Haible  <bruno@clisp.org>
1825
1826         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
1827         default macro definitions.  Needed for mingw32.
1828
1829 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
1830
1831         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
1832         __builtin_constant_p to macro parameter.
1833
1834         * sysdeps/generic/sigpause.c: Define all functions as weak.
1835         * sysdeps/posix/sigpause.c: Likewise.
1836
1837         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
1838         type size_t.
1839
1840 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
1841
1842         * elf/tst-array1.c (preinit_array, init_array, fini_array):
1843         Explicitly align the array to sizeof (void *).
1844         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
1845
1846         * include/libc-symbols.h: Fix a comment typo.
1847
1848         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
1849         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
1850         Likewise.
1851         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
1852         Likewise.
1853         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
1854         (__libc_sigsuspend): Likewise.
1855         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
1856         (__libc_sigsuspend): Likewise.
1857         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
1858         (creat): New weak alias.
1859
1860 2002-12-10  Roland McGrath  <roland@redhat.com>
1861
1862         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
1863         contributes a manual chapter.
1864         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
1865         around xref to it.
1866
1867         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
1868         and move contents to ...
1869         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
1870         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
1871         it instead of duplicating its contents.
1872         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
1873
1874 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
1875
1876         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
1877         defined.
1878         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
1879         function.
1880         (EXTRA_LD_ENVVARS): Use it.
1881         (DL_OSVERSION_INIT): Define.
1882         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
1883         dl-librecon.h.
1884         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
1885
1886 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
1887
1888         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
1889
1890         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
1891         call.  It is not allowed to destroy pthread mutexes which are
1892         still in use even though it is safe for our implementations.  If
1893         somebody still uses the descriptor it is a bug.
1894
1895 2002-12-09  Richard Henderson  <rth@redhat.com>
1896
1897         * csu/abi-note.S: Use .p2align, not .align.
1898
1899 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
1900
1901         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
1902         __libc_select aliases.
1903
1904         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
1905         alias.
1906
1907         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
1908
1909         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
1910
1911         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
1912
1913         * sysdeps/unix/syscalls.list: Define __libc_select alias.
1914
1915         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
1916
1917         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
1918         __libc___xpg_sigpause aliases.
1919
1920         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
1921
1922         * misc/error.c: Remove use of USE_IN_LIBIO.
1923
1924 2002-12-08  Roland McGrath  <roland@redhat.com>
1925
1926         * elf/Makefile (tests): Uncomment tst-array[123].
1927         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
1928         * csu/elf-init.c: New file.
1929         * csu/Makefile (routines, static-only-routines): Add elf-init.
1930         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
1931         and __libc_csu_fini in place of _fini.
1932         * sysdeps/arm/elf/start.S: Likewise.
1933         * sysdeps/cris/elf/start.S: Likewise.
1934         * sysdeps/hppa/elf/start.S: Likewise.
1935         * sysdeps/i386/elf/start.S: Likewise.
1936         * sysdeps/ia64/elf/start.S: Likewise.
1937         * sysdeps/m68k/elf/start.S: Likewise.
1938         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
1939         * sysdeps/mips/elf/start.S: Likewise.
1940         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
1941         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
1942         * sysdeps/s390/s390-32/elf/start.S: Likewise.
1943         * sysdeps/s390/s390-64/elf/start.S: Likewise.
1944         * sysdeps/sh/elf/start.S: Likewise.
1945         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
1946         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
1947         * sysdeps/x86_64/elf/start.S: Likewise.
1948
1949         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
1950         struct containing function ptr and value, free it.
1951         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
1952         It's not safe to let the new thread use the SIGEV pointer.
1953
1954 2001-10-20  Paul Eggert  <eggert@twinsun.com>
1955
1956         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
1957         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
1958         Use strerror_r that is only a macro, even if it is not a function.
1959         (strerror): Check for HAVE_DECL_STRERROR before declaring.
1960         (private_strerror): Use prototypes, not old-style function definition.
1961         (print_errno_message): New function.
1962         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
1963         char*-flavored one.
1964         (error_tail, error, error_at_line): Use it.
1965
1966 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
1967
1968         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
1969
1970 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
1971
1972         * scripts/output-format.sed: Fix bug in one of the s expressions
1973         which used / for one too many things.
1974
1975         * include/unistd.h: Declare __libc_close.
1976
1977 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
1978
1979         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
1980
1981 2002-12-07  Roland McGrath  <roland@redhat.com>
1982
1983         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
1984         from 2002-12-06, but remove unnecessary memset call without removing
1985         necessary copy of initialization image.
1986
1987         * Makerules ($(common-objpfx)format.lds): New target.
1988         (common-generated): Add it.
1989         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
1990         * scripts/output-format.sed: New file.
1991         * Makefile (distribute): Add it.
1992
1993 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
1994
1995         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
1996         Reported by Art Haas <ahaas@airmail.net>.
1997
1998 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
1999
2000         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
2001
2002 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
2003
2004         * string/test-strncpy.c (do_random_tests): Improve test coverage.
2005
2006 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
2007
2008         * test-skeleton.c (timeout_handler): Allow expected signal to be
2009         SIGALRM.
2010
2011         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
2012
2013         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
2014
2015 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
2016
2017         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
2018         (SYSCALL_ERROR_HANDLER): Fix a pasto.
2019         Reported by Jeff Bailey <jbailey@nisa.net>.
2020
2021 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
2022
2023         * sysdeps/generic/libc-tls.c: Undo last patch.
2024
2025         * include/wctype.h: Define iswalnum with libc_hidden_proto.
2026
2027         * include/signal.h: Define raise with libc_hidden_proto.
2028
2029         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
2030         __execve instead of snprintf and execve.
2031
2032         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
2033         again a bit.
2034
2035 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
2036
2037         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
2038         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
2039
2040 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
2041
2042         * misc/syslog.c (log_cleanup): New function.
2043         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
2044         (closelog): Likewise.
2045
2046         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
2047         * elf/dl-iteratephdr.c: Likewise.
2048         * elf/dl-lookup.c: Likewise.
2049         * elf/dl-misc.c: Likewise.
2050         * elf/dl-open.c: Likewise.
2051         * elf/dl-support.c: Likewise.
2052         * elf/rtld.c: Likewise.
2053         * sysdeps/generic/ldsodefs.h: Likewise.
2054         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
2055         * sysdeps/mach/bits/libc-lock.h: Likewise.
2056         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
2057
2058 2002-12-06  Roland McGrath  <roland@redhat.com>
2059
2060         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
2061
2062         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
2063         (malloc_starter, memalign_starter, free_starter): Don't define these.
2064         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
2065         Don't declare them either.
2066         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
2067         __pthread_initialize, so no need to set hooks to *_starter.
2068         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
2069         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
2070         (__libc_malloc_pthread_startup): New function.
2071         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
2072
2073         * malloc/hooks.c (memalign_starter): New function.
2074         * malloc/malloc.c: Declare it.
2075         * malloc/arena.c (save_memalign_hook): New variable.
2076         (ptmalloc_init): Set __memalign_hook to memalign_starter.
2077
2078         * elf/dl-minimal.c (free): Clear the memory.
2079         (calloc): Just call malloc, knowing all memory it returns is cleared.
2080
2081         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
2082         malloc and memset; calloc can avoid the zeroing when redundant.
2083         (_dl_tls_setup): Likewise.
2084         * elf/dl-load.c (decompose_rpath): Likewise.
2085         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
2086         call, since memory from sbrk at startup is already zero.
2087
2088         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
2089         error string for failure, null for success.  Update callers.
2090         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
2091         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
2092
2093 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
2094
2095         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
2096         args to i:iipi.
2097         (readahead): Change args to i:iii.
2098         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
2099         Change args to i:iii.
2100         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
2101         args to i:iiii.
2102
2103 2002-12-05  Roland McGrath  <roland@redhat.com>
2104
2105         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
2106         call all functions rather than none.
2107         Reported by Mark P. Mitchell <mark@codesourcery.com>.
2108
2109 2002-12-04  Roland McGrath  <roland@redhat.com>
2110
2111         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
2112         on _nl_current_LC_* variables.
2113
2114 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
2115
2116         * dirent/bug-readdir1.c (main): Don't call closedir, just close
2117         the file descriptor.  This is testing what the bug report was about.
2118
2119 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
2120
2121         * po/be.po: New file.
2122
2123         * argp/Makefile (tests): Add tst-argp1.
2124
2125         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
2126         Change type of _attribute to void*.
2127         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
2128         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
2129         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
2130         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
2131         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
2132
2133 2002-12-04  Roland McGrath  <roland@redhat.com>
2134
2135         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
2136         members to the end, so a libpthread compiled with !USE_TLS will still
2137         find other members properly.
2138
2139         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
2140         operand for DEST memory.  Fix dummy input operand to use SRC.
2141         Reported by Davin McCall <davmac@ozonline.com.au>.
2142
2143         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
2144         alignment when initializing the DTV entry.
2145
2146         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
2147         when TLS has not been set up, try to set it up if we can.
2148         * elf/tst-tls4.c: Revert last change.
2149         * elf/tst-tls5.c: Likewise.
2150         * elf/tst-tls6.c: Likewise.
2151         * elf/tst-tls7.c: Likewise.
2152         * elf/tst-tls8.c: Likewise.
2153         * elf/tst-tls9.c: Likewise.
2154
2155         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
2156         * sysdeps/generic/ldsodefs.h: Declare it.
2157         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
2158         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
2159         function, broken out of __libc_setup_tls.
2160         (init_static_tls): Likewise.
2161         (__libc_setup_tls): Call them.
2162         (_dl_tls_setup): New function, uses new subroutines.
2163
2164         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
2165         Clear the pointer when returning true.
2166         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
2167         first element of the slotinfo list too.
2168
2169         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
2170         [SHARED].
2171
2172         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
2173         (_dl_determine_tlsoffset): Likewise.
2174
2175         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
2176         startup_error_tsd, made global.
2177         (dl_main): Update initialization.
2178         * elf/dl-tsd.c: Likewise.
2179         * sysdeps/generic/ldsodefs.h: Declare it.
2180
2181 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
2182
2183         * manual/texinfo.tex: Update from latest upstream version.
2184
2185 2002-12-03  Roland McGrath  <roland@redhat.com>
2186
2187         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
2188         area surplus in calculation for sbrk call.
2189
2190         * iconvdata/cp1125.c: New file.
2191         * iconvdata/Makefile (distribute): Add it.
2192         (modules): Add CP1125.
2193         (gen-8bit-gap-modules): Add cp1125.
2194         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
2195         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
2196
2197 2002-12-03  Andreas Jaeger  <aj@suse.de>
2198
2199         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
2200
2201 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
2202
2203         * sysdeps/posix/system.c (do_system): Make signal handler
2204         installation thread safe.
2205
2206 2002-12-02  Roland McGrath  <roland@redhat.com>
2207
2208         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
2209         caller from EXTRA to -.
2210         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
2211         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
2212         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
2213
2214 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
2215
2216         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
2217         bits of RM are cleared.
2218
2219 2002-12-02  Roland McGrath  <roland@redhat.com>
2220
2221         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
2222         TLS setup is required.
2223         * elf/tst-tls5.c: Likewise.
2224         * elf/tst-tls6.c: Likewise.
2225         * elf/tst-tls7.c: Likewise.
2226         * elf/tst-tls8.c: Likewise.
2227         * elf/tst-tls9.c: Likewise.
2228
2229         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
2230         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
2231         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
2232         for being null before calling free_slotinfo.
2233         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
2234         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
2235
2236 2002-11-30  Bruno Haible  <bruno@clisp.org>
2237
2238         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
2239         (struct __gconv_step): New field __btowc_fct.
2240         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
2241         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
2242         __BUILTIN_TRANS.
2243         (__gconv_btwoc_ascii): New declaration.
2244         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
2245         (__gconv_btwoc_ascii): New function.
2246         * iconv/gconv_builtin.h: Add BtowcFct argument to all
2247         BUILTIN_TRANSFORMATION invocations.
2248         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
2249         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
2250         * iconv/gconv_builtin.c (map): New field btowc_fct.
2251         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
2252         btowc_fct field.
2253         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
2254         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
2255         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
2256         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
2257         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
2258         (gconv_init): Initialize __btowc_fct field.
2259         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
2260         * iconv/loop.c: Document ONEBYTE_BODY.
2261         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
2262         Undefine ONEBYTE_BODY at the end.
2263         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
2264         * iconvdata/8bit-gap.c (NONNUL): New macro.
2265         (BODY for FROM_LOOP): Use it.
2266         (ONEBYTE_BODY): New macro.
2267         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
2268         (NONNUL): New macro.
2269         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
2270         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
2271         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
2272         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
2273         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
2274         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
2275         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
2276         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
2277         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
2278         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
2279         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
2280         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
2281         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
2282         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
2283         * iconvdata/ibm932.c: Include <stdbool.h>.
2284         (TRUE, FALSE): Remove macros.
2285         (BODY for FROM_LOOP): Remove unused variable rp1.
2286         (ONEBYTE_BODY): New macro.
2287         (BODY for TO_LOOP): Use bool.
2288         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
2289         * iconvdata/ibm943.c: Include <stdbool.h>.
2290         (TRUE, FALSE): Remove macros.
2291         (BODY for FROM_LOOP): Remove unused variable rp1.
2292         (ONEBYTE_BODY): New macro.
2293         (BODY for TO_LOOP): Use bool.
2294         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
2295         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
2296         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
2297         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
2298         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
2299         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
2300         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
2301         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
2302         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
2303         * iconvdata/gbbig5.c: Tweak comment.
2304
2305 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
2306
2307         * po/fi.po: Update from translation team.
2308
2309 2002-12-01  Roland McGrath  <roland@redhat.com>
2310
2311         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
2312         testing getdents64 return value.
2313
2314         * scripts/versions.awk: Don't pass -n flag to sort command.
2315
2316         * posix/bug-regex13.c: Include <string.h>.
2317
2318         * sysdeps/generic/libc-start.c (__libc_start_main): Do
2319         DL_SYSDEP_OSCHECK here.
2320         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
2321         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
2322
2323         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
2324         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
2325
2326         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
2327         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
2328
2329         * include/link.h: Comment typo fix.
2330
2331 2002-12-01  Roland McGrath  <roland@frob.com>
2332
2333         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
2334         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
2335         _POSIX_MEMORY_PROTECTION): Likewise.
2336         (_POSIX_POLL, _POSIX_SELECT): Removed.
2337
2338 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
2339
2340         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
2341         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
2342
2343 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
2344
2345         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
2346         USE___THREAD.
2347         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
2348         "=v" constraints.
2349
2350 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
2351
2352         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
2353         branch prediction buffers by using unpaired call/ret.
2354
2355 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
2356
2357         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
2358         first parameters constraint string.
2359         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
2360
2361 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
2362
2363         * posix/regcomp.c (parse_expression): Set the bit since the back
2364         reference is used in the regular expression.
2365         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
2366         of malloc failure.
2367         (re_node_set_init_copy): Likewise.
2368         * posix/regex_internal.h (state_array_t): New structure.
2369         (re_sub_match_last_t): Likewise.
2370         (re_sub_match_top_t): Likewise.
2371         (re_match_context_t): Add new members.
2372         (re_dfa_t): Likewise.
2373         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
2374         to check the matching is really correct, and retry if failed.
2375         Move the routin pruning the impossible nodes from here, ...
2376         (prune_impossible_nodes): To this function.
2377         (check_matching): Invoke check_subexp_matching_top, and replace
2378         redundant checking with transit_state_bkref invocation.
2379         (proceed_next_node): Replace strncmp with memcmp.  Reported by
2380         Paolo Bonzini  <bonzini@gnu.org>.
2381         (update_cur_sifted_state): Remove search_subexp invocation.
2382         (search_subexp): Remove this function.
2383         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
2384         optimization.
2385         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
2386         Remove unused invocation of match_ctx_add_entry.
2387         (transit_state): Invoke check_subexp_matching_top.
2388         (check_subexp_matching_top): New function.
2389         (transit_state_bkref): Remove unused array.
2390         Merge transit_state_bkref_loop.
2391         (transit_state_bkref_loop): Use get_subexp instead of
2392         sift_states_backward.  Use search_cur_bkref_entry for optimization.
2393         Merge this function to transit_state_bkref.
2394         (get_subexp): New function.
2395         (get_subexp_sub): Likewise.
2396         (find_subexp_node): Likewise.
2397         (check_arrival): Likewise.
2398         (check_arrival_expand_ecl): Likewise.
2399         (check_arrival_expand_ecl_sub): Likewise.
2400         (expand_bkref_cache): Likewise.
2401         (match_ctx_init): Initialize new members.
2402         (match_ctx_clean): New function.
2403         (match_ctx_free): Release new members.
2404         (match_ctx_free_subtops): New function.
2405         (match_ctx_add_entry): Fix indent.
2406         (search_cur_bkref_entry): New function.
2407         (match_ctx_add_subtop): Likewise.
2408         (match_ctx_add_sublast): Likewise.
2409
2410 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
2411
2412         * iconv/Makefile (tests): Remove tst-iconv4.c
2413         * iconv/tst-iconv4.c: Moved to...
2414         * iconvdata/tst-iconv4.c: ...here.  New file.
2415         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
2416
2417 2002-11-25  Roland McGrath  <roland@redhat.com>
2418
2419         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
2420         Grok AF_LINK if defined.
2421         From Momchil Velikov <velco@fadata.bg>.
2422
2423         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
2424         brdaddr, or dstaddr, just set those pointers to null and don't fail.
2425         Reported by Momchil Velikov <velco@fadata.bg>.
2426
2427         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
2428         is > sizeof IFR->ifa_addr, advance past the whole longer length.
2429         (__ifreq): Count up NIFS that way too.
2430         Reported by Momchil Velikov <velco@fadata.bg>.
2431
2432         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
2433
2434         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
2435         and <fpu_control.h>.
2436
2437 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
2438
2439         * elf/elf.h (EM_ST19): Fix typo.
2440
2441 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
2442
2443         * include/errno.h (__set_errno): Define as errno = val
2444         unconditionally.
2445
2446 2002-11-24  Roland McGrath  <roland@redhat.com>
2447
2448         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
2449         * sysdeps/posix/writev.c: Likewise.
2450         From Momchil Velikov <velco@fadata.bg>.
2451
2452         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
2453         calling *GL(dl_error_catch_tsd) for a thread-local location.
2454         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
2455         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
2456         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
2457
2458         * libio/iofflush.c: Add libc_hidden_def.
2459         * libio/iofwrite.c: Likewise.
2460         * sysdeps/generic/sigtimedwait.c: Likewise.
2461         * sysdeps/generic/sigwaitinfo.c: Likewise.
2462         * sysdeps/posix/sigwait.c: Likewise.
2463         Reported by Momchil Velikov <velco@fadata.bg>.
2464
2465         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
2466         to match <arpa/inet.h> declaration.
2467         * inet/inet_netof.c (inet_netof): Likewise.
2468         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
2469         Reported by Momchil Velikov <velco@fadata.bg>.
2470
2471         * configure.in: Skip AUTOCONF check under --without-cvs.
2472         * configure: Regenerated.
2473
2474         * posix/Makefile (headers): Add bits/pthreadtypes.h.
2475         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
2476         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
2477
2478 2002-11-24  Andreas Schwab  <schwab@suse.de>
2479
2480         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
2481         with six arguments.
2482
2483 2002-11-19  Jim Meyering  <jim@meyering.net>
2484
2485         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
2486         as `static'.
2487         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
2488
2489 2002-11-23  Roland McGrath  <roland@redhat.com>
2490
2491         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
2492         Just produce hex output for datum sizes.
2493
2494         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
2495         Reported by Luca Barbieri <ldb@ldb.ods.org>.
2496
2497 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
2498
2499         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
2500         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
2501         and __unused3 fields.
2502         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
2503         [__WORDSIZE == 32]: Only PPC32 requires __unused1
2504         and __unused2 fields.
2505         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
2506         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
2507         __unused3, and __unused4 fields.
2508
2509         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
2510         obtain lowest address for profiling in __monstartup call.
2511
2512 2002-11-21  Roland McGrath  <roland@redhat.com>
2513
2514         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
2515         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
2516
2517         * locale/localeinfo.h (struct locale_data): Revert last change.
2518
2519         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
2520         From Ian Wienand <ianw@gelato.unsw.edu.au>.
2521
2522         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
2523         __NR_pread64 if not defined.
2524         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
2525         From Ian Wienand <ianw@gelato.unsw.edu.au>.
2526
2527 2002-11-21  Roland McGrath  <roland@frob.com>
2528
2529         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
2530         __libc_multiple_libcs here.  Call __setfpucw.
2531
2532 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
2533
2534         * elf/Makefile (tests): Don't run test-arrayX tests for now.
2535
2536         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
2537         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
2538         CLONE_CHILD_*TID flags.
2539
2540 2002-11-20  Andreas Jaeger  <aj@suse.de>
2541
2542         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
2543         We pass struct ucontext on x86-64.
2544         (GET_PC): Adjust.
2545         (GET_FRAME): Adjust.
2546         (GET_STACK): Adjust.
2547
2548 2002-11-20  Roland McGrath  <roland@redhat.com>
2549
2550         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
2551         conditionalize [! DO_VERSIONING] #error.
2552
2553         * scripts/abilist.awk: Grok function descriptor symbols.
2554
2555         * intl/tst-gettext.c (main): Check return values from setlocale.
2556         Add necessary unsetenv's to make LANG=existing-locale check work.
2557
2558         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
2559         so aborted prior runs don't confuse things.
2560
2561         * locale/localeinfo.h (struct locale_data: union locale_data_value):
2562         Use uintptr_t instead of unsigned int for `word' member.
2563         (_NL_CURRENT_WORD): Cast to uint32_t.
2564
2565         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
2566         value.
2567
2568 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
2569
2570         * elf/tls-macros.h: Add IA-64 definitions.
2571         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
2572
2573         * iconv/Makefile (tests): Add tst-iconv4.
2574         * iconv/tst-iconv4.c: New file.
2575
2576         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
2577         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
2578         __GCONV_INCOMPLETE_INPUT.
2579         (ucs4le_internal_loop): Likewise.
2580         (ucs4le_internal_loop_unaligned): Likewise.
2581         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
2582         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
2583         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
2584
2585         * iconv/loop.c (LOOPFCT): First test for empty input then for full
2586         output buffer.
2587
2588         * inet/getnameinfo.c: Use extend_alloca where appropriate.
2589         * sysdeps/posix/getaddrinfo.c: Likewise.
2590
2591         * include/alloca.h (extend_alloca): New define.  Based on stack
2592         direction it'll try to append to the previouls allocated buffer.
2593
2594 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
2595
2596         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
2597         use the same service for AF_INET and AF_INET6.
2598
2599 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
2600
2601         * intl/localealias.c (read_alias_file): Use only about 400 bytes
2602         of stack space instead of 16k.
2603
2604 2002-11-18  Wolfram Gloger  <wg@malloc.de>
2605
2606         * malloc/arena.c
2607         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
2608         nothing if not initialized.  Bug report from Marcus Brinkmann
2609         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
2610
2611 2002-11-19  Roland McGrath  <roland@redhat.com>
2612
2613         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
2614         sched_setaffinity.
2615
2616         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
2617         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
2618         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
2619         * configure: Regenerated.
2620
2621 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
2622
2623         * include/dlfcn.h: __libc_dlopen is now a macro calling
2624         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
2625         (__libc_dlopen_mode): New prototype.
2626         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
2627         new parameter.  Store new parameter in mode field of structure passed
2628         to do_dlopen.
2629         (struct do_dlopen_args): Add new field mode.
2630         (do_dlopen): Pass mode from parameter structure to _dl_open.
2631
2632 2002-11-11  Randolf Chung  <tausq@debian.org>
2633
2634         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
2635         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
2636         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
2637
2638         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
2639
2640         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
2641         Set -mdisable-fpregs for this file.
2642
2643 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
2644
2645         * sysdeps/unix/sysv/linux/configure.in:
2646         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
2647         from gcc-3.0 era for backwards compatibility.
2648         * sysdeps/unix/sysv/linux/configure: Regenerate.
2649
2650         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
2651         Define mcontext_t as a sigcontext.
2652
2653 2002-11-18  Roland McGrath  <roland@redhat.com>
2654
2655         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
2656         Free memory in `last_result' if it was used.
2657
2658         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
2659         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
2660         Do the parsing inline instead of copying strings and calling
2661         inet_network, and properly skip all alias names not matching the form.
2662
2663         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
2664
2665 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
2666
2667         * manual/pattern.texi (Wordexp Example): Fix sample code.
2668
2669         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
2670         childs stack which will be loaded into the %esi register.
2671
2672 2002-11-14  Paul Eggert  <eggert@twinsun.com>
2673
2674         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
2675         overflow when skipping the question part and when unpacking aliases.
2676
2677 2002-11-15  Roland McGrath  <roland@redhat.com>
2678
2679         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
2680         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
2681         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
2682
2683 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
2684
2685         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
2686         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
2687
2688 2002-11-15  Roland McGrath  <roland@redhat.com>
2689
2690         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
2691         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
2692         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
2693         (+make-include-of-dep): New canned sequence.
2694
2695         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
2696         From Dmitry V. Levin <ldv@altlinux.org>.
2697
2698 2002-11-14  Roland McGrath  <roland@redhat.com>
2699
2700         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
2701         * inet/herrno.c (__libc_h_errno): Likewise.
2702         * resolv/res_libc.c (__libc_res): Likewise.
2703         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
2704         (__res_state) [! USE___THREAD]: Don't define as weak.
2705         * csu/Versions: Revert last change.
2706         * resolv/Versions: Revert last change.
2707
2708         * Makerules ($(common-objpfx)%.make): New pattern rule.
2709         * tls.make.c: New file.
2710         * Makefile (distribute): Add it.
2711
2712         * sysdeps/generic/errno.c [! USE___THREAD]
2713         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
2714         with compat_symbol so they are not link-time visible.
2715         [! USE___THREAD] (__libc_errno): New alias for errno.
2716         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
2717         Add __libc_errno here.
2718         * inet/herrno.c [USE___THREAD]: Use this conditional
2719         in place of [USE_TLS && HAVE___THREAD].
2720         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
2721         (h_errno, _h_errno): Declare these with compat_symbol so they are not
2722         link-time visible.
2723         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
2724         * resolv/res_libc.c [! USE___THREAD]
2725         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
2726         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
2727         (__libc_res): Define as alias for _res.
2728         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
2729         Add __libc_h_errno and __libc_res here.
2730
2731 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
2732
2733         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
2734         * resolv/Versions (h_errno, _res): Likewise.
2735
2736 2002-11-14  Roland McGrath  <roland@redhat.com>
2737
2738         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
2739         (%.symlist): Likewise.
2740
2741 2002-11-13  Roland McGrath  <roland@redhat.com>
2742
2743         * scripts/abilist.awk: New file.
2744         * Makefile (distribute): Add it.
2745         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
2746         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
2747         [$(subdir) = elf] (tests): Depend on libc.symlist.
2748         (generated, common-generated): Add those files.
2749
2750         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
2751         * configure: Regenerated.
2752         * config.make.in (OBJDUMP): New variable, substituted by configure.
2753
2754         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
2755         (mallochook, reallochook): Set them up.
2756         (checkhdr): Check HDR->magic2 value.
2757         (freehook): Reset HDR->magic2.
2758         (memalignhook): New static function.
2759         (old_memalign_hook): New static variable.
2760         (mcheck, reallochook): Set __memalign_hook to memalignhook.
2761
2762         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
2763         for the new TCB.
2764
2765 2002-11-13  Andreas Jaeger  <aj@suse.de>
2766
2767         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
2768         attribute.
2769         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
2770
2771 2002-11-11  Paul Eggert  <eggert@twinsun.com>
2772
2773         * manual/crypt.texi (Cryptographic Functions): Mention that
2774         the MD5 one-way algorithm is compatible with BSD's.
2775
2776 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
2777
2778         * posix/regex_internal.c (re_string_skip_chars): Also return the last
2779         wide character.
2780         (re_string_reconstruct): Calculate the context by itself when the
2781         offset points out of the valid range.
2782         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
2783         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
2784         (IS_WIDE_WORD_CHAR): New macro.
2785         (IS_WIDE_NEWLINE): New macro.
2786
2787 2002-11-12  Andreas Jaeger  <aj@suse.de>
2788
2789         * sysdeps/x86_64/strchr.S: Don't use one register for two
2790         purposes, this fixes a bug noticed by test-strchr.c.
2791
2792         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
2793         correctly.
2794
2795 2002-11-12  Roland McGrath  <roland@redhat.com>
2796
2797         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
2798         (_G_IO_NO_BACKWARD_COMPAT): Define it.
2799
2800         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
2801         instead of <pt-machine.h>.
2802         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
2803         testandset.
2804         From Ian Wienand <ianw@gelato.unsw.edu.au>.
2805
2806 2002-11-10  Roland McGrath  <roland@redhat.com>
2807
2808         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
2809         Call fputs instead of fwprintf (simpler to follow in debugger).
2810
2811         * crypt/md5-crypt.c: Doc fix.
2812
2813         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
2814         the beginning of generated target commands.
2815
2816         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
2817         dependencies for these in case implicit rule search skipped the
2818         nonexistent source directory.
2819         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
2820         files with $(object-suffixes) as targets too.
2821         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
2822         and a target for it using $(make-target-directory).
2823
2824         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
2825
2826 2002-11-10  Roland McGrath  <roland@frob.com>
2827
2828         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
2829         * sysdeps/generic/bits/pthreadtypes.h: ... here.
2830
2831         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
2832         l_start == 0 and l_len == 1 as we do l_len == 0.
2833
2834 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
2835
2836         * po/da.po: Update from translation team.
2837
2838 2002-11-10  Roland McGrath  <roland@redhat.com>
2839
2840         * config.make.in (includedir): New variable, substituted by configure.
2841         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
2842         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
2843
2844 2002-11-10  Andreas Jaeger  <aj@suse.de>
2845
2846         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
2847         REG_OLDMASK and REG_CR2 to synch with kernel header.
2848         (NGREG): Increase.
2849
2850         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
2851         aliasing problem.
2852         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
2853         * nss/getnssent_r.c (__nss_getent_r): Likewise.
2854         (__nss_setent): Likewise.
2855         (__nss_getent_r): Likewise.
2856         * inet/getnetgrent_r.c (innetgr): Likewise.
2857         (__internal_setnetgrent_reuse): Likewise.
2858         (internal_getnetgrent_r): Likewise.
2859         * inet/ether_hton.c (ether_hostton): Likewise.
2860         * inet/ether_ntoh.c (ether_ntohost): Likewise.
2861         * sunrpc/netname.c (netname2user): Likewise.
2862         * sunrpc/publickey.c (getpublickey): Likewise.
2863         (getsecretkey): Likewise.
2864
2865 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
2866
2867         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
2868         error in range calculation.
2869
2870 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
2871
2872         * string/test-strspn.c (do_test): Ensure zero termination.
2873         * string/test-strpbrk.c (do_test): Likewise.
2874         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
2875         * string/test-strncpy.c (stupid_strncpy): Likewise.
2876         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
2877
2878 2002-10-08  Roland McGrath  <roland@redhat.com>
2879
2880         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
2881         nonzero characters.
2882
2883 2002-09-22  H.J. Lu  <hjl@gnu.org>
2884
2885         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
2886         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
2887         only if __NR_mmap2 is defined.
2888
2889         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
2890         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
2891         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
2892         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
2893
2894 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
2895
2896         * posix/bug-regex13.c (tests): Add new test.
2897
2898         * string/test-strchr.c (stupid_strchr): New function.
2899         (do_random_tests): Make sure the string is zero terminated.
2900         * string/test-strpbrk.c (stupid_strpbrk): New function.
2901         (do_random_tests): Make sure the string is zero terminated.
2902         * string/test-strcmp.c (stupid_strcmp): New function.
2903         (do_random_tests): Make sure the strings are zero terminated.
2904         * string/test-strspn.c (stupid_strspn): New function.
2905         (simple_strspn): Rename rej argument to acc.
2906         (do_random_tests): Make sure the string is zero terminated.
2907         * string/test-strcspn.c (stupid_strcspn): New function.
2908         * string/test-strncpy.c (stupid_strncpy): New function.
2909         * string/test-stpncpy.c (stupid_stpncpy): New function.
2910         * string/test-strncmp.c (stupid_strncmp): New function.
2911         (do_random_tests): Make sure the strings are zero terminated.
2912         * string/test-string.h (impl_t): Change test into long.
2913         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
2914
2915 2002-11-08  Roland McGrath  <roland@redhat.com>
2916
2917         * sysdeps/ia64/elf/configure.in: Add TLS check.
2918         From Ian Wienand <ianw@cse.unsw.edu.au>.
2919         * sysdeps/ia64/elf/configure: Regenerated.
2920
2921 2002-11-07  Roland McGrath  <roland@redhat.com>
2922
2923         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
2924         place of _IO_new_do_write.
2925         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
2926         #undef before versioned_symbol use.
2927
2928 2002-11-07  Richard Henderson  <rth@redhat.com>
2929
2930         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
2931         * configure: Regenerated.
2932         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
2933         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
2934         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
2935         _dl_fini via gp-relative relocations.
2936         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
2937
2938         * elf/tls-macros.h: Add alpha versions.
2939         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
2940         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
2941         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
2942         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
2943         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
2944         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
2945         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
2946         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
2947         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
2948         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
2949         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
2950         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
2951         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
2952         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
2953         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
2954         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
2955         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
2956         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
2957
2958         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
2959         Kill argument registers across the inline syscall.
2960
2961         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
2962
2963         * linuxthreads/sysdeps/alpha/tls.h: New file.
2964         * sysdeps/alpha/dl-tls.h: New file.
2965
2966 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
2967
2968         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
2969         (gmon_initializer): New function.
2970         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
2971         __gmon_start__ here.  Call it from gmon_initializer() instead.
2972
2973 2002-03-12  H.J. Lu  <hjl@gnu.org>
2974
2975         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
2976         tst-array2, and tst-array3.
2977         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
2978         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
2979         ($(objpfx)tst-array1.out): New target.
2980         ($(objpfx)tst-array2): Likewise.
2981         ($(objpfx)tst-array2.out): Likewise.
2982         ($(objpfx)tst-array3.out): Likewise.
2983         * elf/tst-array1.c: New file.
2984         * elf/tst-array1.exp: Likewise.
2985         * elf/tst-array2.c: Likewise.
2986         * elf/tst-array2dep.c: Likewise.
2987         * elf/tst-array2.exp: Likewise.
2988         * elf/tst-array3.c: Likewise.
2989
2990 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
2991
2992         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
2993         Don't add L->l_addr to array entry values.
2994
2995 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
2996
2997         * string/test-string.h: New file.
2998         * string/test-strlen.c: New file.
2999         * string/test-string.h: New file.
3000         * string/test-strcmp.c: New file.
3001         * string/test-strchr.c: New file.
3002         * string/test-strrchr.c: New file.
3003         * string/test-strcpy.c: New file.
3004         * string/test-stpcpy.c: New file.
3005         * string/test-strncpy.c: New file.
3006         * string/test-stpncpy.c: New file.
3007         * string/test-strpbrk.c: New file.
3008         * string/test-strcspn.c: New file.
3009         * string/test-strspn.c: New file.
3010         * string/test-strcat.c: New file.
3011         * string/test-strncmp.c: New file.
3012         * string/test-memchr.c: New file.
3013         * string/test-memcmp.c: New file.
3014         * string/test-memset.c: New file.
3015         * string/test-memcpy.c: New file.
3016         * string/test-mempcpy.c: New file.
3017         * string/test-memmove.c: New file.
3018         * string/Makefile (strop-tests): New variable.
3019         (tests): Add strop-tests.
3020         (distribute): Add test-string.h.
3021
3022 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
3023
3024         * posix/regcomp.c: Use tabs instead of spaces.
3025         * posix/regexec.c: Likewise.
3026         * posix/regex_internal.h: Likewise.
3027
3028         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
3029
3030 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
3031
3032         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
3033         here.
3034         (regcomp): Don't set can_be_null here.
3035         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
3036         (re_compile_internal): Clear can_be_null, set regs_allocated.
3037
3038         * posix/regcomp.c (re_set_fastmap): New function.
3039         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
3040         COMPLEX_BRACKET check.
3041         * posix/regexec.c (re_search_internal): Optimize searching with
3042         fastmap.  Call re_string_reconstruct even if match_first is
3043         smaller than raw_mbs_idx.
3044
3045 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
3046
3047         * posix/regcomp (free_dfa_content): Use free_state.
3048         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
3049         pointers in case that realloc failed.
3050         (re_node_set_merge): Likewise.
3051         (register_state): Likewise.
3052         (create_newstate_common): Invoke memory release functions in case of
3053         error conditions.
3054         (create_ci_newstate): Likewise.
3055         (create_cd_newstate): Likewise.
3056         (free_state): New function.
3057         * posix/regexec.c (re_search_internal): Invoke memory release
3058         functions in case of error conditions.
3059         (sift_states_backward): Likewise.
3060         (merge_state_array): Likewise.
3061         (add_epsilon_src_nodes): Likewise.
3062         (sub_epsilon_src_nodes): Likewise.
3063         (search_subexp): Likewise.
3064         (sift_states_bkref): Likewise.
3065         (transit_state_sb): Likewise.
3066         (transit_state_mb): Likewise.
3067         (transit_state_bkref_loop): Likewise.
3068         (group_nodes_into_DFAstates): Likewise.
3069         (push_fail_stack): Don't edit pointers in case that realloc failed.
3070         (extend_buffers): Likewise.
3071         (match_ctx_add_entry): Likewise.
3072
3073 2002-11-06  Roland McGrath  <roland@redhat.com>
3074
3075         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
3076         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
3077
3078         * configure.in: Add checks on as and ld for binutils 2.13 or later.
3079         * configure: Regenerated.
3080
3081 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
3082
3083         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
3084         If re_compile_internal failed free fastmap buffer.
3085         (free_dfa_content): Broken out of regfree function.  Frees all dfa
3086         related data.
3087         (regfree): Add free_dfa_content.
3088         (re_compile_internal): If any of the called functions fails free
3089         all dfa related memory.
3090
3091 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
3092
3093         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
3094         warnings from the kernel headers.
3095
3096 2002-11-05  Roland McGrath  <roland@redhat.com>
3097
3098         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
3099         From Johannes Stezenbach <js@convergence.de>.
3100
3101         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
3102         #errlist-compat magic comment to give 123 as size.
3103         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
3104         (libc: GLIBC_2.2): ... here.
3105         (libc: GLIBC_2.3): Likewise.
3106
3107 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
3108
3109         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
3110         which happens at the beginning so that we can unload modules in
3111         __libc_freeres.
3112
3113 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3114
3115         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
3116         under [__USE_MISC || _ASM].
3117
3118         * elf/elf.h: Remove the obsolete SH TLS relocations.
3119
3120 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
3121
3122         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
3123
3124 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3125
3126         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
3127         __NR_pread64 and __NR_pwrite64.
3128         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
3129         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
3130         and __NR_pwrite64.
3131         Revert change to use INLINE_SYSCALL.
3132         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
3133         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
3134         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
3135         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
3136         INLINE_SYSCALL.
3137         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
3138
3139         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
3140         Update clobber list and add a comment about the syscall ABI.
3141
3142         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
3143         s_pwrite64, s_ftruncate, s_truncate): Re-add.
3144
3145 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
3146
3147         * iconv/gconv_dl.c (free_mem): Clear loaded.
3148         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
3149         cleanup if any.
3150
3151 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
3152
3153         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
3154
3155         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
3156         as old code without locking.  _IO_seekoff calls this function after
3157         locking the stream.
3158         * libio/ioseekpos.c: Likewise for _IO_seekpos.
3159         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
3160         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
3161         prototypes.
3162         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
3163         of _IO_seekoff_internal.
3164         (_IO_rewind): Likewise.
3165         * libio/ioftell.c: Likewise.
3166         * libio/ftello.c: Likewise.
3167         * libio/ftello64.c: Likewise.
3168         * libio/iofgetpos.c: Likewise.
3169         * libio/iofgetpos64.c: Likewise.
3170         * libio/oldiofgetpos.c: Likewise.
3171         * libio/oldiofgetpos64.c: Likewise.
3172         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
3173         _IO_seekpos_internal.
3174         * libio/iofsetpos64.c: Likewise.
3175         * libio/oldiofsetpos.c: Likewise.
3176         * libio/oldiofsetpos64.c: Likewise.
3177
3178 2002-11-04  Roland McGrath  <roland@redhat.com>
3179
3180         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
3181         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
3182         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
3183         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
3184         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
3185         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
3186         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
3187         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
3188         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
3189         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
3190         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
3191         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
3192         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
3193         Remove these, no longer used.
3194
3195 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3196
3197         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
3198         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
3199         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
3200         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
3201         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
3202         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
3203         syscall stubs.
3204
3205         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
3206         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
3207         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
3208         and __NR_pread.
3209         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
3210         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
3211         and __NR_pwrite.
3212         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
3213
3214 2002-11-03  Roland McGrath  <roland@redhat.com>
3215
3216         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
3217         `_dl_tls_static_used'.
3218         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
3219         (__libc_setup_tls): Initialize it.  Let the initial value of
3220         _dl_tls_static_size indicate some surplus space in the computed value.
3221         * elf/dl-open.c (_dl_tls_static_size): New variable.
3222         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
3223         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
3224         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
3225         (CHECK_STATIC_TLS): Use it.
3226         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
3227         closed objects occupied a trailing contiguous chunk of static TLS area.
3228
3229 2002-10-18  Bruno Haible  <bruno@clisp.org>
3230
3231         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
3232
3233 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
3234
3235         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
3236         _wide_data->_IO_read_end if adjustment can be made in the current
3237         buffer.
3238
3239         * sysdeps/unix/sysv/linux/fexecve.c: New file.
3240
3241         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
3242         wide oriented streams are used.
3243
3244         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
3245         service hasn't been used [PR libc/4744].
3246
3247         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
3248         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
3249
3250         * manual/examples/dir.c: Don't include <stddef.h>.
3251         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
3252         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
3253
3254 2002-11-02  H.J. Lu  <hjl@gnu.org>
3255
3256         * stdio-common/reg-printf.c: Include <stddef.h>.
3257
3258 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
3259
3260         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
3261
3262         * po/ca.po: Update from translation team.
3263         * po/es.po: Likewise.
3264
3265         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
3266         is defined write out memory map.
3267         * sysdeps/unix/sysv/linux/segfault.c: New file.
3268
3269 2002-11-02  Roland McGrath  <roland@redhat.com>
3270
3271         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
3272         pointers that can alias.
3273         Reported by Daniel Jacobowitz <drow@mvista.com>.
3274
3275         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
3276
3277 2002-11-02  Roland McGrath  <roland@redhat.com>
3278
3279         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
3280         description to be clearer and to say that *RESULT is set to ENTRY.
3281
3282 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
3283
3284         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
3285         dests_ch arrays together.  Alloca or malloc dest_states,
3286         dest_states_word and dest_states_nl arrays together.  Free memory on
3287         error exit.
3288
3289 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
3290
3291         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
3292         and current_saltbits.
3293
3294 2002-11-02  Roland McGrath  <roland@redhat.com>
3295
3296         * stdio-common/reg-printf.c: Include <stdlib.h>.
3297
3298 2002-11-02  H.J. Lu  <hjl@gnu.org>
3299
3300         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
3301         caller to EXTRA instead of execve.
3302
3303 2002-11-01  Roland McGrath  <roland@redhat.com>
3304
3305         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
3306         in place of [!(USE_TLS && HAVE___THREAD)].
3307         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
3308
3309 2002-10-31  Roger Sayle  <roger@eyesopen.com>
3310
3311         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
3312         New macros.
3313         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
3314
3315         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
3316         without defining FP_ROUNDMODE.
3317
3318 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
3319
3320         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
3321         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
3322         declare_symbol.
3323         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
3324         (OLD_SIGLIST_SIZE): Define.
3325         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
3326         (OLD_SIGLIST_SIZE): Define.
3327         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
3328
3329 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
3330
3331         * sysdeps/ia64/strncpy.S: Fix recovery code.
3332
3333 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
3334
3335         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
3336         New macros.
3337         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
3338         text_set_element.
3339         * elf/dl-libc.c (free_mem): Likewise.
3340         * iconv/gconv_conf.c (free_mem): Likewise.
3341         * iconv/gconv_db.c (free_mem): Likewise.
3342         * iconv/gconv_dl.c (free_mem): Likewise.
3343         * iconv/gconv_cache.c (free_mem): Likewise.
3344         * intl/finddomain.c (free_mem): Likewise.
3345         * intl/dcigettext.c (free_mem): Likewise.
3346         * locale/setlocale.c (free_mem): Likewise.
3347         * misc/fstab.c (fstab_free): Likewise.
3348         * nss/nsswitch.c (free_mem): Likewise.
3349         * posix/regcomp.c (free_mem): Likewise.
3350         * resolv/gai_misc.c (free_res): Likewise.
3351         * stdlib/fmtmsg.c (free_mem): Likewise.
3352         * sunrpc/clnt_perr.c (free_mem): Likewise.
3353         * sysdeps/generic/setenv.c (free_mem): Likewise.
3354         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
3355         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
3356         * time/tzset.c (free_mem): Likewise.
3357         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
3358         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
3359         * malloc/set-freeres.c (__libc_freeres): Likewise.
3360
3361         * login/getutent.c: Include stdlib.h instead of stddef.h.
3362         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
3363         (__getutent): Allocate buffer the first time it is run.
3364         * login/getutid.c: Include stdlib.h instead of stddef.h.
3365         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
3366         (__getutid): Allocate buffer the first time it is run.
3367         * login/getutline.c: Include stdlib.h instead of stddef.h.
3368         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
3369         (__getutline): Allocate buffer the first time it is run.
3370         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
3371         (mtrace): Allocate malloc_trace_buffer.
3372         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
3373         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
3374         * string/strerror.c: Include libintl.h and errno.h.
3375         (buf): New variable.
3376         (strerror): Only allocate buffer if actually needed (unknown error).
3377         * time/tzfile.c (transitions): Add libc_freeres_ptr.
3378         (freeres): Remove.
3379
3380 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
3381
3382         * include/libc-symbols.h (libc_freeres_ptr): New macro.
3383         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
3384         symbol_set_define.
3385         (__libc_freeres): Free all pointers in that section.
3386         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
3387         commands when creating .lds script.
3388         (LDSEDCMD-c.so): New variable.
3389         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
3390         (rcmd_af): Use strdup to allocate ahostbuf.
3391         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
3392         (rexec_af): Use strdup to allocate ahostbuf.
3393         * stdio-common/reg-printf.c (printf_funcs): Remove.
3394         (__printf_arginfo_table): Change into printf_arginfo_function **.
3395         Add libc_freeres_ptr.
3396         (__register_printf_function): Allocate __printf_arginfo_table
3397         and __printf_function_table the first time it is called.
3398         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
3399         printf_arginfo_function **.
3400         (parse_one_spec): Add __builtin_expect.
3401         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
3402         (free_mem): Remove.
3403         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
3404         (free_mem): Remove.
3405         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
3406         (string_space, map): Add libc_freeres_ptr.
3407         (free_mem): Remove.
3408         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
3409         (free_mem): Remove.
3410         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
3411         (free_mem): Remove.
3412         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
3413         (buffer): Add libc_freeres_ptr.
3414         (free_mem): Remove for _LIBC.
3415         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
3416         (free_mem): Remove.
3417         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
3418         (free_mem): Remove.
3419         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
3420         (free_mem): Remove.
3421         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
3422         (free_mem): Remove.
3423         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
3424         (free_mem): Remove.
3425         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
3426         (free_mem): Remove.
3427         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
3428         libc_freeres_ptr.
3429         (free_mem): Remove.
3430         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
3431         libc_freeres_ptr.
3432         (free_mem): Remove.
3433
3434 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
3435
3436         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
3437         instead of duplicating the whole function in libc.
3438
3439 2002-10-31  Roland McGrath  <roland@redhat.com>
3440
3441         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
3442         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
3443
3444 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
3445
3446         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
3447         32bit-predefine when creating .new32 list and -U for each
3448         32bit-predefine when creating .new64 list.
3449         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
3450
3451 2002-10-29  Andreas Schwab  <schwab@suse.de>
3452
3453         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
3454         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
3455
3456 2002-10-25  Roland McGrath  <roland@redhat.com>
3457
3458         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
3459         * sysdeps/unix/sysv/linux/configure: Regenerated.
3460
3461         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
3462         _dl_starting_up decl.
3463
3464 2002-10-20  H.J. Lu  <hjl@gnu.org>
3465
3466         * sysdeps/unix/sysv/linux/configure.in: Don't check
3467         /lib/modules/`uname -r`/build/include for kernel headers if
3468         cross compiling.
3469         * sysdeps/unix/sysv/linux/configure: Regenerated.
3470
3471 2002-10-25  Roland McGrath  <roland@redhat.com>
3472
3473         * math/math.h (M_LOG2El): Correct the value.
3474         From Stephen L Moshier <steve@moshier.net>.
3475
3476         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
3477         conditional from __libc_multiple_libcs access.  Remove kludge for weak
3478         symbol access with old compilers we no longer support.
3479         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
3480         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
3481
3482 2002-10-25  Roland McGrath  <roland@redhat.com>
3483
3484         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
3485         implement SV_RESETHAND by translating it to SA_RESETHAND.
3486
3487 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
3488
3489         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
3490         type on ELF64 platforms.
3491
3492 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
3493
3494         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
3495
3496         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
3497
3498 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
3499
3500         * elf/dl-misc.c: Include <sysdep.h>.
3501         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
3502
3503         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
3504         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
3505         (INLINE_SYSCALL): Use that.
3506         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
3507         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
3508         (INLINE_SYSCALL): Use that.
3509         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
3510         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
3511         (INLINE_SYSCALL): Use that.
3512         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
3513         dl-sysdep.h.
3514         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
3515         (__INTERNAL_SYSCALL_STRING): Define.
3516         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
3517         dl-sysdep.h.
3518         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
3519         (__INTERNAL_SYSCALL_STRING): Define.
3520         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
3521         __SYSCALL_STRING to inline_syscall*.
3522         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
3523         New macros.
3524         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
3525         inline_syscall4, inline_syscall5, inline_syscall6): Add string
3526         argument.
3527
3528 2002-10-24  Roland McGrath  <roland@redhat.com>
3529
3530         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
3531         * sysdeps/unix/sysv/linux/init-first.c: Not here.
3532         * sysdeps/powerpc/elf/libc-start.c: Or here.
3533         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
3534         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
3535         * sysdeps/unix/sysv/aix/init-first.c: Or here.
3536         * sysdeps/generic/libc-start.c: Or here.
3537         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
3538         access with [! SHARED].
3539         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
3540
3541         * libio/bug-wfflush.c: New file.
3542         * libio/Makefile (tests): Add bug-wfflush.
3543
3544 2002-10-23  Roland McGrath  <roland@redhat.com>
3545
3546         * stdio-common/tst-fphex.c: New file.
3547         * stdio-common/Makefile (tests): Add tst-fphex.
3548         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
3549         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
3550         chars always before the value digits.
3551         Reported by James Antill <james.antill@redhat.com>.
3552
3553 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
3554
3555         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
3556         (free_mem): New function.
3557         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
3558         if not cross compiling.
3559         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
3560         (bug-regex14-ENV): Set.
3561         (bug-regex14-mem): New target.
3562         * posix/bug-regex14.c: New file.
3563
3564 2002-10-23  Roland McGrath  <roland@redhat.com>
3565
3566         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
3567         target, so we don't touch it when the link fails.
3568
3569         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
3570         Check for the result overflowing off_t and fail with EOVERFLOW.
3571         * libio/ioftell.c (_IO_ftell): Likewise.
3572         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
3573
3574         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
3575         use a temporary timeval on the stack for gettimeofday and copy it.
3576         * login/logout.c (logout): Likewise.
3577         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
3578
3579         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
3580         Use __SWORD_TYPE instead of int for member types.
3581         (struct statfs64): Likewise.
3582         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
3583         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
3584         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
3585         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
3586         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
3587
3588         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
3589         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
3590         (ST_NODIRATIME): Restore fixed value of 2048.
3591         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
3592         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
3593
3594         Rearranged <bits/types.h> definitions to reduce duplication.
3595         * sysdeps/generic/bits/types.h: Rewritten, using macros from
3596         <bits/wordsize.h> and new header <bits/typesizes.h>.
3597         * posix/Makefile (headers): Add bits/typesizes.h here.
3598         * sysdeps/generic/bits/typesizes.h: New file.
3599         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
3600         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
3601         * sysdeps/mach/hurd/bits/typesizes.h: New file.
3602         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
3603         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
3604         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
3605         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
3606         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
3607         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
3608         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
3609         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
3610         <bits/pthreadtypes.h> here, not in <bits/types.h>.
3611         * signal/signal.h: Likewise.
3612
3613         * streams/stropts.h: Include <bits/xtitypes.h>.
3614         * streams/Makefile (headers): Add bits/xtitypes.h here.
3615         * sysdeps/generic/bits/xtitypes.h: New file.
3616         * sysdeps/s390/bits/xtitypes.h: New file.
3617         * sysdeps/ia64/bits/xtitypes.h: New file.
3618         * sysdeps/x86_64/bits/xtitypes.h: New file.
3619
3620         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
3621         * sysdeps/generic/bits/ipctypes.h: New file.
3622         * sysdeps/mips/bits/ipctypes.h: New file.
3623         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
3624         * sysdeps/gnu/bits/msq.h: Likewise.
3625         * sysvipc/sys/ipc.h: Likewise.
3626
3627 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
3628
3629         * elf/dl-load.c (struct filebuf): For buf element to have the
3630         alignment of ElfXX_Ehdr since this is what will be stored in it.
3631
3632 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
3633
3634         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
3635         into pointer to locrec_offset.
3636         (add_locale_to_archive): Adjust callers.  Free normalized_name right
3637         before returning, not immediately after add_locale, pass it to
3638         add_alias if not NULL instead of name.  Rename second normalized_name
3639         occurence to nnormalized_codeset_name.
3640
3641         * locale/programs/locarchive.c (enlarge_archive): Make sure
3642         string_size is always a multiple of 4.
3643         Reported by Andreas Schwab <schwab@suse.de>.
3644
3645 2002-10-21  Andreas Schwab  <schwab@suse.de>
3646
3647         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
3648         caller to EXTRA instead of execve, since the latter has a
3649         higher-priority implementation in linuxthreads.
3650
3651 2002-10-21  Roland McGrath  <roland@redhat.com>
3652
3653         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
3654         slotinfo list's len member to the proper size, not just 1.
3655         Initialize static_map.l_tls_initimage.
3656
3657         * elf/dl-open.c (dl_open_worker): Fix loop searching for
3658         dtv_slotinfo_list element containing new modules' l_tls_modid.
3659
3660         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
3661         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
3662         * elf/Makefile (tests): Add tst-tls9.
3663         (tests-static): Add tst-tls9-static.
3664         (tst-tls9-static-ENV): New variable.
3665         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
3666
3667         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
3668         modids used by partially loaded modules being closed can't be known.
3669
3670 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
3671
3672         * posix/Makefile: Add a test case for the bug reported by Aharon
3673         Robbins <arnold@skeeve.com>.
3674         * posix/bug-regex13.c: New file.
3675         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
3676
3677 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
3678
3679         * csu/gmon-start.c: Pretty printing.
3680
3681 2002-10-19  Art Haas  <ahaas@neosoft.com>
3682
3683         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
3684         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
3685         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
3686         * configure: Regenerated.
3687
3688 2002-10-19  Roland McGrath  <roland@redhat.com>
3689
3690         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
3691         and then set $subdirs directly, because the new Autoconf breaks
3692         compatibility in every way imaginable and insists on whining
3693         about usage that worked since the dawn of time.
3694         * configure: Regenerated.
3695
3696         * configure: Regenerated (using Autoconf 2.54).
3697         * sysdeps/alpha/elf/configure: Likewise.
3698         * sysdeps/generic/configure: Likewise.
3699         * sysdeps/i386/elf/configure: Likewise.
3700         * sysdeps/ia64/elf/configure: Likewise.
3701         * sysdeps/mach/hurd/configure: Likewise.
3702         * sysdeps/mach/configure: Likewise.
3703         * sysdeps/unix/configure: Likewise.
3704         * sysdeps/unix/common/configure: Likewise.
3705         * sysdeps/unix/sysv/aix/configure: Likewise.
3706         * sysdeps/unix/sysv/linux/configure: Likewise.
3707         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
3708         * sysdeps/x86_64/elf/configure: Likewise.
3709
3710         * config.make.in: Nix completely-soft nonsense.
3711         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
3712         of machine directories instead of fpu subdirectory.
3713         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
3714         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
3715         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
3716         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
3717         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
3718         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
3719         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
3720         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
3721         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
3722         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
3723         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
3724         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
3725         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
3726         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
3727         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
3728         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
3729         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
3730         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
3731         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
3732         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
3733         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
3734         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
3735         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
3736         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
3737         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
3738         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
3739         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
3740         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
3741         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
3742         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
3743         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
3744         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
3745         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
3746         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
3747         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
3748         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
3749         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
3750         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
3751         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
3752         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
3753
3754 2002-10-19  Bruno Haible  <bruno@clisp.org>
3755
3756         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
3757
3758 2002-10-18  Roland McGrath  <roland@redhat.com>
3759
3760         * io/Makefile (routines): Add lchmod.
3761         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
3762         * sysdeps/generic/lchmod.c: New file.
3763         * sysdeps/mach/hurd/lchmod.c: New file.
3764         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
3765
3766 2002-10-18  Art Haas  <ahaas@neosoft.com>
3767
3768         * configure.in: Remove remaining AC_FD_CC macros, and replace
3769         AC_FD_MSG with AS_MESSAGE_FD.
3770
3771 2002-10-18  Roland McGrath  <roland@redhat.com>
3772
3773         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
3774         typos: VALUE -> FINALADDR.
3775
3776         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
3777         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
3778         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
3779         (inline_syscall6): Move these macros ...
3780         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
3781
3782         * configure.in (libc_link_dests, libc_link_sources): Remove these
3783         variables and the AC_LINK_FILES call.
3784
3785         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
3786         change to put new symbols here instead of in GLIBC_2.2.
3787         * sysdeps/powerpc/Subdirs: Move this file ...
3788         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
3789
3790 2002-10-07  Roland McGrath  <roland@redhat.com>
3791
3792         * sysdeps/generic/bits/time.h: Replaced with contents of the
3793         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
3794         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
3795         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
3796         macros is ok even for architectures that don't now implement them.
3797         * sysdeps/mach/hurd/bits/time.h: File removed.
3798         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
3799         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
3800         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
3801         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
3802         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
3803
3804 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
3805
3806         * configure.in: Replace obsolete AC_OUTPUT syntax with
3807         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
3808
3809         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
3810         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
3811
3812         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
3813         * sysdeps/alpha/elf/configure.in: Likewise.
3814         * sysdeps/i386/elf/configure.in: Likewise.
3815         * sysdeps/mach/hurd/configure.in: Likewise.
3816         * sysdeps/x86_64/elf/configure.in: Likewise.
3817
3818         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
3819
3820         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
3821         * sysdeps/generic/configure.in: Likewise.
3822         * sysdeps/i386/elf/configure.in: Likewise.
3823         * sysdeps/ia64/elf/configure.in: Likewise.
3824         * sysdeps/mach/configure.in: Likewise.
3825         * sysdeps/mach/hurd/configure.in: Likewise.
3826         * sysdeps/unix/configure.in: Likewise.
3827         * sysdeps/unix/common/configure.in: Likewise.
3828         * sysdeps/unix/sysv/aix/configure.in: Likewise.
3829         * sysdeps/unix/sysv/linux/configure.in: Likewise.
3830         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
3831         * sysdeps/x86_64/elf/configure.in: Likewise.
3832
3833         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
3834         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
3835         that it's obvious when extra autoconf machinery is being dragged in.
3836
3837 2002-10-18  Roland McGrath  <roland@redhat.com>
3838
3839         * configure.in: Remove bogus echo included in
3840         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
3841         * configure: Regenerated.
3842
3843 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
3844
3845         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
3846         (statfs_filesize_max): New function.
3847         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
3848         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
3849         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
3850         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
3851         statfs_filesize_max.
3852         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
3853         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
3854         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
3855
3856 2002-10-17  Roland McGrath  <roland@redhat.com>
3857
3858         * configure.in (MIG): Just AC_SUBST it here.
3859         * configure: Regenerated.
3860         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
3861         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
3862         * sysdeps/mach/configure: Regenerated.
3863
3864         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
3865         and AC_PROVIDE([_AS_CR_PREPARE]).
3866
3867         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
3868         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
3869
3870         * elf/dl-support.c: Move _dl_tls_* variables to ...
3871         * sysdeps/generic/libc-tls.c: ... here.
3872
3873         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
3874         allow IDX to be one past the current last slotinfo entry.
3875         (_dl_close): Pass IMAP->l_init_called for that parameter.
3876
3877 2002-10-07  Andreas Schwab  <schwab@suse.de>
3878
3879         * aclocal.m4: Fix for autoconf 2.53.
3880         * configure.in: Likewise.  Require autoconf 2.53.
3881
3882 2002-10-08  Richard Henderson  <rth@redhat.com>
3883
3884         * soft-fp/op-4.h: Handle carry correctly in
3885         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
3886         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
3887         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
3888
3889 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
3890
3891         * configure.in: Compute completely-soft.
3892         * config.make.in: Make completely-soft available to sub-makes.
3893         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
3894         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
3895         fe_nomask to libm-support.
3896         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
3897         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
3898         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
3899         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
3900         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
3901         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
3902         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
3903         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
3904         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
3905         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
3906         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
3907         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
3908         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
3909         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
3910         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
3911         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
3912         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
3913         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
3914         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
3915         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
3916         __sim_round_mode.
3917         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
3918         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
3919         FP_HANDLE_EXCEPTIONS.
3920         Define FP_ROUNDMODE.
3921         Redefine FP_* macros to correspond to the FE_* bit positions.
3922         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
3923         Define externs for __sim_exceptions, __sim_disabled_exceptions,
3924         __sim_round_mode, __simulate_exceptions.
3925         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
3926         * sysdeps/powerpc/bits/fenv.h: ...to here.
3927
3928 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
3929
3930         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
3931         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
3932         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
3933         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
3934         __builtin_expect.
3935
3936 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
3937
3938         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
3939         __libc_res_nsend): New prototypes.
3940         * resolv/res_query.c (QUERYSIZE): Define.
3941         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
3942         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
3943         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
3944         res_nsend, pass answerp.
3945         (res_nquery): Changed into wrapper around __libc_res_nquery.
3946         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
3947         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
3948         instead of the non-__libc_ variants, pass them answerp.
3949         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
3950         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
3951         Added answerp argument.  Call __libc_res_nquery instead of
3952         res_nquery, pass answerp.
3953         (res_nquerydomain): Changed into wrapper around
3954         __libc_res_nquerydomain.
3955         * resolv/res_send.c: Include sys/ioctl.h.
3956         (MAXPACKET): Define.
3957         (send_vc): Change arguments.  Reallocate answer buffer if it is
3958         too small.
3959         (send_dg): Likewise.
3960         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
3961         Reallocate answer buffer if it is too small and hooks are in use.
3962         Adjust calls to send_vc and send_dg.
3963         (res_nsend): Changed into wrapper around __libc_res_nsend.
3964         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
3965         just 1K answer buffer on the stack, use __libc_res_nsearch instead
3966         of res_nsearch.
3967         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
3968         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
3969         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
3970         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
3971         (gethostbyaddr): Similarly with __libc_res_nquery.
3972         * resolv/Versions (libresolv): Export __libc_res_nquery and
3973         __libc_res_nsearch at GLIBC_PRIVATE.
3974
3975 2002-10-17  Roland McGrath  <roland@redhat.com>
3976
3977         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
3978         * configure: Regenerated.
3979
3980         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
3981         before performing the reloc, not after.
3982         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
3983
3984 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
3985
3986         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
3987         * locale/programs/linereader.c (lr_open): Likewise.
3988         * locale/programs/charmap-dir.c (charmap_open): Likewise.
3989         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
3990
3991 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
3992
3993         * posix/bug-regex11.c: Add a test case for the bug reported by
3994         Paolo Bonzini <bonzini@gnu.org>.
3995         * posix/regexec.c (sift_states_bkref): Use correct destination of
3996         the back reference.
3997
3998 2002-10-17  Roland McGrath  <roland@redhat.com>
3999
4000         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
4001         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
4002         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
4003         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
4004         Call it after performing TPOFF relocs.
4005         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
4006         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
4007         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
4008
4009         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
4010         when closing a partially-initialized object.
4011
4012         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
4013         instead of _dl_fatal_printf when we see PT_TLS.
4014
4015         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
4016         instead of $(libof-$<).
4017
4018 2002-10-16  Roland McGrath  <roland@redhat.com>
4019
4020         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
4021         instead of += to append, to be sure $(lib) gets expanded at defn time.
4022         (libof-$(cpp-src)): New variable, define this instead.
4023         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
4024         (lib): Don't use override.
4025         (CPPFLAGS-$(lib)): New variable, put -D's here.
4026         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
4027         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
4028         LIB found by $(libof-*) for basename, target, or source.
4029         * Makerules (CPPFLAGS-nonlib): New variable.
4030         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
4031         * locale/Makefile (lib): Likewise.
4032         * sunrpc/Makefile (lib): Likewise.
4033
4034         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
4035         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
4036         * sysdeps/unix/sysv/linux/pathconf.h: New file.
4037         (statfs_link_max): New function, guts from fpathconf.c.
4038         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
4039         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
4040         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
4041         to use the linux/pathconf.c code by #include rather than duplication.
4042         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
4043
4044 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
4045
4046         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
4047         Use __libc_errno only for libc itself.
4048
4049 2002-10-16  Andreas Jaeger  <aj@suse.de>
4050
4051         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
4052
4053 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
4054
4055         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
4056         Use __libc_errno only for libc itself.
4057
4058 2002-10-15  Roland McGrath  <roland@redhat.com>
4059             Jakub Jelinek  <jakub@redhat.com>
4060
4061         * sysdeps/unix/sysv/linux/Makefile
4062         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
4063         sparc/Makefile to produce a bi-arch file as needed.
4064         That's now parameterized by the variable $(64bit-predefine).
4065         Use LC_ALL=C for `comm' commands in that rule.
4066         No longer conditional on [$(no_syscall_list_h)].
4067         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
4068         (64bit-predefine): New variable.
4069         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
4070         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
4071         * sysdeps/unix/sysv/linux/powerpc/Makefile
4072         (64bit-predefine): New variable.
4073
4074 2002-10-15  Roland McGrath  <roland@redhat.com>
4075
4076         * sysdeps/unix/sysv/linux/Makefile
4077         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
4078
4079         * login/utmp-private.h: Declare __libc_utmp_lock.
4080         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
4081         and call __libc_utmp_jump_table functions directly, instead of using
4082         __setutent et al.
4083
4084         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
4085         * sysdeps/unix/sysv/linux/configure: Regenerated.
4086
4087         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
4088         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
4089         Use int32_t for ll_time.
4090         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
4091         Use int32_t instead of long int for ut_session.
4092         Use an anonymous struct with 32-bit fields for ut_tv.
4093         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
4094         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
4095         here as in utmp.h for `struct utmp'.
4096         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
4097         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
4098         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
4099         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
4100         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
4101         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
4102
4103         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
4104         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
4105         All the following files were identical or equivalent to it.
4106         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
4107         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
4108         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
4109         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
4110         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
4111         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
4112         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
4113         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
4114         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
4115         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
4116
4117         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
4118         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
4119         Other than the previously incorrect sign of msg_iovlen, this is a
4120         no-op on 32-bit platforms.  On 64-bit platfor