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