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