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