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