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