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