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