c1424edcf680046d40d8f541592895ef1d52661d
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2002-04-06  Ulrich Drepper  <drepper@redhat.com>
2
3         * iconvdata/tcvn5712-1.c (MAX_NEEDED_INPUT): Define for from
4         direction.  Reported by H . J . Lu <hjl@lucon.org>.
5
6 2002-04-05  Ulrich Drepper  <drepper@redhat.com>
7
8         * intl/tst-gettext.sh: Set GCONV_PATH and LOCPATH to values for the
9         test just before the test runs.
10         * intl/tst-translit.sh: Likewise.
11         * intl/tst-codeset.sh: Likewise.
12
13         * timezone/zic.c: Update from tzcode2002c.
14         * timezone/asia: Update from tzdata2002c.
15         * timezone/backward: Likewise.
16         * timezone/europe: Likewise.
17         * timezone/northamerica: Likewise.
18         * timezone/northamerica: Likewise.
19         * timezone/northamerica: Likewise.
20         * timezone/southamerica: Likewise.
21         * timezone/zone.tab: Likewise.
22
23 2002-03-23  Jakub Jelinek  <jakub@redhat.com>
24
25         * sysdeps/generic/brk.c (__curbrk): Declare.
26         * sysdeps/generic/dl-brk.c: Add attribute_hidden to __curbrk.
27         * sysdeps/generic/dl-sbrk.c: Likewise.
28         * sysdeps/unix/arm/dl-brk.S: New file.
29         * sysdeps/unix/bsd/hp/m68k/dl-brk.S: New file.
30         * sysdeps/unix/bsd/osf/alpha/dl-brk.S: New file.
31         * sysdeps/unix/bsd/sun/m68k/dl-brk.S: New file.
32         * sysdeps/unix/bsd/vax/dl-brk.S: New file.
33         * sysdeps/unix/i386/dl-brk.S: New file.
34         * sysdeps/unix/mips/dl-brk.S: New file.
35         * sysdeps/unix/sparc/dl-brk.S: New file.
36         * sysdeps/unix/sysv/linux/alpha/dl-brk.S: New file.
37         * sysdeps/unix/sysv/linux/ia64/dl-brk.S: New file.
38         * sysdeps/unix/sysv/linux/powerpc/dl-brk.S: New file.
39         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-brk.S: New file.
40
41 2002-04-03  Andreas Schwab  <schwab@suse.de>
42
43         * Makefile (headers): Add gnu/lib-names.h here instead of
44         install-others.
45         ($(inst_includedir)/gnu/lib-names.h): Remove explicit
46         installation rule.
47         (install-headers): Add dependency on install-headers-nosubdir.
48         * stdio-common/Makefile (headers): Add bits/stdio_lim.h here
49         instead of install-others.
50         ($(inst_includedir)/bits/stdio_lim.h): Remove explicit
51         installation rule.
52
53 2002-04-05  Ulrich Drepper  <drepper@redhat.com>
54
55         * manual/users.tex (Enable/Disable Setuid): Fix typo in example.
56         Reported by Sam Roberts <sroberts@uniserve.com>.
57
58 2002-04-03  Jakub Jelinek  <jakub@redhat.com>
59
60         * elf/do-rel.h (elf_dynamic_do_rel): Skip relative relocs if
61         l_addr == 0 and ELF_MACHINE_REL_RELATIVE.
62         * sysdeps/alpha/dl-machine.h (ELF_MACHINE_REL_RELATIVE): Define.
63         * sysdeps/ia64/dl-machine.h (ELF_MACHINE_REL_RELATIVE): Define.
64
65 2002-04-03  David Mosberger  <davidm@hpl.hp.com>
66
67         * sysdeps/ia64/dl-machine.h (TRAMPOLINE_TEMPLATE): Add unwind info.
68         (RTLD_START): Ditto.
69         (__ia64_init_bootstrap_fdesc_table): Insert stop bit to avoid RAW
70         dependency violation.
71
72 2002-04-05  Jakub Jelinek  <jakub@redhat.com>
73
74         * time/mktime.c (__mktime_internal): Move check for year < 70 below
75         all variable declarations.
76
77 2002-04-04  Andreas Schwab  <schwab@suse.de>
78
79         * sysdeps/unix/sysv/linux/ia64/pipe.S: Don't overwrite r8 on error.
80
81 2002-04-04  Andreas Jaeger  <aj@suse.de>
82
83         * sysdeps/x86_64/fpu/e_sqrt.c: New file.
84         * sysdeps/x86_64/fpu/e_sqrtf.c: New file.
85
86         * sysdeps/x86_64/fpu/s_fabs.c: New file.
87         * sysdeps/x86_64/fpu/s_fabsf.c: New file.
88         * sysdeps/x86_64/fpu/s_fabsl.c: New file.
89
90         * sysdeps/unix/sysv/linux/x86_64/time.S: New file.
91
92         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: New file.
93
94         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.c: Removed.
95         * sysdeps/unix/sysv/linux/x86_64/time.c: Removed.
96
97         * configure.in: Handle all mips entries the same.
98
99         * sysdeps/mips/dec/bits/endian.h: Removed since arch is not supported.
100         * sysdeps/mips/mips3/*: Likewise.
101         * sysdeps/mips/p40/bits/endian.h: Likewise.
102
103 2002-04-04  Ulrich Drepper  <drepper@redhat.com>
104
105         * misc/dirname.c (dirname): Ignore trailing slashes at end of
106         non-null result [PR libc/2600].
107
108         * misc/tst-dirname.c: Add more tests.
109
110 2002-04-03  Ulrich Drepper  <drepper@redhat.com>
111
112         * locale/programs/charmap.c (charmap_read): If the charmap doesn't
113         define a code_set_name provide one based on the filename.
114
115         * malloc/hooks.c: Define weak_variable correctly for _LIBC.
116
117 2001-12-28  Andreas Jaeger  <aj@suse.de>
118
119         * time/mktime.c (__mktime_internal): Check for year < 70
120         [PR libc/2738].
121
122 2002-04-03  Andreas Jaeger  <aj@suse.de>
123
124         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Fix arguments for
125         shmat.
126         Reported by Andi Kleen <ak@suse.de>.
127
128 2002-04-03  Ulrich Drepper  <drepper@redhat.com>
129
130         * sysdeps/generic/w_lgamma.c: Initialized local_signgam.
131         * sysdeps/generic/w_lgammaf.c: Likewise.
132         * sysdeps/generic/w_lgammal.c: Likewise [PR libc/2854].
133
134         * debug/catchsegv.sh (exval): Quote [ in pattern [PR libc/2902].
135         Adjust for new output format of the backtrace functions.
136
137         * misc/syslog.c (vsyslog): Only use cleanup handler if
138         _LIBC_REENTRANT is defined [PR libc/2924].
139
140         * libio/Makefile (tests): Add bug-ungetwc2.
141         * libio/bug-ungetwc2.c: New file.
142
143         * manual/install.texi: Typographical and grammatical cleanup.
144         Patch by Dennis Grace <dgrace@us.ibm.com>.
145
146         * sunrpc/rpc_svcout.c (write_real_program): Write "result, "
147         parameter if mtflag.  Patch by <jeongyun@innovay.com>.
148
149         * sunrpc/rpc_svcout.c (printif): Remove third parameter.  It was
150         always "&".  Adjust callers.
151         Add "_" prefix to several generated definitions.
152         Patch by paul@serice.net [PR libc/3158].
153
154 2002-04-02  Ulrich Drepper  <drepper@redhat.com>
155
156         * sysdeps/unix/sysv/linux/arm/dl-procinfo.c: Completely specify
157         size of _dl_arm_cap_flags.
158         Patch by enrico.scholz@informatik.tu-chemnitz.de [PR libc/3155].
159
160         * sysdeps/unix/sysv/linux/arm/dl-procinfo.h (_DL_HWCAP_COUNT):
161         Define as 8.
162
163 2002-03-22  H.J. Lu  <hjl@gnu.org>
164
165         * scripts/firstversions.awk: Check the first version.
166
167 2002-04-02  Ulrich Drepper  <drepper@redhat.com>
168
169         * elf/dl-deps.c (_dl_map_object_deps): The sorting of the
170         dependencies must be stable to work correctly.
171         Reported by martin.lubich@datacon.at.
172
173         * libio/bug-ungetwc1.c: New file.
174         * libio/Makefile (tests): Add bug-ungetwc1.
175
176         * libio/fileops.c (_IO_new_file_close_it): Only call _IO_do_flush
177         if stream was last used for writing.
178
179         * elf/do-lookup.h (do_lookup): 2 is the first user-defined version
180         number [PR libc/3111].
181
182         * libio/iofclose.c (_IO_new_fclose): Move freeing of backup buffer
183         to ...
184         * libio/fileops.c (_IO_new_file_close_it): ...here [PR libc/3190].
185
186 2002-04-02  Jakub Jelinek  <jakub@redhat.com>
187
188         * inet/ether_ntoh.c (__nss_ethers_lookup): Add internal_function.
189         * inet/ether_hton.c (__nss_ethers_lookup): Likewise.
190         * inet/getnetgrent_r.c (__nss_netgroup_lookup): Likewise.
191         * sunrpc/netname.c (__nss_publickey_lookup): Likewise.
192         * sunrpc/publickey.c (__nss_publickey_lookup): Likewise.
193
194 2002-03-30  Jakub Jelinek  <jakub@redhat.com>
195
196         * elf/dynamic-link.h (elf_get_dynamic_info): Don't abort on unknown
197         dynamic tags.
198
199 2002-03-29  Jakub Jelinek  <jakub@redhat.com>
200
201         * sysdeps/i386/fpu/s_fabs.S: New file.
202         * sysdeps/i386/fpu/s_fabsf.S: New file.
203         * sysdeps/i386/fpu/s_fabsl.S: New file.
204         * sysdeps/sparc/sparc64/fpu/s_fabs.c: New file.
205         * sysdeps/sparc/sparc64/fpu/s_fabsf.c: New file.
206         * sysdeps/sparc/sparc64/fpu/s_fabsl.c: New file.
207
208 2002-04-02  Ulrich Drepper  <drepper@redhat.com>
209
210         * rt/tst-shm.c (do_test): Add one more test for size of shared
211         memory object.
212
213 2002-03-29  Wolfram Gloger  <wg@malloc.de>
214
215         * malloc/malloc.c: Add short description and prototypes for
216         malloc_get_state, malloc_set_state and posix_memalign, for
217         consistency and to avoid warnings with -Wstrict-prototypes.
218         Reported by Andreas Jaeger <aj@suse.de>.
219
220 2002-04-02  Ulrich Drepper  <drepper@redhat.com>
221
222         * po/gl.po: Update from translation team.
223
224 2002-03-31  Roland McGrath  <roland@frob.com>
225
226         * hurd/hurdselect.c (_hurd_select): Fix
227         MACH_MSG_TYPE_INTEGER_T -> integer_t in sizeof.
228         Use a union rather than casts to compare mach_msg_type_t as int.
229
230 2002-03-25  Roland McGrath  <roland@frob.com>
231
232         * hurd/hurdchdir.c (_hurd_change_directory_port_from_name): Don't
233         check off the end of NAME when it's shorter than 2 chars.
234         Reported by Ognyan Kulev <ogi@fmi.uni-sofia.bg>.
235
236 2002-03-17  Roland McGrath  <roland@frob.com>
237
238         * sysdeps/mach/hurd/i386/sys/io.h: New file.
239         * sysdeps/mach/hurd/i386/ioperm.c: New file.
240         * sysdeps/mach/hurd/i386/Dist: Add them.
241         * sysdeps/mach/hurd/i386/Versions
242         (libc: GLIBC_2.2.6): New set, add ioperm.
243         * sysdeps/mach/configure.in: New check to set HAVE_I386_IO_PERM_MODIFY.
244         (mach_interface_list): Check for mach_i386.defs.
245         * config.h.in (HAVE_I386_IO_PERM_MODIFY): #undef it.
246         * sysdeps/mach/configure: Regenerated.
247
248 2002-03-22  Ulrich Drepper  <drepper@redhat.com>
249
250         * po/fr.po: Update from translation team.
251
252 2002-03-21  Martin Schwidefsky  <schwidefsky@de.ibm.com>
253
254         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Remove
255         getpriority from syscalls list.
256
257 2002-03-28  Andreas Jaeger  <aj@suse.de>
258
259         * sysdeps/unix/sysv/linux/x86_64/swapcontext.S: New file.
260         * sysdeps/unix/sysv/linux/x86_64/getcontext.S: New file.
261         * sysdeps/unix/sysv/linux/x86_64/setcontext.S: New file.
262         * sysdeps/unix/sysv/linux/x86_64/ucontext_i.h: New file.
263
264 2002-03-27  Andreas Jaeger  <aj@suse.de>
265
266         * sysdeps/unix/sysv/linux/x86_64/bits/sigcontext.h (struct
267         sigcontext): Follow further kernel change.
268
269         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h: Follow further
270         kernel change.
271
272         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (GET_STACK):
273         Change for struct sigcontext change.
274
275         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
276         Follow changes in struct sigcontext.
277
278         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Remove ptrace
279         sysycall, use wrapper instead.
280
281 2002-03-26  Andreas Jaeger  <aj@suse.de>
282
283         * sysdeps/i386/i486/bits/string.h (__memcpy_by4): Describe memory
284         read and write accesses as detailed as possible.
285         (__memcpy_by2): Likewise.
286         (__memcpy_g): Likewise.
287         (memmove): Likewise.
288         (memcmp): Likewise.
289         (__memset_ccn_by4): Likewise.
290         (__memset_ccn_by2): Likewise.
291         (__memset_gcn_by4): Likewise.
292         (__memset_gcn_by2): Likewise.
293         (memchr): Likewise.
294         (__memrchr): Likewise.
295         (rawmemchr): Likewise.
296         (__strlen_g): Likewise.
297         (__strcpy_g): Likewise.
298         (__mempcpy_by4): Likewise.
299         (__mempcpy_by2): Likewise.
300         (__mempcpy_byn): Likewise.
301         (__stpcpy_g): Likewise.
302         (__strncpy_by4): Likewise.
303         (__strncpy_by2): Likewise.
304         (__strncpy_byn): Likewise.
305         (__strncpy_gg): Likewise.
306         (__strcat_c): Likewise.
307         (__strcat_g): Likewise.
308         (__strncat_g): Likewise.
309         (__strcmp_gg): Likewise.
310         (__strncmp_g): Likewise.
311         (__strchr_c): Likewise.
312         (__strchr_g): Likewise.
313         (__strchrnul_c): Likewise.
314         (__strchrnul_g): Likewise.
315         (__strrchr_c): Likewise.
316         (__strrchr_g): Likewise.
317         (__strrchr_c): Likewise.
318         (__strrchr_g): Likewise.
319         (__strcspn_c1): Likewise.
320         (__strcspn_cg): Likewise.
321         (__strcspn_g): Likewise.
322         (__strcspn_g): Likewise.
323         (__strspn_c1): Likewise.
324         (__strspn_cg): Likewise.
325         (__strspn_g): Likewise.
326         (__strspn_g): Likewise.
327         (__strpbrk_cg): Likewise.
328         (__strpbrk_g): Likewise.
329         (__strstr_cg): Likewise.
330         (__strstr_g): Likewise.
331
332         * sysdeps/unix/sysv/linux/x86_64/sys/reg.h: Fix typo.  Reported by
333         Michal Ludvig <mludvig@suse.cz>.
334
335         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h: Add 32-bit
336         compatibilty, adjust for kernel changes.
337
338         * sysdeps/unix/sysv/linux/x86_64/bits/sigcontext.h (struct
339         sigcontext): Adjust for kernel changes.
340
341 2002-03-25  Andreas Jaeger  <aj@suse.de>
342
343         * iconv/gconv_simple.c (ucs4le_internal_loop_single): Handle
344         little endian.
345         Reported by Artur Zaprzala <zybi@talex.com.pl>.
346
347 2002-03-24  Andreas Jaeger  <aj@suse.de>
348
349         * manual/memory.texi (Aligned Memory Blocks): Fix typo.
350
351         * stdio-common/tst-fdopen.c (main): Remove unused variable.
352
353         * iconv/tst-iconv3.c (main): Use correct printf strings.
354
355 2002-03-18  Roland McGrath  <roland@frob.com>
356
357         * sysdeps/unix/bsd/bsd4.4/bits/socket.h (struct cmsgcred): New type.
358         (CMGROUP_MAX): New macro.
359
360 2002-03-23  Roland McGrath  <roland@frob.com>
361
362         * sysdeps/posix/shm_open.c (SHMDIR): /var/run/shm -> /dev/shm
363         * sysdeps/posix/shm_unlink.c: Likewise.
364
365 2002-03-22  Roland McGrath  <roland@frob.com>
366
367         * shlib-versions [USE_IN_LIBIO] (.*-.*-gnu-gnu.*): Make 2.2.6 default.
368         * sysdeps/mach/hurd/configure.in: Default oldest ABI is 2.2.6
369         under --enable-libio.
370         * sysdeps/mach/hurd/configure: Regenerated.
371
372 2002-03-23  Roland McGrath  <roland@frob.com>
373
374         * sysdeps/mach/hurd/i386/Makefile
375         (sysdep_routines, shared-only-routines): Don't add framestate,
376         reverting 2001-10-02 change.
377         * sysdeps/unix/sysv/linux/arm/Makefile: Likewise.
378         * sysdeps/unix/sysv/linux/alpha/Makefile: Likewise.
379         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
380         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
381         * sysdeps/unix/sysv/linux/mips/Makefile: Likewise.
382         * sysdeps/unix/sysv/linux/powerpc/Makefile: Likewise.
383         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
384         * sysdeps/unix/sysv/linux/sparc/Makefile: Likewise.
385         * sysdeps/generic/Makefile (sysdep_routines, shared-only-routines):
386         Do it here instead, only if [$(unwind-find-fde) = yes].
387
388 2002-03-23  Andreas Jaeger  <aj@suse.de>
389
390         * signal/signal.h: Fix typo. Patch by Steve Kemp
391         <skx@tardis.ed.ac.uk>.
392
393 2002-03-22  Andreas Jaeger  <aj@suse.de>
394
395         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Add getresgid and
396         getresuid.
397
398         * sysdeps/unix/sysv/linux/x86_64/bits/sigcontext.h (struct
399         _fpstate): Rename fwd to ftw, use _fpxreg and _xmmreg.
400         * sysdeps/unix/sysv/linux/x86_64/sys/user.h (struct
401         user_fpregs_struct): Rename fwd.
402
403         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
404         Follow sigcontext changes.
405
406 2002-03-22  Andreas Jaeger  <aj@suse.de>
407
408         * sysdeps/mips/bits/nan.h: New file.  Copy from generic one with
409         changes for NaNs on MIPS.
410         Patch by Hartvig Ekner <hartvige@mips.com>.
411
412 2002-03-21  Ulrich Drepper  <drepper@redhat.com>
413
414         * nscd/grpcache.c (addgrbyname): Improve buffer allocate with alloca.
415         Use realloc if too large.
416         (addgrbyid): Likewise.
417         * nscd/hstcache.c (addhstbyname): Likewise.
418         (addhstbyaddr): Likewise.
419         (addhstbynamev6): Likewise.
420         (addhstbyaddrv6): Likewise.
421         * nscd/pwdcache.c (addpwbyname): Likewise.
422         (addpwbyuid): Likewise.
423
424 2002-03-21  Andreas Jaeger  <aj@suse.de>
425
426         * sysdeps/unix/sysv/linux/x86_64/bits/sigcontext.h (struct
427         _fpstate): Add separate struct for x86-64.
428
429         * sysdeps/unix/sysv/linux/x86_64/sys/user.h (struct
430         user_fpregs_struct): Change member names to follow kernel.
431
432 2002-03-20  Ulrich Drepper  <drepper@redhat.com>
433
434         * nis/ypclnt.c (yp_all): Remove the hack introduced on 1998-09-29.
435         Correctly close the UDP connection right away [PR libc/3120].
436
437 2002-03-20  Andreas Jaeger  <aj@suse.de>
438
439         * sysdeps/unix/sysv/linux/x86_64/sys/user.h (struct
440         user_fpregs_struct): Fix for changed kernel struct.
441         (struct user_regs_struct): Likewise.
442         (struct user): Likewise.
443         Add 32-bit x86 compatibility.
444
445         * sysdeps/unix/sysv/linux/x86_64/sys/reg.h: Add more registers.
446
447 2002-03-19  Andreas Jaeger  <aj@suse.de>
448
449         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: Cleanup x86 types.
450
451 2002-03-18  Andreas Jaeger  <aj@suse.de>
452
453         * iconvdata/Makefile: Only run tests when shared libs are
454         available.
455
456 2002-03-17  Andreas Jaeger  <aj@suse.de>
457
458         * sysdeps/mips/fpu/fraiseexcpt.c (__feraiseexcept): Set cause bits.
459
460         * sysdeps/mips/fpu/fgetexcptflg.c (__fegetexceptflag): Add comment.
461
462         * sysdeps/mips/fpu/fclrexcpt.c (__feclearexcept): Clear also cause
463         bits.
464
465         * sysdeps/mips/fpu/fenv_libc.h (CAUSE_MASK): New.
466         (CAUSE_SHIFT): New.
467         Patch by Hartvig Ekner <hartvige@mips.com>.
468
469         * sysdeps/generic/unwind-dw2-fde-glibc.c: Add prototypes.
470         * sysdeps/generic/unwind-pe.h: Likewise.
471
472         * libio/iofdopen.c (_IO_new_fdopen): Pass parameter of correct
473         type to _IO_setb.
474
475         * libio/stdio.c (AL2): Define variant when visibility attribute is
476         not supported.
477
478         * include/libc-symbols.h (_INTVARDEF): Define variant when
479         visibility attribute is not supported.
480
481 2002-03-16  Ulrich Drepper  <drepper@redhat.com>
482
483         * po/fr.po: Update from translation team.
484
485 2002-02-25  Bruno Haible  <bruno@clisp.org>
486
487         * MakeTAGS (extract): Use --sort-by-file instead of --sort-output.
488
489 2002-03-15  Ulrich Drepper  <drepper@redhat.com>
490
491         * libio/iofdopen.c (_IO_new_fdopen): Call _IO_setb to deallocate
492         buffers if _IO_file_attach failed.
493
494         * libio/fileops.c (_IO_file_open): Close file descriptor if
495         _IO_SEEKOFF call failed.
496
497 2002-03-15  H.J. Lu  <hjl@gnu.org>
498             Ulrich Drepper  <drepper@redhat.com>
499
500         * configure.in: Check for availability of
501         init_array/fini_array/preinit_array handling in binutils.
502         * config.h.in (HAVE_INITFINI_ARRAY): New macro.
503         * config.make.in (have-initfini-array): New variable.
504
505 2002-03-15  Ulrich Drepper  <drepper@redhat.com>
506
507         * stdio-common/tst-printf.c (main): Comment out one test which
508         checked the compiler's ability to fold floating-point constants
509         but not really printf.
510         (rfg3): Make s const.
511         * stdio-common/tst-printf.sh: Adjust for removed test.
512
513         * sysdeps/i386/i386-mcount.S: Just call __mcount_internal, it is an
514         internal function.  Adjust for internal_function calling convention.
515         * sysdeps/i386/machine-gmon.h: Declare and define __mcount_internal
516         as internal_function.
517
518         * sysdeps/generic/framestate.c: Declare fallback_frame_state_for as
519         hidden.
520
521         * nss/XXX-lookup.c (DB_LOOKUP_FCT): Add internal_function to
522         declaration and definition.
523         * nss/getXXbyYY_r.c (DB_LOOKUP_FCT): Add internal_function to
524         declaration.
525         * nss/getXXent_r.c: Likewise.
526         * nss/nsswitch.h (db_lookup_function): Add internal_function to
527         definition.
528
529         * include/time.h: Declare __localtime_r as hidden.
530
531         * include/aliases.h: Declare __getaliasent_r as hidden.
532         * include/grp.h: Declare __getgrent_r as hidden.
533         * include/netdb.h: Declare __gethostent_r, __getnetent_r,
534         __getservent_r, and __getprotoent_r as hidden.
535         * include/pwd.h: Declare __getpwent_r as hidden.
536         * include/shadow.h: Declare __getspent_r as hidden.
537         * include/rpc/netdb.h: Declare __getrpcent_r as hidden.
538
539         * iconv/gconv_int.h: Declare __gconv_read_conf, __gconv_alias_compare,
540         and __gconv_transliterate as hidden.
541         Add internal_function to __gconv_get_path declaration.
542         * iconv/gconv_conf.c: Add internal_function to __gconv_get_path
543         definition.  Add attribute_hidden to __gconv_read_conf definition.
544
545 2002-03-14  Ulrich Drepper  <drepper@redhat.com>
546
547         * elf/rtld.c: Declare _environ as hidden.
548         * sysdeps/generic/dl-environ.c: Likewise.
549         * sysdeps/generic/dl-sysdep.c: Likewise.
550
551         * sysdeps/generic/ldsodefs.h: Declare _dl_debug_state_internal and
552         _dl_mcount_internal as hidden.
553
554         * elf/Makefile (rtld-routines): Add dl-sbrk and dl-brk.
555         * sysdeps/generic/dl-brk.c: New file.
556         * sysdeps/generic/dl-sbrk.c: New file.
557         * sysdeps/unix/sysv/linux/i386/dl-brk.c: New file.
558         * sysdeps/unix/sysv/linux/i386/dl-sbrk.c: New file.
559
560         * elf/dl-minimal.c (malloc): Declare _end as hidden.
561         (__errno_location): New function.  Declare errno as hidden.
562         * elf/rtld.c (_dl_argc): Define as hidden.
563         (_dl_skip_args): Define as hidden.
564         (_begin, _end): Declare as hidden.
565         * sysdeps/generic/dl-sysdep.c (_end): Declare as hidden.
566         * sysdeps/generic/entry.h (_start): Declare as hidden.
567         * sysdeps/generic/ldsodefs.h (_dl_argc): Declare as hidden.
568         * sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Declare
569         _dl_runtime_resolve and _dl_runtime_profile as hidden.
570         (RTLD_START): Use GOTOFF to access _dl_skip_args and _dl_fini.
571
572 2002-03-14  Roland McGrath  <roland@frob.com>
573
574         * Makerules ($(common-objpfx)Versions.v.i): Depend on abi-versions.h.
575
576         * Makeconfig (%.v.i, %.v): New implicit rules.
577         (preprocess-versions): Variable removed.
578         ($(common-objpfx)shlib-versions.v.i): New target giving just the
579         shlib-versions input files as dependencies.
580         ($(common-objpfx)soversions.i): Depend on that instead of the input
581         files.  Use it as input instead of using a pipeline.
582         (postclean-generated): Append soversions.i, shlib-versions.v, and
583         shlib-versions.v.i here.
584         * Makerules ($(common-objpfx)Versions.def.v.i): New target giving just
585         the Versions.def input files as dependencies.
586         ($(common-objpfx)Versions.v.i): Likewise for Versions files.
587         ($(common-objpfx)Versions.all): Depend on that instead of the input
588         files.  Use it as input instead of using a pipeline.
589         ($(common-objpfx)sysd-versions): Likewise with Versions.v.i.
590         (postclean-generated): Append those .v and .v.i files here.
591
592 2002-03-14  Jakub Jelinek  <jakub@redhat.com>
593
594         * locale/broken_cur_max.c (__ctype_get_mb_cur_max): Use nl_langinfo.
595         * locale/Versions (_nl_current_LC_COLLATE, _nl_current_LC_CTYPE):
596         Remove.
597
598 2002-03-14  Jakub Jelinek  <jakub@redhat.com>
599
600         * sysdeps/generic/mp_clz_tab.c: New file.
601         * sysdeps/i386/mp_clz_tab.c: New file.
602         * sysdeps/hppa/mp_clz_tab.c: New file.
603         * sysdeps/powerpc/mp_clz_tab.c: New file.
604         * stdlib/Makefile (aux): Revert last patch.
605         * math/Makefile (gmp-objs): Likewise.
606
607 2002-03-13  Paul Eggert  <eggert@twinsun.com>
608
609         * time/strftime.c: Comment fixes for references to obsolescent
610         standards, In most cases the simplest fix is to remove the
611         confusing comments.  Cross-referencing all the standards properly
612         is a bit of a pain, and it should be enough to put that info in
613         the documentation as I did in my recent time.texi patch.
614
615 2002-03-13  Paul Eggert  <eggert@twinsun.com>
616
617         * manual/time.texi (Formatting Calendar Time):
618         ISO C99 also specifies the E and O modifiers.
619         %P is a GNU extension, and is not in ISO C99.
620         Mention that %r is equivalent to %I:%M:%S %p in the POSIX locale.
621         %T is also in ISO C99.
622         The RFC 822 example is not valid in arbitrary locales.
623         Reword the POSIX.2 wording slightly, to make it a bit clearer
624         that POSIX.2 formats are also supported by later POSIX versions.
625         If a format was introduced in ISO C99 it is also required by
626         POSIX.1-2001.
627
628 2002-03-13  Ulrich Drepper  <drepper@redhat.com>
629
630         * sysdeps/gnu/errlist.awk: Define _sys_errlist_internal and
631         _sys_nerr_internal with INTVARDEF2.
632         * include/libc-symbols.h (INTVARDEF2): New macro.
633         * include/stdio.h (_sys_errlist_internal): Declare as hidden.
634         (_sys_nerr_internal): Library.
635
636         * sysdeps/posix/signal.c (_sigintr): Define as hidden.
637         * sysdeps/posix/sigintr.c (_sigintr): Declare as hidden.
638
639         * stdio-common/tst-printf.sh: Adjust for last change in tst-printf.c.
640
641 2002-03-13  Wolfram Gloger  <wg@malloc.de>
642
643         * malloc/malloc.c (sYSMALLOc): Don't change brk if mmap failed.
644
645 2002-03-02  Andreas Schwab  <schwab@suse.de>
646
647         * stdio-common/vfprintf.c (process_arg): Fix decimal format with
648         'h' flag and positional arg.
649         * stdio-common/tst-printf.c (rfg3): New function to test
650         positional arguments.
651         (main): Fix some warnings.
652
653 2002-03-13  Jakub Jelinek  <jakub@redhat.com>
654
655         * elf/dl-minimal.c (_itoa): Use _itoa_lower_digits_internal if SHARED.
656         * elf/dl-reloc.c (_dl_reloc_bad_type): Likewise.
657
658 2002-03-13  Ulrich Drepper  <drepper@redhat.com>
659
660         * grp/initgroups.c (__nss_group_data): Declare as hidden.
661
662         * include/locale.h (_nl_C_locobj): Declare as hidden.
663
664         * time/asctime.c (_nl_C_LC_TIME): Declare as hidden.
665         * time/strptime.c (_nl_C_LC_TIME): Likewise.
666
667         * include/netinet/in.h (in6addr_any_internal): Mark as hidden.
668
669         * include/sys/gmon.h: Declare _gmonparam as hidden.
670
671         * locale/lc-ctype.c (__ctype32_wctype): Declare as hidden.
672         (__ctype32_wctrans): Likewise.
673         (__ctype32_width): Likewise.
674
675         * sysdeps/unix/sysv/linux/ttyname.c: Comment out definition and
676         use of __ttyname.
677
678         * posix/regcomp.c (__re_error_msgid): Renamed from re_error_msgid.
679         Define as hidden.
680         (__re_error_msgid_idx): Renamed from re_error_msgid_idx.  Define as
681         hidden.  Change all users of these variables.
682
683         * posix/regex_internal.h (__re_error_msgid): Renamed from
684         re_error_msgid.  Declare as hidden.
685         (__re_error_msgid_idx): Renamed from re_error_msgid_idx.  Declare as
686         hidden.
687
688         * stdio-common/reg-printf.c (__printf_arginfo_table): Define as hidden.
689         (__printf_function_table): Likewise.
690         * stdio-common/printf-parse.h (__printf_arginfo_table): Declare as
691         hidden.
692         (__printf_function_table): Likewise.
693
694         * nscd/nscd_proto.h: Declare __nss_not_use_nscd_passwd,
695         __nss_not_use_nscd_group, and __nss_not_use_nscd_hosts as hidden.
696
697         * nss/XXX-lookup.c (DATABASE_NAME_SYMBOL): Define as hidden.
698         * nss/nsswitch.c: Declare _nss_*_database as hidden.
699
700         * stdlib/wctomb.c (__no_r_state): Declare as hidden.
701         * stdlib/mbtowc.c (__no_r_state): Define as hidden.
702
703 2002-03-12  Ulrich Drepper  <drepper@redhat.com>
704
705         * ctype/ctype-info.c: Declare _nl_C_LC_CTYPE_class,
706         _nl_C_LC_CTYPE_class32, _nl_C_LC_CTYPE_toupper, _nl_C_LC_CTYPE_tolower,
707         _nl_C_LC_CTYPE_class_upper, _nl_C_LC_CTYPE_class_lower,
708         _nl_C_LC_CTYPE_class_alpha, _nl_C_LC_CTYPE_class_digit,
709         _nl_C_LC_CTYPE_class_xdigit, _nl_C_LC_CTYPE_class_space,
710         _nl_C_LC_CTYPE_class_print, _nl_C_LC_CTYPE_class_graph,
711         _nl_C_LC_CTYPE_class_blank, _nl_C_LC_CTYPE_class_cntrl,
712         _nl_C_LC_CTYPE_class_punct, _nl_C_LC_CTYPE_class_alnum,
713         _nl_C_LC_CTYPE_map_toupper, _nl_C_LC_CTYPE_map_tolower, and
714         _nl_C_LC_CTYPE_width: Declare as hidden.
715         * include/locale.h: Declare _nl_locale_file_list.
716         * locale/C-address.c: Define _nl_C_LC_ADDRESS as hidden.
717         * locale/C-collate.c: Define _nl_C_LC_COLLATE as hidden.
718         * locale/C-identification.c: Define _nl_C_LC_IDENTIFICATION as hidden.
719         * locale/C-measurement.c: Define _nl_C_LC_MEASUREMENT as hidden.
720         * locale/C-messages.c: Define _nl_C_LC_MESSAGES as hidden.
721         * locale/C-monetary.c: Define _nl_C_LC_MONETARY as hidden.
722         * locale/C-name.c: Define _nl_C_LC_NAME as hidden.
723         * locale/C-numeric.c: Define _nl_C_LC_NUMERIC as hidden.
724         * locale/C-paper.c: Define _nl_C_LC_PAPER as hidden.
725         * locale/C-telephone.c: Define _nl_C_LC_TELEPHONE as hidden.
726         * locale/C-time.c: Define _nl_C_LC_TIME as hidden.
727         * locale/C-ctype.c: Define _nl_C_LC_CTYPE_class,
728         _nl_C_LC_CTYPE_class32, _nl_C_LC_CTYPE_toupper, _nl_C_LC_CTYPE_tolower,
729         _nl_C_LC_CTYPE_class_upper, _nl_C_LC_CTYPE_class_lower,
730         _nl_C_LC_CTYPE_class_alpha, _nl_C_LC_CTYPE_class_digit,
731         _nl_C_LC_CTYPE_class_xdigit, _nl_C_LC_CTYPE_class_space,
732         _nl_C_LC_CTYPE_class_print, _nl_C_LC_CTYPE_class_graph,
733         _nl_C_LC_CTYPE_class_blank, _nl_C_LC_CTYPE_class_cntrl,
734         _nl_C_LC_CTYPE_class_punct, _nl_C_LC_CTYPE_class_alnum,
735         _nl_C_LC_CTYPE_map_toupper, _nl_C_LC_CTYPE_map_tolower,
736         _nl_C_LC_CTYPE_width, and as hidden.
737         * locale/findlocale.c: Declare _nl_C as hidden.
738         * locale/newlocale.c: Likewise.
739         * locale/setlocale.c: Define _nl_C as hidden.  Remove declaration of
740         _nl_locale_file_list.
741         * locale/xlocale.c: Declare _nl_C_LC_CTYPE_class,
742         _nl_C_LC_CTYPE_toupper, and _nl_C_LC_CTYPE_tolower as hidden.
743         Define _nl_C_locobj as hidden.
744
745         * malloc/mtrace.c (_mtrace_file): Define as hidden.
746         (_mtrace_line): Likewise.
747
748         * include/time.h: Declare __mon_yday as hidden.
749         * time/strptime.c [_LIBC] (__mon_yday): Remove declaration.
750
751         * libio/libioP.h: Declare __libio_codecvt as hidden.
752         * libio/fileops.c: Declare __libio_translit as hidden.
753         * libio/iofwide.c: Define __libio_translit as hidden.
754
755         * login/getutent_r.c: Define __libc_utmp_lock as hidden.
756         * login/getutid_r.c: Declare __libc_utmp_lock as hidden.
757         * login/getutline_r.c: Likewise.
758         * login/utmpname.c: Likewise.
759
760         * login/utmp-private.h: Declare __libc_utmp_file_functions,
761         __libc_utmp_unknown_functions, __libc_utmp_jump_table, and
762         __libc_utmp_file_name as hidden.
763
764         * locale/setlocale.c (__libc_setlocale_lock): Define as hidden.
765         * locale/duplocale.c (__libc_setlocale_lock): Declare as hidden.
766         * locale/freelocale.c: Likewise.
767         * locale/lc-time.c: Likewise.
768
769         * sysdeps/unix/bsd/getpt.c (__libc_ptyname1): Define as hidden.
770         (__libc_ptyname2): Likewise.
771         * sysdeps/unix/sysv/linux/ptsname.c (__libc_ptyname1): Declare as
772         hidden.
773         (__libc_ptyname2): Likewise.
774
775         * sysdeps/generic/sbrk.c: Declare __libc_multiple_libcs as hidden.
776         * sysdeps/arm/init-first.c (__libc_multiple_libcs): Define as hidden.
777         * sysdeps/generic/init-first.c: Likewise.
778         * sysdeps/i386/init-first.c: Likewise.
779         * sysdeps/mach/hurd/i386/init-first.c: Likewise.
780         * sysdeps/mach/hurd/mips/init-first.c: Likewise.
781         * sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
782         * sysdeps/sh/init-first.c: Likewise.
783         * sysdeps/unix/sysv/aix/init-first.c: Likewise.
784         * sysdeps/unix/sysv/linux/init-first.c: Likewise.
785
786         * stdio-common/itowa-digits.c (_itowa_lower_digits): Define as hidden.
787         (_itowa_upper_digits): Likewise.
788
789         * libio/stdio.c (_IO_stdin, _IO_stdout, _IO_stderr): Define as hidden.
790         * libio/libio.h [_LIBC] (_IO_stdin, _IO_stdout, _IO_stderr): Declare
791         as hidden.
792
793         * libio/libioP.h: Declare _IO_file_jumps_mmap, _IO_wfile_jumps,
794         _IO_wfile_jumps_mmap, _IO_proc_jumps, _IO_old_proc_jumps,
795         _IO_str_jumps, _IO_wstr_jumps, _IO_file_jumps_internal,
796         _IO_wfile_jumps_internal, and _IO_list_all_internal as hidden.
797
798         * gmon/gmon.c (__bb_head): Define as hidden.
799         * gmon/bb_exit_func.c (__bb_head): Declare as hidden.
800
801         * argp/argp-parse.c (_argp_hang): Define as static.
802
803         * include/libc-symbols.h (_INTVARDEF): Adjust for visibility
804         handling in latest compilers.
805
806         * inet/in6_addr.c (in6addr_any): Use INTVARDEF not INTDEF to
807         define alias.
808         * libio/fileops.c (_IO_file_jumps): Likewise.
809         * libio/stdfiles.c (_IO_list_all): Likewise.
810         * libio/wfileops.c (_IO_wfile_jumps): Likewise.
811
812         * malloc/malloc.h: Move __libc_malloc_initialized declaration to
813         include/malloc.h.
814         * include/malloc.h: Add __libc_malloc_initialized declaration
815         here.  Mark variable hidden.
816         * malloc/malloc.c: Include <malloc.h> not "malloc.h".
817
818         * elf/dl-open.c (__libc_argc): Declare as hidden.
819         (__libc_argv): Likewise.
820         * sysdeps/generic/wordexp.c (__libc_argc): Declare as hidden.
821         (__libc_argv): Likewise.
822         * sysdeps/mach/hurd/i386/init-first.c: Define __libc_argc and
823         __libc_argv as hidden.
824         * sysdeps/mach/hurd/mips/init-first.c: Likewise.
825         * sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
826         * sysdeps/unix/sysv/aix/init-first.c: Likewise.
827         * sysdeps/unix/sysv/linux/init-first.c: Likewise.
828
829         * include/stdlib.h (__libc_drand48_data): Declare as hidden.
830         * stdlib/drand48.c: Remove declaration of __libc_drand48_data here.
831         * stdlib/erand48.c: Likewise.
832         * stdlib/jrand48.c: Likewise.
833         * stdlib/lcong48.c: Likewise.
834         * stdlib/lrand48.c: Likewise.
835         * stdlib/mrand48.c: Likewise.
836         * stdlib/nrand48.c: Likewise.
837         * stdlib/seed48.c: Likewise.
838         * stdlib/srand48.c: Likewise.
839
840         * stdio-common/_itoa.c (_itoa_base_table): Declare as hidden.
841         (_itoa_lower_digits_internal): New declaration.
842         (_itoa_upper_digits_internal): New declaration.
843         (_itoa): Use INTUSE to acces _itoa_upper_digits and _itoa_lower_digits.
844         * stdio-common.h (_itoa_lower_digits_internal): New declaration.
845         (_itoa_upper_digits_internal): New declaration.
846         (_itoa_word): Use INTUSE to acces _itoa_upper_digits and
847         _itoa_lower_digits.
848         * stdio-common/itoa-digits.c: Use INTVARDEF with _itoa_lower_digits.
849         * stdio-common/itoa-udigits.c: Use INTVARDEF with _itoa_upper_digits.
850
851         * elf/dl-minimal.c (_itoa): Declare _itoa_lower_digits as hidden.
852         * elf/dl-reloc.c (_dl_reloc_bad_type): Likewise.
853
854         * stdio-common/_itowa.c (_itoa_base_table): Declare as hidden.
855         (_itowa_lower_digits): Likewise.
856         (_itowa_upper_digits): Likewise.
857         * stdio-common/_itowa.h (_itowa_lower_digits): Likewise.
858         (_itowa_upper_digits): Likewise.
859
860         * intl/plural-exp.h (attribute_hidden): Define as empty macro if
861         not already defined.
862         (GERMANIC_PLURAL): Declare as hidden.
863
864         * posix/getopt.c (__getopt_initialized): Declare as hidden.
865         (attribute_hidden): Define as empty macro if not already defined.
866
867         * iconv/gconv_int.h (__gconv_path_elem): Declare hidden.
868         (__gconv_max_path_elem_len): Likewise.
869         (__gconv_path_envvar): Likewise.
870
871         * math/Makefile (gmp-objs): Remove mp_clz_tab.
872         * stdlib/Makefile (aux): Remove mp_clz_tab.
873         * stdlib/mp_clz_tab.c: Removed.  Not needed anywhere.
874
875         * stdlib/exit.h (__exit_funcs): Declare as hidden.
876
877         * posix/bug-regex5.c (main): Use nl_langinfo instead of _NL_CURRENT.
878
879         * locale/localeinfo.h: Add attribute_hidden to _nl_current_LC_XXX,
880         _nl_category_names, _nl_category_name_sizes, _nl_current,
881         _nl_C_name, _nl_POSIX_name, _nl_C_codeset, and _nl_C_LC_XXX.
882
883         * intl/dcigettext.c (_nl_default_default_domain): Define as hidden.
884         (_nl_current_default_domain): Likewise
885         (_nl_state_lock): Likewise.
886         * intl/textdomain.c (_nl_default_default_domain): Declare as hidden.
887         (_nl_current_default_domain): Likewise
888         (_nl_state_lock): Likewise.
889         * intl/bindtextdom.c (_nl_state_lock): Likewise.
890
891         * stdlib/fpioconst.h (__tens): Add attribute_hidden.
892         (_fpioconst_pow10): Likewise.
893
894         * include/time.h (_tmbuf): Add attribute_hidden.
895
896         * time/tzset.c (tzstring_list): Define as static.
897
898         * include/time.h: Add attribute_hidden to __tzname_cur_max and
899         __use_tzfile declaration.
900
901         * wcsmbs/wcsmbsload.h: Add attribute_hidden to __wcsmbs_gconv_fcts
902         and __wcsmbs_last_locale declaration.
903
904 2002-02-25  Paul Eggert  <eggert@twinsun.com>
905
906         * timezone/Makefile (tzbases): Move systemv from here...
907         (tzlinks): to here, since the entries in systemv were all changed
908         from Zone to Link lines in tz-2001a.  Bug reported (and patch
909         tested) by Peter Breitenlohner.
910
911 2002-03-07  Jakub Jelinek  <jakub@redhat.com>
912
913         * time/tst-posixtz.c (tests): Add new tests.
914         (main): Test whether tzset() sets daylight properly.
915
916 2002-03-06  Jakub Jelinek  <jakub@redhat.com>
917
918         * time/tzset.c (tz_compute): Move __daylight, __tzname and
919         __tzname_cur_max setting...
920         (tzset_internal): ...here.
921
922 2002-03-06  Jakub Jelinek  <jakub@redhat.com>
923
924         * time/tzset.c (compute_change): Don't return any value.
925         (tz_compute): Likewise.  Don't handle southern hemisphere here.
926         (__tz_convert): But here.
927
928 2002-03-11  Ulrich Drepper  <drepper@redhat.com>
929
930         * manual/examples/mkfsock.c: Include <string.h> as well.
931         Patch by Alain De Carolis <alaind@wseurope.com>.
932
933 2002-03-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
934
935         * posix/regexec.c (re_match): Fix incorrect register sizes.
936         (re_search): Likewise.
937
938 2002-03-05  Isamu Hasegawa  <isamu@yamato.ibm.com>
939
940         * posix/regcomp.c (regfree): Remove a disused condition.
941         * posix/regex_internal.c (re_acquire_state): Likewise.
942         (re_acquire_state_context): Likewise.
943         (register_state): Remove a redundant malloc invocation.
944         * posix/regex_internal.h: (re_state_table_entry): Simplify
945         the structure.
946
947 2002-03-05  Isamu Hasegawa  <isamu@yamato.ibm.com>
948
949         * posix/regcomp.c (regcomp): Add __builtin_expect to error
950         handling conditions.
951         (regerror): Likewise.
952         (regfree): Likewise.
953         (re_compile_internal): Likewise.
954         (init_dfa): Likewise.
955         (init_word_char): Likewise.
956         (create_initial_state): Likewise.
957         (analyze): Likewise.
958         (analyze_tree): Likewise.
959         (duplicate_node): Likewise.
960         (calc_eclosure): Likewise.
961         (calc_eclosure_iter): Likewise.
962         (parse): Likewise.
963         (parse_reg_exp): Likewise.
964         (parse_branch): Likewise.
965         (parse_expression): Likewise.
966         (parse_subexp): Likewise.
967         (parse_dup_op): Likewise.
968         (parse_bracket_exp): Likewise.
969         (build_equiv_class): Likewise.
970         (build_charclass): Likewise.
971         (build_word_op): Likewise.
972         (fetch_number): Likewise.
973         (create_tree): Likewise.
974         (duplicate_tree): Likewise.
975         * posix/regex.c (BE): New macro.
976         * posix/regexec.c (re_match): Add __builtin_expect to error
977         handling conditions.
978         (re_match_2): Likewise.
979         (re_search): Likewise.
980         (re_search_internal): Likewise.
981         (check_matching): Likewise.
982         (proceed_next_node): Likewise.
983         (set_regs): Likewise.
984         (sift_states_backward): Likewise.
985         (add_epsilon_backreference): Likewise.
986         (transit_state): Likewise.
987         (transit_state_sb): Likewise.
988         (transit_state_mb): Likewise.
989         (transit_state_bkref): Likewise.
990         (transit_state_bkref_loop): Likewise.
991         (build_trtable): Likewise.
992         (group_nodes_into_DFAstates): Likewise.
993         (match_ctx_init): Likewise.
994         (match_ctx_add_entry): Likewise.
995         * posix/regex_internal.c (re_string_construct): Add __builtin_expect
996         to error handling conditions.
997         (re_string_construct_toupper): Likewise.
998         (build_wcs_buffer): Likewise.
999         (build_wcs_upper_buffer): Likewise.
1000         (build_upper_buffer): Likewise.
1001         (re_string_translate_buffer): Likewise.
1002         (re_node_set_alloc): Likewise.
1003         (re_node_set_init_1): Likewise.
1004         (re_node_set_init_2): Likewise.
1005         (re_node_set_init_copy): Likewise.
1006         (re_node_set_intersect): Likewise.
1007         (re_node_set_init_union): Likewise.
1008         (re_node_set_merge): Likewise.
1009         (re_node_set_insert): Likewise.
1010         (re_dfa_add_node): Likewise.
1011         (re_acquire_state): Likewise.
1012         (re_acquire_state_context): Likewise.
1013         (create_new_state_common): Likewise.
1014         (register_state): Likewise.
1015         (create_ci_new_state): Likewise.
1016         (create_cd_new_state): Likewise.
1017         (re_string_context_at): Remove redundant condition.
1018
1019 2002-01-16  Roger Sayle  <roger@eyesopen.com>
1020
1021         * sysdeps/i386/i686/strcmp.S: Avoid unconditional jump to a ret.
1022
1023         * sysdeps/i386/i586/strlen.S: Fix typo in comment.
1024
1025 2002-03-11  Jakub Jelinek  <jakub@redhat.com>
1026
1027         * sysdeps/i386/elf/configure.in: Fix comment.
1028
1029         * sysdeps/sparc/sparc64/configure.in: New.
1030         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_load_address): Fix
1031         if .dynamic comes before .got.
1032         * config.h.in (SPARC64_DYNAMIC_BEFORE_GOT): Add.
1033
1034         * sysdeps/sparc/sparc64/hp-timing.h (HP_TIMING_DIFF,
1035         HP_TIMING_ACCUM): Fix typos.
1036
1037 2002-03-11  Ulrich Drepper  <drepper@redhat.com>
1038
1039         * string/strfry.c: Add some more randomness to the seed.
1040         Patch by James A Morrison <ja2morri@student.math.uwaterloo.ca>.
1041
1042         * po/es.po: Update from translation team.
1043         * po/fr.po: Likewise.
1044
1045         * stdio-common/tfformat.c (sprint_doubles): A test for %F format.
1046
1047         * stdio-common/printf_fp.c (__printf_fp): Correct check for %F format
1048         when determining type of format.
1049         Patch by James Antill <james@anqd.org> [PR libc/2787].
1050
1051 2002-03-04  Jakub Jelinek  <jakub@redhat.com>
1052
1053         * sysdeps/unix/bsd/ftime.c (ftime): Don't return 1000 in millitm.
1054
1055 2002-03-11  Roland McGrath  <roland@frob.com>
1056
1057         * hurd/hurd/threadvar.h: Include <features.h> for __THROW macro.
1058
1059         * Versions.def (libc): Add GLIBC_2.2.6.
1060         * hurd/Versions (libc: GLIBC_2.2.6): Add __errno_location.
1061         * sysdeps/mach/hurd/errnos.awk: In generated macro, use
1062         __errno_location instead of __hurd_errno_location, and don't inline it.
1063         * sysdeps/mach/hurd/bits/errno.h: Regenerated.
1064         * hurd/errno.c: New file.
1065         * hurd/Makefile (routines): Add errno.
1066
1067 2002-03-11  Ulrich Drepper  <drepper@redhat.com>
1068
1069         * stdio-common/vfprintf.c (vfprintf): Avoid crashing for
1070         ridiculously large widths and precisions [PR libc/3026].
1071
1072 2002-03-11  Andreas Jaeger  <aj@suse.de>
1073
1074         * sysdeps/unix/sysv/linux/s390/ldd-rewrite.sed: Fix for bi-arch
1075         support.
1076         Patch by Susanne Oberhauser <froh@SuSE.de>.
1077
1078 2002-03-11  Ulrich Drepper  <drepper@redhat.com>
1079
1080         * inet/rexec.c (ahostbuf): Define as static.
1081
1082         * wctype/wcfuncs.c (__ctype32_wctype): Declare as hidden.
1083         (__ctype32_wctrans): Likewise.
1084         * wcsmbs/wcwidth.h (__ctype32_width): Declare as hidden.
1085         * ctype/ctype-info.c (__ctype32_wctype): Add attribute_hidden.
1086         (__ctype32_wctrans): Likewise.
1087         (__ctype32_width): Likewise.
1088
1089         * gmon/Makefile (elide-routines.os): Add bb_init_func and bb_exit_func.
1090         They were never exported anyway.
1091
1092         * gmon/gmon.c (_gmonparam): Add attribute_hidden.
1093         * gmon/sys/gmon.h: Remove declaration of _gmonparam.  It wasn't
1094         exported.
1095         * include/sys/gmon.h: Declare _gmonparam.
1096
1097         * sysdeps/unix/sysv/linux/i386/getdents64.c: Don't define compatibility
1098         symbols for getdents64.  They were never exported.
1099
1100 2002-03-09  Roland McGrath  <roland@frob.com>
1101
1102         * hurd/hurdsig.c (write_corefile): Fix swapped arguments to __dir_link.
1103         Reported by Jon Arney <jarney1@cox.net>.
1104
1105 2002-02-23  Roland McGrath  <roland@frob.com>
1106
1107         * hurd/hurd/threadvar.h (__hurd_threadvar_location): Add __THROW to
1108         declaration.
1109         (__hurd_errno_location): Function removed.
1110
1111 2002-03-06  Andreas Jaeger  <aj@suse.de>
1112
1113         * sysdeps/unix/sysv/linux/x86_64/sys/reg.h: Add compatibility for
1114         32-bit.
1115
1116 2002-03-04  Andreas Jaeger  <aj@suse.de>
1117
1118         * sysdeps/unix/sysv/linux/x86_64/readelflib.c: New.
1119
1120         * sysdeps/unix/sysv/linux/kernel-features.h: Add defines for
1121         x86-64.
1122
1123         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: New.
1124
1125         * sysdeps/unix/sysv/linux/x86_64/bits/sigcontext.h: New.
1126
1127         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: New.
1128
1129         * sysdeps/x86_64/bits/setjmp.h: New.
1130
1131         * sysdeps/unix/sysv/linux/x86_64/bits/sem.h: New.
1132
1133         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: New.
1134
1135         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Add compatibilty
1136         for x86.
1137         * sysdeps/unix/sysv/linux/x86_64/bits/msq.h: Likewise.
1138         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: Likewise.
1139
1140 2002-02-28  Bo Thorsen  <bo@suse.de>
1141
1142         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Merge with i386
1143         version.
1144
1145 2002-03-03  Andreas Jaeger  <aj@suse.de>
1146
1147         * sysdeps/x86_64/bits/wordsize.h: New file.
1148
1149         * elf/nodlopenmod2.c: Provide prototype to avoid warning.
1150         * elf/tst-tlsmod1.c: Likewise.
1151
1152         * posix/regcomp.c: Get regex.h from include dir for internal
1153         prototypes.
1154
1155         * sysdeps/unix/sysv/linux/init-first.c: Move __init_misc prototype
1156         to libc-internal.h and include it.
1157         * include/libc-internal.h: Add __init_misc.
1158
1159         * misc/init-misc.c: Include libc-internal.h for prototypes.
1160
1161         * sysdeps/wordsize-32/divdi3.c: Add prototypes to avoid warnings.
1162
1163         * misc/error.c [_LIBC]: Include libioP.h for prototype of
1164         _IO_putc_internal.
1165
1166 2002-03-03  Ulrich Drepper  <drepper@redhat.com>
1167
1168         * posix/regcomp.c: Compatibility changes to allow using the code
1169         outside glibc.
1170
1171 2002-02-28  Hartvig Ekner <hartvige@mips.com>
1172
1173         * sysdeps/mips/elf/start.S: Added initialization of GP (to _gp) if
1174         compiled non-PIC.
1175
1176 2002-03-02  Ulrich Drepper  <drepper@redhat.com>
1177
1178         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): Fix creation
1179         of .str elements in the returned data structure.
1180
1181         * elf/elf.h: Add Alpha TLS bits.
1182
1183 2002-02-28  Jakub Jelinek  <jakub@redhat.com>
1184
1185         * sysdeps/unix/sysv/linux/nice.c: New file.
1186
1187 2002-03-01  Ulrich Drepper  <drepper@redhat.com>
1188
1189         * elf/Makefile (dl-routines): Add dl-origin.
1190         (elide-routines.os): Add dl-origin.
1191         * elf/Versions [ld] (GLIBC_PRIVATE): Add _dl_get_origin.
1192         * elf/dl-debug.c (_dl_debug_initialize): Add missing INTUSE around
1193         _dl_debug_state.
1194         * include/libc-symbols.c: Define attribute_hidden depending on
1195         HAVE_VISIBILITY_ATTRIBUTE.  Add definition of INTVARDEF.
1196
1197         * elf/dl-deps.c: Use INTUSE with __libc_enable_secure.
1198         * elf/dl-load.c: Likewise.
1199         * elf/rtld.c: Likewise.
1200         * include/unistd.h: Declare __libc_enable_secure_internal.
1201         * sysdeps/generic/dl-sysdep.c: Use INTVARDEF with __libc_enable_secure.
1202         Use INTUSE with __libc_enable_secure.
1203         * sysdeps/mach/hurd/dl-sysdep.c: Likewise.
1204
1205         * elf/dl-deps.c: Use INTUSE with _dl_out_of_memory.
1206         * elf/dl-error.c: Likewise,
1207         * sysdeps/generic/ldsodefs.h: Declare _dl_out_of_memory_internal.
1208
1209         * elf/dl-dst.h [_RTLD_GLOBAL]: Define _dl_get_origin to use INTUSE.
1210         * sysdeps/generic/dl-origin.c: Undefine _dl_get_origin macro before
1211         function definition.  Use INTDEF with _dl_get_origin.
1212         * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
1213
1214         * elf/dl-init.c: Use INTUSE with _dl_starting_up.
1215         * elf/rtld.c: Likewise.  Use INTVARDEF for _dl_starting_up.
1216
1217         * elf/dl-profile.c: Use INTDEF for _dl_mcount.
1218         * elf/dl-runtime.c: Use INTUSE with _dl_mcount.
1219         * sysdeps/generic/ldsodefs.h: Declare _dl_mcount_internal.
1220
1221         * elf/dl-conflict.c: Use rtld_progrname instead of _dl_argv[0].
1222         * elf/dl-deps.c: Likewise.
1223         * elf/dl-error.c: Likewise.
1224         * elf/dl-fini.c: Likewise.
1225         * elf/dl-init.c: Likewise.
1226         * elf/dl-load.c: Likewise.
1227         * elf/dl-lookup.c: Likewise.
1228         * elf/dl-reloc.c: Likewise.
1229         * elf/dl-version.c: Likewise.
1230         * elf/do-lookup.h: Likewise.
1231         * sysdeps/arm/dl-machine.h: Likewise.
1232         * sysdeps/cris/dl-machine.h: Likewise.
1233         * sysdeps/hppa/dl-machine.h: Likewise.
1234         * sysdeps/i386/dl-machine.h: Likewise.
1235         * sysdeps/m68k/dl-machine.h: Likewise.
1236         * sysdeps/powerpc/dl-machine.h: Likewise.
1237         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
1238         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
1239         * sysdeps/sh/dl-machine.h: Likewise.
1240         * sysdeps/sparc/sparc-32/dl-machine.h: Likewise.
1241         * sysdeps/sparc/sparc-64/dl-machine.h: Likewise.
1242         * sysdeps/x86_64/dl-machine.h: Likewise.
1243         * elf/rtld.c: Use INTDEF for _dl_argv.  Use rtld_progrname instead of
1244         _dl_argv[0].  Use INTUSE with _dl_argv.
1245         * sysdeps/generic/dl-sysdep.c: Use INTUSE with _dl_argv.
1246         * sysdeps/generic/ldsodefs.h: Define rtld_progname macro.
1247
1248 2002-02-28  Jakub Jelinek  <jakub@redhat.com>
1249
1250         * elf/rtld.c (_rtld_global): Remove .protected.
1251         (_rtld_local): Strong alias to _rtld_global.
1252         * elf/Makefile (CFLAGS-.os): Add -D_RTLD_LOCAL if compiling rtld
1253         only .os object.
1254         * sysdeps/generic/ldsodefs.h (GL): If SHARED and _RTLD_LOCAL, use
1255         _rtld_local instead of _rtld_global.
1256         (_rtld_local): Add hidden extern, possibly in .sdata section.
1257         * configure.in: Add tests for visibility attribute and .sdata.
1258         * config.h.in: Add HAVE_VISIBILITY_ATTRIBUTE and HAVE_SDATA_SECTION.
1259         * sysdeps/alpha/dl-machine.h: Use _rtld_local instead of _rtld_global.
1260         * sysdeps/arm/dl-machine.h: Likewise.
1261         * sysdeps/generic/ldsodefs.h: Likewise.
1262         * sysdeps/hppa/dl-machine.h: Likewise.
1263         * sysdeps/cris/dl-machine.h: Likewise.
1264         * sysdeps/i386/dl-machine.h: Likewise.
1265         * sysdeps/ia64/dl-machine.h: Likewise.
1266         * sysdeps/m68k/dl-machine.h: Likewise.
1267         * sysdeps/mips/mips64/dl-machine.h: Likewise.
1268         * sysdeps/mips/dl-machine.h: Likewise.
1269         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
1270         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
1271         * sysdeps/sh/dl-machine.h: Likewise.
1272         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
1273         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
1274         * sysdeps/x86_64/dl-machine.h: Likewise.
1275
1276 2002-02-28  Ulrich Drepper  <drepper@redhat.com>
1277
1278         * login/login.c (login): Always initialize ut_line field
1279         [PR libc/2991].
1280
1281 2002-02-28  Jakub Jelinek  <jakub@redhat.com>
1282
1283         * sysdeps/i386/Makefile (sysdep_routines): Add
1284         divdi3 in csu dir.
1285         (shared-only-routines): Likewise.
1286         * sysdeps/m68k/Makefile (sysdep_routines): Likewise.
1287         (shared-only-routines): Likewise.
1288         * sysdeps/s390/s390-32/Makefile (sysdep_routines): Likewise.
1289         (shared-only-routines): Likewise.
1290         * sysdeps/wordsize-32/divdi3.c: New file.
1291
1292 2002-02-28  Ulrich Drepper  <drepper@redhat.com>
1293
1294         * locale/iso-4217.def: Remove obsolete currencies for countries
1295         with Euro.
1296
1297 2002-02-28  Isamu Hasegawa  <isamu@yamato.ibm.com>
1298
1299         * posix/regcomp.c (regcomp): Remove a redundant condition.
1300         (init_word_char): Add a check on malloc failure.
1301         (create_initial_state): Likewise.
1302         (duplicate_node): Likewise.
1303         (calc_eclosure): Likewise.
1304         (calc_eclosure_iter): Likewise.
1305         (parse_expression): Likewise.
1306         (parse_bracket_exp): Remove unnecessary malloc invocations.
1307         (build_equiv_class): Likewise.
1308         (build_charclass): Likewise.
1309         * posix/regex_internal.c (re_node_set_intersect): Add a check
1310         on malloc failure.
1311         (re_node_set_add_intersect): Likewise.
1312         (re_node_set_merge): Likewise.
1313         (re_acquire_state): Likewise.
1314         (re_acquire_state_context): Likewise.
1315         (create_newstate_common): Likewise.
1316         (register_state): Likewise.
1317         (create_ci_newstate): Likewise.
1318         (create_cd_newstate): Likewise.
1319         * posix/regex_internal.h: Fix prototypes of re_acquire_state
1320         and re_acquire_state_context.
1321         * posix/regexec.c (regexec): Suit it to the error handling of
1322         re_search_internal.
1323         (re_match): Likewise.
1324         (re_search): Likewise.
1325         (re_search_internal): Add a check on malloc failure.
1326         (acquire_init_state_context): Likewise.
1327         (check_matching): Likewise.
1328         (proceed_next_node): Likewise.
1329         (set_regs): Likewise.
1330         (sift_states_backward): Likewise.
1331         (sift_states_iter_bkref): Likewise.
1332         (add_epsilon_backreference): Likewise.
1333         (transit_state): Likewise.
1334         (transit_state_sb): Likewise.
1335         (transit_state_mb): Likewise.
1336         (transit_state_bkref_loop): Likewise.
1337         (build_trtable): Likewise.
1338         (group_nodes_into_DFAstates): Likewise.
1339         (match_ctx_init): Likewise.
1340         (match_ctx_add_entry): Likewise.
1341
1342 2002-02-27  Ulrich Drepper  <drepper@redhat.com>
1343
1344         * elf/dl-load.c (_dl_map_object_from_fd): Always add SONAME to
1345         l_libname if profiling is enabled [PR libc/2916].
1346
1347         * sysdeps/ia64/dl-tls.h: New file.
1348
1349 2002-02-27  Jakub Jelinek  <jakub@redhat.com>
1350
1351         * sysdeps/alpha/dl-machine.h (elf_machine_load_address, RTLD_START):
1352         Work around an Alpha gas bug.
1353
1354 2002-02-27  Ulrich Drepper  <drepper@redhat.com>
1355
1356         * catgets/open_catalog.c (__open_catalog): Fix typo in code which
1357         uses read to load the catalog.
1358         Patch by Andy Isaacson <adi@unlimitedscale.com> [PR libc/3011].
1359
1360 2002-02-26  Ulrich Drepper  <drepper@redhat.com>
1361
1362         * posix/Makefile (distribute): Add regcomp.c, regexec.c,
1363         regex_internal.c, and regex_internal.h.
1364         (CFLAGS-regex.c): Replace -DMBS_SUPPORT with -DRE_ENABLE_I18N.
1365         * posix/regex.c: Complete rewrite.
1366         * posix/regexec.c: New file.
1367         * posix/regcomp.c: New file.
1368         * posix/regex_internal.c: New file.
1369         * posix/regex_internal.h: New file.
1370         * posix/regex.h (RE_ICASE): New macro.
1371         Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
1372
1373         * stdio-common/vfscanf.c (_IO_vfwscanf): Always use ungetc, never
1374         ungetwc.  It's a macro.
1375         * libio/tst-swscanf.c (do_test): Adjust for now fixed wscanf
1376         implementation.
1377         Reported by Jason Merrill <jason@redhat.com>.
1378
1379 2002-02-25  Jakub Jelinek  <jakub@redhat.com>
1380
1381         * libio/iofopen.c (__fopen_maybe_mmap): Set the initial
1382         position to fp->_offset if it is set.
1383         * stdio-common/Makefile (tests): Add tst-fdopen.
1384         * stdio-common/tst-fdopen.c: New test.
1385
1386 2002-02-25  Jakub Jelinek  <jakub@redhat.com>
1387
1388         * libio/fileops.c (_IO_file_xsgetn_mmap): Handle reading from backup.
1389         * stdio-common/tst-ungetc.c (main): Add another test.
1390
1391 2002-02-25  Ulrich Drepper  <drepper@redhat.com>
1392
1393         * assert/assert-perr.c: Use INTUSE to reference functions and variables
1394         inside libc itself.  Use INTDEF and INTDEF2 to define appropriate
1395         aliases.  Add prototypes for the new aliases.
1396         * assert/assert.c: Likewise.
1397         * include/libc-symbols.h: Likewise.
1398         * include/stdio.h: Likewise.
1399         * include/netinet/in.h: Likewise.
1400         * include/rpc/auth.h: Likewise.
1401         * include/rpc/auth_unix.h: Likewise.
1402         * include/rpc/key_prot.h: Likewise.
1403         * include/rpc/pmap_prot.h: Likewise.
1404         * include/rpc/pmap_rmt.h: Likewise.
1405         * include/rpc/rpc_msg.h: Likewise.
1406         * include/rpc/xdr.h: Likewise.
1407         * inet/gethstbyad_r.c: Likewise.
1408         * inet/gethstbynm2_r.c: Likewise.
1409         * inet/gethstbynm_r.c: Likewise.
1410         * inet/gethstent_r.c: Likewise.
1411         * inet/in6_addr.c: Likewise.
1412         * libio/__fpurge.c: Likewise.
1413         * libio/filedoalloc.c: Likewise.
1414         * libio/fileops.c: Likewise.
1415         * libio/ftello.c: Likewise.
1416         * libio/ftello64.c: Likewise.
1417         * libio/genops.c: Likewise.
1418         * libio/iofclose.c: Likewise.
1419         * libio/iofdopen.c: Likewise.
1420         * libio/iofflush.c: Likewise.
1421         * libio/iofflush_u.c: Likewise.
1422         * libio/iofgetpos.c: Likewise.
1423         * libio/iofgetpos64.c: Likewise.
1424         * libio/iofgets.c: Likewise.
1425         * libio/iofgets_u.c: Likewise.
1426         * libio/iofopen.c: Likewise.
1427         * libio/iofopncook.c: Likewise.
1428         * libio/iofputs.c: Likewise.
1429         * libio/iofread.c: Likewise.
1430         * libio/iofread_u.c: Likewise.
1431         * libio/iofsetpos.c: Likewise.
1432         * libio/iofsetpos64.c: Likewise.
1433         * libio/ioftell.c: Likewise.
1434         * libio/iofwrite.c: Likewise.
1435         * libio/iogetline.c: Likewise.
1436         * libio/iogets.c: Likewise.
1437         * libio/iogetwline.c: Likewise.
1438         * libio/iolibio.h: Likewise.
1439         * libio/iopadn.c: Likewise.
1440         * libio/iopopen.c: Likewise.
1441         * libio/ioseekoff.c: Likewise.
1442         * libio/ioseekpos.c: Likewise.
1443         * libio/iosetbuffer.c: Likewise.
1444         * libio/iosetvbuf.c: Likewise.
1445         * libio/ioungetc.c: Likewise.
1446         * libio/ioungetwc.c: Likewise.
1447         * libio/iovdprintf.c: Likewise.
1448         * libio/iovsprintf.c: Likewise.
1449         * libio/iovsscanf.c: Likewise.
1450         * libio/libioP.h: Likewise.
1451         * libio/memstream.c: Likewise.
1452         * libio/obprintf.c: Likewise.
1453         * libio/oldfileops.c: Likewise.
1454         * libio/oldiofclose.c: Likewise.
1455         * libio/oldiofdopen.c: Likewise.
1456         * libio/oldiofgetpos.c: Likewise.
1457         * libio/oldiofgetpos64.c: Likewise.
1458         * libio/oldiofopen.c: Likewise.
1459         * libio/oldiofsetpos.c: Likewise.
1460         * libio/oldiofsetpos64.c: Likewise.
1461         * libio/oldiopopen.c: Likewise.
1462         * libio/oldstdfiles.c: Likewise.
1463         * libio/putc.c: Likewise.
1464         * libio/setbuf.c: Likewise.
1465         * libio/setlinebuf.c: Likewise.
1466         * libio/stdfiles.c: Likewise.
1467         * libio/stdio.c: Likewise.
1468         * libio/strops.c: Likewise.
1469         * libio/vasprintf.c: Likewise.
1470         * libio/vscanf.c: Likewise.
1471         * libio/vsnprintf.c: Likewise.
1472         * libio/vswprintf.c: Likewise.
1473         * libio/wfiledoalloc.c: Likewise.
1474         * libio/wfileops.c: Likewise.
1475         * libio/wgenops.c: Likewise.
1476         * libio/wstrops.c: Likewise.
1477         * malloc/mtrace.c: Likewise.
1478         * misc/error.c: Likewise.
1479         * misc/syslog.c: Likewise.
1480         * nss/getXXbyYY_r.c: Likewise.
1481         * nss/getXXent_r.c: Likewise.
1482         * nss/hosts-lookup.c: Likewise.
1483         * stdio-common/getw.c
1484         * stdio-common/printf-prs.c: Likewise.
1485         * stdio-common/printf_fp.c: Likewise.
1486         * stdio-common/printf_size.c: Likewise.
1487         * stdio-common/putw.c: Likewise.
1488         * stdio-common/scanf.c: Likewise.
1489         * stdio-common/sprintf.c: Likewise.
1490         * stdio-common/tmpfile64.c: Likewise.
1491         * stdio-common/vfprintf.c: Likewise.
1492         * stdio-common/vfscanf.c: Likewise.
1493         * stdlib/strfmon.c: Likewise.
1494         * sunrpc/auth_des.c: Likewise.
1495         * sunrpc/auth_none.c: Likewise.
1496         * sunrpc/auth_unix.c: Likewise.
1497         * sunrpc/authdes_prot.c: Likewise.
1498         * sunrpc/authuxprot.c: Likewise.
1499         * sunrpc/clnt_perr.c: Likewise.
1500         * sunrpc/clnt_raw.c: Likewise.
1501         * sunrpc/clnt_tcp.c: Likewise.
1502         * sunrpc/clnt_udp.c: Likewise.
1503         * sunrpc/clnt_unix.c: Likewise.
1504         * sunrpc/key_call.c: Likewise.
1505         * sunrpc/key_prot.c: Likewise.
1506         * sunrpc/openchild.c: Likewise.
1507         * sunrpc/pm_getmaps.c: Likewise.
1508         * sunrpc/pm_getport.c: Likewise.
1509         * sunrpc/pmap_clnt.c: Likewise.
1510         * sunrpc/pmap_prot.c: Likewise.
1511         * sunrpc/pmap_prot2.c: Likewise.
1512         * sunrpc/pmap_rmt.c: Likewise.
1513         * sunrpc/rpc_cmsg.c: Likewise.
1514         * sunrpc/rpc_prot.c: Likewise.
1515         * sunrpc/svc_authux.c: Likewise.
1516         * sunrpc/svc_raw.c: Likewise.
1517         * sunrpc/svc_simple.c: Likewise.
1518         * sunrpc/svc_tcp.c: Likewise.
1519         * sunrpc/svc_udp.c: Likewise.
1520         * sunrpc/svc_unix.c: Likewise.
1521         * sunrpc/xdr.c: Likewise.
1522         * sunrpc/xdr_array.c: Likewise.
1523         * sunrpc/xdr_mem.c: Likewise.
1524         * sunrpc/xdr_rec.c: Likewise.
1525         * sunrpc/xdr_ref.c: Likewise.
1526         * sunrpc/xdr_stdio.c: Likewise.
1527         * sysdeps/generic/_strerror.c: Likewise.
1528         * sysdeps/generic/printf_fphex.c: Likewise.
1529         * sysdeps/generic/tmpfile.c: Likewise.
1530         * sysdeps/gnu/errlist.awk: Likewise.
1531         * sysdeps/gnu/errlist.c: Likewise.
1532
1533         * libio/Makefile (routines): Remove iosprint.
1534         * libio/iosprintf.c: Removed
1535
1536
1537 2002-02-24  Ulrich Drepper  <drepper@redhat.com>
1538
1539         * elf/dl-support.c (_dl_non_dynamic_init): Renamed from
1540         non_dynamic_init and exported now.
1541         * sysdeps/unix/sysv/linux/ldsodefs.h: Declare _dl_non_dynamic_init.
1542         * sysdeps/unix/sysv/linux/init-first.c: Call _dl_non_dynamic_init for
1543         !SHARED.
1544         * sysdeps/mach/hurd/i386/init-first.c: Likewise.
1545         * sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
1546         * sysdeps/mach/hurd/mips/init-first.c: Likewise.
1547
1548 2002-02-23  Ulrich Drepper  <drepper@redhat.com>
1549
1550         * elf/dl-close.c (free_slotinfo): Check for end of list and return
1551         true in this case.
1552
1553         * locale/iso-639.def: Add language codes for Walloon.
1554
1555         * elf/dl-fini.c (_dl_fini): Print some final statistics on the
1556         total number of relocations performed.
1557
1558         * elf/sprof.c (load_profdata): If do_test provide information as
1559         to why loading failed.
1560         * elf/dl-profile.c (_dl_start_profile): Initialize all of
1561         hist_hdr.dimen.
1562
1563         * csu/set-init.c: Moved to...
1564         * sysdeps/mach/hurd/set-init.c: ...here.  New file.
1565         * csu/Makefile: Don't compile set-init.
1566         * sysdeps/mach/hurd/Makefile: Compile set-init for subdir csu.
1567         * sysdeps/mach/hurd/i386/init-first.c: Call __init_misc in addition
1568         to __libc_init.
1569         * sysdeps/mach/hurd/mips/init-first.c: Likewise.
1570         * sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
1571         * sysdeps/unix/sysv/linux/init-first.c: Call __init_misc instead of
1572         __libc_init.
1573         * misc/init-misc.c: Always export __init_misc.  Don't define hooks for
1574         __libc_subinit.
1575
1576 2002-02-22  Ulrich Drepper  <drepper@redhat.com>
1577
1578         * elf/Versions: Add _dl_allocate_tls and _dl_deallocate_tls.
1579         * elf/rtld.c (dl_main): Use _dl_allocate_tls with INTUSE.
1580         * sysdeps/generic/dl-tls.c: Add INTDEF for _dl_allocate_tls.
1581         (_dl_deallocate_tls): New function.
1582         * sysdeps/generic/ldsodefs.h: Declare _dl_allocate_tls_internal and
1583         _dl_deallocate_tls.
1584
1585 2002-02-21  Jakub Jelinek  <jakub@redhat.com>
1586
1587         * libio/fileops.c (_IO_file_seekoff_mmap): Fix fseek SEEK_END.
1588         * stdio-common/tst-fseek.c (main): Add test for this.
1589
1590 2002-02-19  Ulrich Drepper  <drepper@redhat.com.>
1591
1592         * stdlib/Versions: Move __on_exit to GLIBC_PRIVATE.
1593
1594 2002-02-19  Jakub Jelinek  <jakub@redhat.com>
1595
1596         * libio/fileops.c (_IO_file_underflow_mmap): Cast to unsigned char
1597         pointer before dereferencing.
1598
1599 2002-02-18  Roland McGrath  <roland@frob.com>
1600
1601         * sysdeps/mach/hurd/times.c: Fix typo in last change.
1602
1603         * sysdeps/mach/hurd/setpriority.c [POLICY_TIMESHARE_BASE_COUNT]:
1604         Use task_policy in place of task_priority.
1605
1606         * sysdeps/generic/bits/mman.h
1607         (MS_ASYNC, MS_SYNC, MS_INVALIDATE): New macros.
1608         * sysdeps/mach/msync.c: New file.
1609
1610         * sysdeps/mach/powerpc/syscall.S: New file.
1611
1612         * mach/msg.c [MACH_MSG_OVERWRITE]
1613         (__mach_msg_trap, __mach_msg_overwrite): New functions.
1614         * mach/Versions (libc: GLIBC_2.0): Add mach_msg_overwrite and __ name.
1615
1616         * sysdeps/mach/configure.in: Check for clock.defs to put into
1617         mach_interface_list.
1618         * sysdeps/mach/configure: Regenerated.
1619
1620         * mach/Makefile (mach-machine): New variable, set from $(base-machine).
1621         ($(objpfx)mach-syscalls.mk): Use it in place of $(base-machine).
1622         ($(mach-syscalls:%=$(objpfx)%.S) static pattern rule):
1623         Use <mach/machine/syscall_sw.h> instead of <sysdep.h>.
1624         (mach-shortcuts): Add device_read_overwrite_request,
1625         device_read_overwrite, vm_read_overwrite, thread_switch.
1626
1627         * configure.in (base_machine): Set to $machine by default.
1628         * configure: Regenerated.
1629
1630         * sysdeps/mach/configure.in: Check for <mach/machine/ndr_def.h>
1631         or <machine/ndr_def.h> and add -DNDR_DEF_HEADER=... to DEFINES.
1632         * sysdeps/mach/configure: Regenerated.
1633         * mach/mach_init.c [NDR_DEF_HEADER]: #include it.
1634
1635         * hurd/hurdfault.c (_hurdsig_fault_init): Add a cast.
1636
1637         * hurd/hurd/signal.h: Include <setjmp.h> for `jmp_buf' decl.
1638
1639         * mach/msgserver.c (__mach_msg_server_timeout) [! MACH_RCV_LARGE]:
1640         Double MAX_SIZE and don't retry on MACH_RCV_TOO_LARGE.
1641
1642 2002-02-17  Roland McGrath  <roland@frob.com>
1643
1644         * sysdeps/mach/hurd/times.c
1645         [NO_CREATION_TIME] (startup_time): New static variable.
1646         [NO_CREATION_TIME] (times_init): New static function in __libc_subinit.
1647         (__times) [NO_CREATION_TIME]: Use startup_time in lieu of task
1648         creation_time from task_basic_info.
1649         (__times): Use __gettimeofday instead of __host_get_time.
1650
1651         * hurd/intr-msg.c (_hurd_intr_rpc_mach_msg) [! MACH_MSG_TYPE_BIT]:
1652         Use untyped Mach IPC message format.
1653
1654         * hurd/catch-exc.c: Include <assert.h>, missing from last change.
1655
1656         * hurd/Versions (libc: GLIBC_2.0): Add _S_catch_exception_raise_state,
1657         _S_catch_exception_raise_state_identity,
1658         _hurdsig_fault_catch_exception_raise_state,
1659         _hurdsig_fault_catch_exception_raise_state_identity.
1660
1661         * mach/shortcut.awk: Don't apply the /^}$/ rule when $proto == "".
1662
1663         * sysdeps/mach/getsysstats.c (__get_avphys_pages) [HOST_VM_INFO]: Use
1664         __host_info with HOST_VM_INFO flavor instead of __vm_statistics.
1665
1666         * sysdeps/mach/hurd/getpriority.c [TASK_SCHED_TIMESHARE_INFO]: Find
1667         `base_priority' in PIP->timeshare_base_info instead of PIP->taskinfo.
1668
1669         * sysdeps/mach/hurd/dl-sysdep.c [FMH]: Define for i386 only.
1670         (fmh, unfmh): Define these functions only #if FMH.  Otherwise define
1671         them as no-op macros.
1672         [FMH] (ELF_MACHINE_USER_ADDRESS_MASK): Redefine it to zero.
1673         (__mmap): Uncomment uses of ELF_MACHINE_USER_ADDRESS_MASK.
1674
1675         * sysdeps/powerpc/dl-machine.h
1676         (ELF_MACHINE_USER_ADDRESS_MASK): New macro.
1677
1678         * hurd/hurdselect.c (_hurd_select) [MACH_MSG_TRAILER_MINIMUM_SIZE]:
1679         Use untyped Mach IPC message format.
1680
1681         * sysdeps/mach/hurd/ioctl.c (__ioctl) [! MACH_MSG_TYPE_BIT]:
1682         Handle untyped Mach IPC message formats.
1683
1684         * hurd/catch-exc.c (_S_catch_exception_raise) [EXC_MASK_ALL]:
1685         Expect different argument conventions when this is defined.
1686         [EXC_MASK_ALL] (_S_catch_exception_raise_state): New stub function.
1687         [EXC_MASK_ALL] (_S_catch_exception_raise_state_identity): Likewise.
1688         * hurd/hurdfault.c: Likewise for _hurdsig_fault_catch_exception_*.
1689         [NDR_CHAR_ASCII] (mig_reply_header_t): #define as mig_reply_error_t
1690         for OSF Mach variant.
1691         (faulted): Use mig_reply_error_t for REPLY.
1692         (_hurdsig_fault_init) [EXC_MASK_ALL]: Use EXCEPTION_STATE_IDENTITY
1693         in __thread_set_exception_ports call.
1694         (_hurdsig_fault_init) [MACH_PORT_RECEIVE_STATUS]: Use
1695         __mach_port_set_attributes in place of __mach_port_set_qlimit.
1696
1697         * sysdeps/mach/powerpc/sysdep.h (_MACH_MACHINE_ASM_H): Define this
1698         before include <sysdeps/mach/sysdep.h>, to inhibit <mach/machine/asm.h>
1699         on Darwin, which includes bogons.
1700
1701         * sysdeps/powerpc/dl-machine.h (elf_machine_rela): Move local
1702         variable LOADBASE so it's not declared when it's not used.
1703
1704 2002-02-16  Roland McGrath  <roland@frob.com>
1705
1706         * sysdeps/mach/hurd/times.c (__times) [NO_CREATION_TIME]: Don't try
1707         to use BI.creation_time.
1708
1709         * mach/Machrules (MIG): Add -x c to CPP value passed down.
1710
1711         * config.h.in: Add #undef HAVE_HOST_PAGE_SIZE.
1712         * sysdeps/mach/configure.in: Check for host_page_size RPC to define it.
1713         * mach/mach_init.c (__mach_init) [HAVE_HOST_PAGE_SIZE]: Use
1714         host_page_size instead of vm_statistics.
1715
1716         * sysdeps/mach/Makefile (mach-before-compile): Don't include
1717         mach_interface.h here, since not all variants use that name.
1718
1719         * sysdeps/mach/configure.in: Add some checks for Mach headers
1720         to ensure a sane installation.
1721         (mach_interface_list): Define this variable by checking for .defs
1722         files found in various variants.
1723         * configure.in (mach_interface_list): AC_SUBST this.
1724         * config.make.in (mach-interface-list): New substituted variable.
1725         * mach/Makefile (user-interfaces): Define this using the value
1726         of $(mach-interface-list) instead of mach, mach4.
1727         Updated other references to mach_interface to use it as well.
1728
1729         * sysdeps/mach/powerpc/machine-lock.h: Avoid multi-line strings.
1730
1731         * mach/msgserver.c [NDR_CHAR_ASCII] (mig_reply_header_t): #define as
1732         mig_reply_error_t for OSF Mach variant.
1733
1734         * mach/Makefile (routines): Remove bootprivport.
1735         * mach/bootprivport.c: File removed.  It has never been used.
1736
1737         * mach/msg-destroy.c (__mach_msg_destroy) [MACH_MSG_PORT_DESCRIPTOR]:
1738         Grok the OSF flavor of message format.
1739         (mach_msg_destroy_port): For MAKE_SEND and
1740         MAKE_SEND_ONCE rights, create an destroy a right to ensure proper
1741         no-senders notification.
1742
1743 2002-02-06  Roland McGrath  <roland@frob.com>
1744
1745         * hurd/Versions (libc: GLIBC_2.0): Move cthread_fork, cthread_detach
1746         to here if 2.0 compatibility enabled ...
1747         (libc: GLIBC_2.1.3): ... from here.
1748
1749 2002-02-15  Ulrich Drepper  <drepper@redhat.com>
1750
1751         * elf/dl-open.c (dl_open_worker): Catch wrap-around of TLS
1752         generation counter.
1753         * elf/dl-close.c (_dl_close): Likewise.
1754
1755 2002-02-14  Ulrich Drepper  <drepper@redhat.com>
1756
1757         * elf/Makefile: Add rules to build and run tst-tls8.
1758         * elf/tst-tls8.c: New file.
1759         * elf/tst-tlsmod4.c: New file.
1760
1761         * stdlib/test-a64l.c (tests): Add more test cases.
1762
1763         * sunrpc/rtime.c (rtime): Change type of thetime to uint32_t.
1764         Reported by Walter Harms <WHarms@bfs.de>.
1765
1766 2002-02-11  Jes Sorensen  <jes@trained-monkey.org>
1767
1768         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Add sc_flag bit
1769         definitions for struct sigcontext.
1770         Suggested by David Mosberger-Tang.
1771
1772 2002-02-13  Ulrich Drepper  <drepper@redhat.com>
1773
1774         * elf/dl-close.c (remove_slotinfo): New function.  Handles everything
1775         for removing reference of module in slotinfo list.
1776         (_dl_close): Use remove_slotinfo.
1777         * sysdeps/generic/dl-tls.c: General pretty printing.
1778         (oom): Define only if SHARED.
1779         (_dl_next_tls_modid): Correct starting point for the case we assume
1780         there is a gap.  Add missing instruction grouping (doh!).  Correct
1781         tests for reaching maximum index.
1782         * elf/Makefile: Add rules to build and run tst-tls7.
1783         * elf/tst-tls7.c: New file.
1784         * elf/tst-tlsmod3.c: New file.
1785
1786         * elf/tst-tlsmod1.c: Move #include "tls-macros.h" instead #ifdef
1787         USE_TLS.
1788         * elf/tst-tlsmod2.c: Likewise.
1789
1790         * elf/dl-close.c (_dl_close): When closing an object using TLS
1791         either decrement dl_tls_max_dtv_idx or set dl_tls_dtv_gaps to
1792         true.  Increment dl_tls_generation only if we closed any TLS-using
1793         object.
1794         * elf/tst-tls6.c: New file.
1795         * elf/Makefile: Add rules to build and run tst-tls6.
1796
1797         * po/da.po: Update from translation team.
1798
1799         * locale/categories.def: Fix typo [PR libc/2948].
1800         * po/Makefile (BROKEN_LINGUAS): Works with current gettext
1801         [PR libc/2949].
1802         * locale/iso-4217.def: Update from official version [PR libc/2950].
1803         * glibcbug.in: Honor TMPDIR [PR libc/2951].
1804         * locale/programs/ld-collate.c (collate_finish): Bail out with a
1805         message if input is too confusion instead of using assert.
1806         (collate_read): Don't crash on unknown symbol [PR libc/2952].
1807         Patches by Alastair McKinstry <alastair@pdd.3com.com>.
1808
1809         * elf/tst-tls1.c: Move #include "tls-macros.h" instead #ifdef USE_TLS.
1810         * elf/tst-tls2.c: Likewise.
1811         * elf/tst-tls3.c: Likewise.
1812
1813 2002-02-13  Jakub Jelinek  <jakub@redhat.com>
1814
1815         * elf/dl-close.c (free_slotinfo): Only define if TLS supported.
1816
1817 2002-02-13  Ulrich Drepper  <drepper@redhat.com>
1818
1819         * elf/dl-open.c (dl_open_worker): Only bump the generation counter
1820         if this is really necessary.
1821
1822         * elf/dl-close.c (_dl_close): Implement freeing entries in the
1823         slotinfo array.
1824         (free_mem): Free memory for the slotinfo array if possible.
1825
1826 2002-02-12  Andreas Schwab  <schwab@suse.de>
1827
1828         * csu/gmon-start.c (__gmon_start__): Remove '&' from ENTRY_POINT.
1829
1830 2002-02-12  Ulrich Drepper  <drepper@redhat.com>
1831
1832         * sysdeps/generic/dl-tls.c (TLS_DTV_UNALLOCATED): Renamed from
1833         TLS_DTV_UNALLOCATE.
1834         (oom): New function.
1835         (_dl_next_tls_modid): Rewrite to handle dl_tls_dtv_slotinfo_list.
1836         (_dl_determine_tlsoffset): Likewise.
1837         (_dl_allocate_tls): Likewise.
1838         (__TLS_GET_ADDR): Define if not already defined.
1839         (_dl_tls_symaddr): New function.
1840         (allocate_and_init): New function.
1841         (__tls_get_addr): Actually implement handling of generation counter
1842         and deferred allocation.
1843         * sysdeps/generic/ldsodefs.h (_rtld_global): Remove _dl_initimage_list,
1844         add _dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and
1845         _dl_tls_generation.
1846         Define TLS_SLOTINFO_SURPLUS and DTV_SURPLUS.
1847         Declare _dl_tls_symaddr.
1848         * sysdeps/i386/dl-tls.h: Disable __tls_get_addr handling unless
1849         SHARED.
1850         * include/link.h (struct link_map):  Remove l_tls_nextimage and
1851         l_tls_previmage.
1852         * elf/dl-sym.c (_dl_sym): After successful lookup call _dl_tls_symaddr
1853         instead of DL_SYMBOL_ADDRESS for STT_TLS symbols.
1854         (_dl_vsym): Likewise.
1855         * elf/rtld.c (_dl_start_final): Adjust initdtv initialization for new
1856         layout.
1857         (dl_main): Allow PT_TLS be present for empty segment.  Remove
1858         nextimage list handling.  Instead add all modules using TLS to
1859         dl_tls_dtv_slotinfo_list.
1860         * elf/dl-open.c (dl_open_worker): After successfully loading all
1861         objects add those with TLS to the dl_tls_dtv_slotinfo_list list.
1862         * elf/dl-load.c (_dl_map_object_from_fd): If PT_TLS entry is for an
1863         empty segment don't do anything.  Remove handling of initimage list.
1864         * elf/Versions [ld] (GLIBC_2.0): Add __libc_memalign.
1865         (GLIBC_PRIVATE): Add _dl_tls_symaddr.
1866         * elf/dl-minimal.c: Define __libc_memalign.
1867         * elf/dl-support.c: Remove _dl_initimage_list.  Add
1868         _dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and
1869         _dl_tls_generation.
1870         * include/stdlib.h: Declare __libc_memalign.
1871
1872         * elf/Makefile: Add rules to build and run tst-tls4 and tst-tls5.
1873         * elf/tst-tls4.c: New file.
1874         * elf/tst-tls5.c: New file.
1875         * elf/tst-tlsmod2.c: New file.
1876
1877         * elf/tls-macros.h: asms using ___tls_get_addr destroy %ecx and %edx.
1878
1879         * elf/tst-tlsmod1.c: Don't define variables unles USE_TLS.
1880
1881         * elf/tst-tls1.c: Use test-skeleton.c.
1882         * elf/tst-tls2.c: Likewise.
1883         * elf/tst-tls3.c: Likewise.
1884
1885         * elf/dl-conflict.c (RESOLVE_MAP): Return NULL not 0.
1886
1887 2002-02-08  Daniel Jacobowitz  <drow@mvista.com>
1888
1889         * sysdeps/mips/machine-gmon.h: Update MCOUNT for current GCC behavior.
1890
1891 2002-02-10  Ulrich Drepper  <drepper@redhat.com>
1892
1893         * elf/elf.h: Define R_386_TLS_GD and R_386_TLS_LDM.
1894
1895         * elf/tst-tls3.c: New file.
1896         * elf/tst-tlsmod1.c: New file.
1897         * elf/Makefile: Add rules to build and run tst-tls3.
1898
1899         * sysdeps/i386/dl-machine.h: Include <tls.h>.
1900         (elf_machine_type_class): Set ELF_RTYPE_CLASS_PLT also for the three
1901         TLS relocations.
1902
1903         * elf/do-lookup.h (FCT): st_value can be zero for STT_TLS symbols.
1904
1905         * po/fr.po: Update from translation team.
1906
1907         * elf/tls-macros.h: Add alternative macros for use in PIC.
1908
1909         * elf/dl-lookup.c: Include <tls.h>.
1910         * elf/do-lookup.h (FCT): Don't discard STT_TLS symbols.
1911
1912         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): More changes
1913         required by passing pointer to last element of the list.
1914
1915         * elf/dl-load.c (_dl_map_object_from_fd): Move adjustment of
1916         l_tls_initimage to a place where it actually is performed.
1917
1918         * sysdeps/generic/glob.c (glob): Explicitly set gl_pathc to zero
1919         after globfree() calls.
1920
1921         * elf/dl-deps.c (struct openaux_args): Add open_mode element.
1922         (openaux): Pass open_mode as new last argument to _dl_map_object.
1923         (_dl_map_object_deps): Add new argument open_mode.  Initialize
1924         open_mode element of args variable with it.
1925         * elf/dl-open.c (dl_open_worker): Pass __RTLD_DLOPEN flag is set to
1926         _dl_map_object_deps.
1927         * elf/rtld.c (dl_main): Add zero as last parameter to
1928         _dl_map_object_deps call.
1929         * sysdeps/generic/ldsodefs.h: Adjust prototype of _dl_map_object_deps.
1930         * elf/nodlopen2.c: New file.
1931         * elf/nodlopenmod2.c: New file.
1932         * elf/Makefile: Add rules to build and run nodlopen2.
1933
1934         * elf/tst-tls1.c: Move TLS helper macros to...
1935         * elf/tls-macros.h: ...here.  New file.
1936         * elf/tst-tls2.c: New file.
1937         * elf/Makefile (tests): Add tst-tls2.
1938         (distribute): Add tls-macros.h.
1939
1940         * po/sv.po: Update from translation team.
1941
1942         * elf/tst-tls1.c (main): Add complete set of tests.  Split
1943         architecture specific definitions from the actual test code.
1944
1945         * po/tr.po: Update from translation team.
1946
1947 2002-02-09  Ulrich Drepper  <drepper@redhat.com>
1948
1949         * elf/Makefile (tests): Add tst-tls1.
1950         * elf/tst-tls1.c: New file.
1951
1952         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Don't handle
1953         alignment of TCB for now.
1954
1955         * elf/rtld.c (dl_main): Use p_vaddr as address of TLS
1956         initialization image for the application itself.
1957
1958         * sysdeps/generic/dl-tls.c (_dl_allocate_tls): Correctly terminate
1959         loop to initialize TLS block.
1960
1961 2002-02-08  Richard Henderson  <rth@redhat.com>
1962
1963         * sysdeps/generic/ldsodefs.h (struct rtld_global): Also include
1964         _dl_cpuclock_offset if HP_SMALL_TIMING_AVAIL.
1965
1966         * sysdeps/alpha/elf/initfini.c: Use \n\ for multiline string.
1967
1968 2002-02-09  Jakub Jelinek  <jakub@redhat.com>
1969
1970         * sysdeps/generic/dl-environ.c (unsetenv): Clear cnt before use.
1971
1972 2002-02-08  Ulrich Drepper  <drepper@redhat.com>
1973
1974         * po/ca.po: Update from translation team.
1975         * po/sk.po: Likewise.
1976
1977         * elf/rtld.c (_dl_start_final): Install DTV explicitly.
1978         (dl_main): Move dtv/static TLS handling before relocation.
1979         Unconditionally call _dl_tlsoffset.  Call _dl_allocate_tls and
1980         TLS_INIT_TP to allocate and install the dtv/static TLS block.
1981         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): If no object
1982         so far uses TLS initialize GL(dl_tls_static_size) and
1983         GL(dl_tls_static_align) to account for the TCB.
1984         (_dl_allocate_tls): New function.
1985         * sysdeps/generic/ldsodefs.h (rtld_global): Add
1986         _dl_initial_dtv_malloced.
1987
1988         * configure.in: Test for __builtin_memset more realistically.
1989
1990         * csu/version.c (banner): If TLS support is available say so.
1991
1992 2002-02-04  H.J. Lu  <hjl@gnu.org>
1993
1994         * sysdeps/mips/dl-machine.h (elf_machine_matches_host): Use
1995         __attribute_used__.
1996         (__dl_runtime_resolve): Likewise.
1997
1998         * sysdeps/mips/machine-gmon.h (_MCOUNT_DECL): Make it a real
1999         declaration.
2000
2001 2001-11-15  H.J. Lu  <hjl@gnu.org>
2002
2003         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Don't include
2004         <signal.h>, <sys/ucontext.h> nor <asm/elf.h>. Updated for gdb.
2005
2006         * sysdeps/unix/sysv/linux/mips/sys/user.h: New.
2007
2008 2002-02-07  H.J. Lu  <hjl@gnu.org>
2009
2010         * sysdeps/mips/atomicity.h (compare_and_swap): Remove
2011         ".set noreorder".
2012         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set):
2013         Likewise.
2014
2015 2002-02-07  Ulrich Drepper  <drepper@redhat.com>
2016
2017         * sysdeps/unix/sysv/linux/bits/stat.h: Undo last patch.
2018
2019         * sysdeps/i386/dl-tls.h (__tls_get_addr): Call
2020         ___tls_get_addr_internal.
2021         (___tls_get_addr_internal): Define as alias for ___tls_get_addr.
2022
2023         * po/ko.po: Update from translation team.
2024
2025 2002-02-07  Jakub Jelinek  <jakub@redhat.com>
2026
2027         * sysdeps/unix/sysv/linux/bits/stat.h (struct stat): Remove packed
2028         attribute, change __pad{1,2} type to unsigned int.
2029         (struct stat64): Remove packed attribute.
2030
2031 2002-02-07  Ulrich Drepper  <drepper@redhat.com>
2032
2033         * sysdeps/i386/dl-tls.h: No need for #ifdef USE_TLS.
2034
2035 2002-02-07  Andreas Schwab  <schwab@suse.de>
2036
2037         * configure.in: Fix check for -zcombreloc.
2038
2039 2002-02-06  H.J. Lu  <hjl@gnu.org>
2040
2041         * config.h.in (HAVE_BUILTIN_MEMSET): New.
2042         * configure.in: Check if __builtin_memset really works.
2043         * elf/rtld.c (_dl_start): Check HAVE_BUILTIN_MEMSET instead of
2044         __GNUC_PREREQ (2, 96) before using __builtin_memset.
2045
2046 2002-02-06  Jakub Jelinek  <jakub@redhat.com>
2047
2048         * io/bug-ftw3.c (main): Don't try the test if root.
2049
2050 2002-02-06  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2051
2052         * sysdeps/unix/sysv/linux/s390/brk.c (__brk): Correct inline assembly
2053         constraints.
2054         * sysdeps/unix/sysv/linux/s390/s390-32/bits/resource.h (RLIMIT_LOCKS):
2055         Add RLIMIT_LOCKS and adjust RLIMIT_NLIMITS.
2056         * sysdeps/unix/sysv/linux/s390/s390-64/bits/resource.h (RLIMIT_LOCKS):
2057         Likewise.
2058         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (clone): Make clone
2059         a weak alias for __clone.
2060         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (clone): Likewise.
2061         * sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: Fix typo.
2062         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Add framestate.
2063         * sysdeps/unix/sysv/linux/s390/s390-64/Versions: New file.
2064         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap64): Make __mmap
2065         a weak alias for __mmap64.
2066
2067 2002-02-05  H.J. Lu  <hjl@gnu.org>
2068
2069         * sysdeps/mips/atomicity.h (exchange_and_add): Not use branch likely.
2070         (atomic_add): Likewise.
2071         (compare_and_swap): Likewise.
2072         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise.
2073
2074 2002-02-07  Ulrich Drepper  <drepper@redhat.com>
2075
2076         * sysdeps/generic/dl-tls.c: Don't read TLS header if TLS is not needed.
2077
2078         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Account for
2079         alignment of the TCB and store total size and alignment of static
2080         TLS block in _dl_tls_static_size and _dl_tls_static_align.
2081         tls_index is a typedef.
2082         * sysdeps/generic/ldsodefs.h: Declare _dl_tls_static_size and
2083         _dl_tls_static_align.
2084         * sysdeps/i386/dl-tls.h: tls_index is a typedef.
2085         * elf/dl-support.c: Define _dl_tls_static_size and
2086         _dl_tls_static_align.
2087
2088 2002-02-06  Ulrich Drepper  <drepper@redhat.com>
2089
2090         * configure.in: Add --without-tls option.
2091         * sysdeps/i386/elf/configure.in: Don't check for TLS support if
2092         --without-tls is given.
2093
2094         * sysdeps/generic/dl-tls.c: Include <tls.h>.
2095
2096         * sysdeps/i386/dl-tls.h: Don't define anything if !USE_TLS.
2097
2098 2002-02-06  Roland McGrath  <roland@frob.com>
2099
2100         * malloc/hooks.c [! HAVE_MREMAP]: Conditionalize unused decls.
2101         * malloc/malloc.c [! HAVE_MREMAP]: Likewise.
2102
2103         * scripts/versions.awk: Improve error message for missing version.
2104         Each version inherits from the last one only if they have the same
2105         nonnumeric prefix, i.e. GLIBC_x.y and GLIBC_x.z or FOO_x and FOO_y
2106         but not GLIBC_x and FOO_y.
2107
2108         * scripts/firstversions.awk: Handle libraries that don't have each
2109         particular version named in the third column of shlib-versions.
2110
2111         * scripts/firstversions.awk: Don't mess with GLIBC_PRIVATE.
2112
2113 2002-02-06  Ulrich Drepper  <drepper@redhat.com>
2114
2115         * Versions.def [ld]: Add GLIBC_2.3.
2116         * elf/Versions [ld]: Add __tls_get_addr to GLIBC_2.3.
2117         * elf/Makefile (dl-routines): Add dl-tls.
2118         (distribute): Add dl-tls.h.
2119         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
2120         _dl_tls_module_cnt, add _dl_tls_max_dtv_idx and _dl_tls_dtv_gaps.
2121         Add prototypes for _dl_next_tls_modid and _dl_determine_tlsoffset.
2122         * elf/dl-load.c (_dl_map_object_from_fd): Store alignment requirement
2123         along with the other info in the link map.  Change queueing of init
2124         images for double linked list.  Use _dl_next_tls_modid to compute
2125         l_tls_modid.
2126         * elf/rtld.c (_dl_start_final): Store alignment requirement
2127         along with the other info in rtld map and executable map.
2128         (dl_main): Add ld.so to the init image list if necessary.  Compute
2129         final module ID with _dl_next_tls_modid.
2130         * include/link.h (struct link_map): Add l_tls_previmage and
2131         l_tls_align.
2132         * eld/dl-support.c: Define _dl_tls_max_dtv_idx and _dl_tls_dtv_gaps.
2133         * sysdeps/i386/elf/Versions: New file.
2134         * sysdeps/generic/dl-tls.c: New file.
2135         * sysdeps/generic/dl-tls.h: New file.
2136         * sysdeps/i386/dl-tls.h: New file.
2137
2138 2002-02-06  Roland McGrath  <roland@frob.com>
2139
2140         * sysdeps/unix/sysv/linux/netinet/ip.h: Moved to ...
2141         * sysdeps/generic/netinet/ip.h: ... here, replacing old file.
2142
2143 2002-01-05  Roland McGrath  <roland@frob.com>
2144
2145         * sysdeps/mach/configure.in: New file.
2146         * sysdeps/mach/configure: New generated file.
2147
2148         * mach/Makefile (user-interfaces): Remove default_pager_helper.
2149         It has never been used by anything.
2150
2151 2002-02-06  H.J. Lu  <hjl@gnu.org>
2152
2153         * sysdeps/mips/elf/ldsodefs.h: Make sure the right <ldsodefs.h>
2154         is included.
2155
2156 2002-02-06  Ulrich Drepper  <drepper@redhat.com>
2157
2158         * sysdeps/unix/sysv/linux/bits/stat.h (struct stat): Add
2159         attribute((packed)) to counter stupid people misusing gcc options.
2160         (struct stat64): Likewise.
2161
2162 2002-02-05  Ulrich Drepper  <drepper@redhat.com>
2163
2164         * elf/rtld.c (dl_main): Correct indentation.  Use bool as type for
2165         the variables which are used as booleans.
2166
2167 2002-02-06  Andreas Jaeger  <aj@suse.de>
2168
2169         * include/libc-symbols.h (INTUSE): Renamed from INT.
2170         * elf/dl-deps.c: Change users.
2171         * sysdeps/generic/dl-sysdep.c: Likewise.
2172         * sysdeps/generic/dl-cache.c: Likewise.
2173         * elf/dl-reloc.c: Likewise.
2174         * elf/rtld.c: Likewise.
2175         * elf/dl-version.c: Likewise.
2176         * elf/dl-load.c: Likewise.
2177         * elf/dl-dst.h: Likewise.
2178         * elf/dl-init.c: Likewise.
2179         * elf/dl-error.c: Likewise.
2180         * elf/dl-fini.c: Likewise.
2181         * elf/dl-runtime.c: Likewise.
2182         * elf/do-lookup.h: Likewise.
2183
2184         * stdio-common/_itoa.h: Undefine SPECIAL to avoid duplicate
2185         definition.
2186         * stdio-common/_itowa.h: Likewise.
2187
2188 2002-02-05  Ulrich Drepper  <drepper@redhat.com>
2189
2190         * elf/dl-minimal.c: Define _itoa_lower_digits.
2191
2192         * elf/dynamic-link.h (elf_get_dynamic_info): ld.so can have
2193         DT_FLAGS set.
2194
2195         * elf/dl-load.c (_dl_map_object_from_fd): Prevent dynamically
2196         loading modules with the DF_STATIC_TLS flag set.
2197         * elf/dynamic-link.h (elf_get_dynamic_info): Initialize l_flags
2198         element.
2199         * include/link.h (struct link_map): Add l_flags field.
2200         * elf/elf.h (DF_STATIC_TLS): New definition.
2201
2202         * dlfcn/Makefile: Add rules to build and run bug-dlopen1.
2203         * dlfcn/bug-dlopen1.c: New file.  By Bruno Haible.
2204
2205         * elf/rtld.c (process_dl_debug): Correct printing help message.
2206         * elf/dl-misc.c (_dl_debug_vdprintf): Implement precision handling
2207         for %s.
2208
2209         * inet/getnetgrent_r.c (innetgr): Add int* parameter to getfct
2210         definition and pass &errno in use of this variable.
2211         Reported by Simon Wilkinson <simon@sxw.org.uk> [PR libc/2911].
2212
2213 2002-02-04  Andreas Schwab  <schwab@suse.de>
2214
2215         * locale/programs/localedef.h (WITH_CUR_LOCALE): Define.
2216         * locale/programs/charmap-dir.c: Wrap calls that output messages
2217         with WITH_CUR_LOCALE.  Include "localedef.h" first.
2218         * locale/programs/charmap.c: Likewise.
2219         * locale/programs/ld-address.c: Likewise.
2220         * locale/programs/ld-collate.c: Likewise.
2221         * locale/programs/ld-ctype.c: Likewise.
2222         * locale/programs/ld-identification.c: Likewise.
2223         * locale/programs/ld-measurement.c: Likewise.
2224         * locale/programs/ld-messages.c: Likewise.
2225         * locale/programs/ld-monetary.c: Likewise.
2226         * locale/programs/ld-name.c: Likewise.
2227         * locale/programs/ld-numeric.c: Likewise.
2228         * locale/programs/ld-paper.c: Likewise.
2229         * locale/programs/ld-telephone.c: Likewise.
2230         * locale/programs/ld-time.c: Likewise.
2231         * locale/programs/linereader.c: Likewise.
2232         * locale/programs/linereader.h: Likewise.
2233         * locale/programs/localedef.c: Likewise.
2234         * locale/programs/locfile.c: Likewise.
2235         * locale/programs/repertoire.c: Likewise.
2236
2237 2002-02-05  Ulrich Drepper  <drepper@redhat.com>
2238
2239         * elf/rtld.c (_dl_start_final): Determine load address to locate
2240         ehdr with GL(dl_rtld_map).l_map_start.
2241
2242         * po/ca.po: Update from translation team.
2243
2244         * elf/rtld.c (dl_main): Read PT_TLS entry of the executable.
2245         * elf/dl-load.c (_dl_map_object_from_fd): Handle PT_TLS program
2246         header entry.
2247         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add
2248         _dl_tls_module_cnt.
2249         * elf/dl-support.c: Define _dl_initimage_list and _dl_tls_module_cnt.
2250
2251 2002-02-04  Ulrich Drepper  <drepper@redhat.com>
2252
2253         * elf/rtld.c (_dl_start): Fill TLS values in link map for rtld.
2254         * include/link.h (struct link_map): Add various members for TLS
2255         information.
2256         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
2257         _rtld_tlsoffset, add _dl_initimage_list.
2258         * sysdeps/i386/dl-lookupcfg.h: New file.
2259         * sysdeps/i386/dl-machine.h (elf_machine_rel): Implement missing
2260         TLS relocation.  When using TLS we now use RESOLVE_MAP.
2261         (elf_machine_rela): Use RESOLVE_MAP instead of RESOLVE_MAP if TLS
2262         is used.
2263
2264         * sysdeps/generic/dl-cache.c (_dl_cache_libcmp): Mark as possibly
2265         unused.
2266
2267         * elf/rtld.c (_dl_start_final): Allocate TLS and initialize
2268         thread-pointer as soon as possible.
2269         * sysdeps/generic/ldsodefs.h: Include <tls.h>.  Define first TLS
2270         elements in rtld_global.
2271         * sysdeps/generic/tls.h: New file.
2272         * elf/Makefile (distribute): Add tls.h.
2273         * sysdeps/i386/dl-machine.h (elf_machine_rel): Add support for TLS
2274         relocations.  Not complete yet.
2275
2276         * resolv/resolv.h: Allow user to define __need_res_state and only
2277         define __res_start structure then.
2278         * include/resolv.h: Only declare functions if _RESOLV_H_ is defined.
2279
2280         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Move
2281         dl_cpuclock_offset initialization to _dl_start_final.
2282         (_dl_show_auxv): Avoid unnecessary sign extension.
2283         * elf/rtld.c (_dl_start_final): Initialize dl_cpuclock_offset.
2284
2285 2002-02-03  Ulrich Drepper  <drepper@redhat.com>
2286
2287         * config.h.in: Add HAVE_TLS_SUPPORT.
2288         * sysdeps/i386/elf/configure.in: New file.
2289
2290 2002-02-03  Andreas Schwab  <schwab@suse.de>
2291
2292         * sysdeps/posix/readv.c: Use ssize_t for bytes_read.
2293         * sysdeps/posix/writev.c: Use ssize_t for bytes_written.  Fix comment.
2294
2295 2002-02-03  Thorsten Kukuk  <kukuk@suse.de>
2296
2297         * sysdeps/posix/writev.c: Check for ssize_t overflow, don't use
2298         alloca if the memory reqirements are too high.
2299
2300 2002-02-03  Ulrich Drepper  <drepper@redhat.com>
2301
2302         * elf/dl-load.c (decompose_rpath): Avoid using strstr.
2303         * elf/dl-minimal.c (_strerror_r): Use _itoa instead of _itoa_word since
2304         the former is available anyway and speed isn't important here.
2305         * elf/dl-misc.c (_dl_debug_vdprintf): Likewise.
2306         * elf/dl-version.c (match_symbol): Likewise.
2307         (_dl_check_map_versions): Likewise.
2308         * elf/rtld.c (process_envvars): Likewise.
2309         (print_statistics): Likewise.
2310         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Likewise.
2311         * elf/dl-minimal.c (_itoa): Always define it.  Make it work for all
2312         bases.  Add assert to catch uses of unimplemented features.
2313         (__strsep): Add assert to catch uses of unimplemented features.
2314         * elf/dl-object.c (_dl_new_object): Don't use rawmemchr.  Use strchr
2315         and avoid inline optimization.
2316         * elf/rtld.c (process_envvars): Likewise.
2317         * elf/dl-open.c: Don't include <stdio-common/_itoa.h>.
2318         * elf/dl-profile.c (_dl_start_profile): Help compiler to avoid ffs.
2319         * elf/rtld.c (dl_main): Avoid strsep inline optimization.
2320
2321 2002-02-02  Ulrich Drepper  <drepper@redhat.com>
2322
2323         * stdio-common/_itoa.h: Minor simplifications of the code.
2324         * stdio-common/_itoa.c: Likewise.
2325
2326         * elf/dl-reloc.c (_dl_relocate_object): Use _dl_debug_printf
2327         instead of _dl_printf for debugging info output.
2328
2329         * manual/examples/mkfsock.c (make_named_socket): Make sure name is
2330         always NUL-terminated.  Patch by Chris D. Sloan <cds@cs.hmc.edu>.
2331
2332 2002-02-01  H.J. Lu  <hjl@gnu.org>
2333
2334         * sysdeps/mips/atomicity.h (exchange_and_add): Use branch likely.
2335         (atomic_add): Likewise.
2336         (compare_and_swap): Return 0 only when failed to compare. Use
2337         branch likely.
2338
2339         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Use
2340         branch likely.
2341
2342 2002-02-03  kaz Kojima  <kkojima@rr.iij4u.or.jp>
2343
2344         * sysdeps/sh/dl-machine.h (elf_machine_rela): Fix a typo.
2345
2346 2002-02-02  Ulrich Drepper  <drepper@redhat.com>
2347
2348         * elf/dl-minimal.c (__strsep): New minimal implementation.
2349
2350 2002-02-02  Paul Eggert  <eggert@twinsun.com>
2351
2352         * src/mktime.c [defined DEBUG && STDC_HEADERS]: Include <string.h>.
2353         (__mktime_internal): If no tm_isdst is requested, prefer solutions
2354         with tm_isdst > 0 when the requested time falls within a
2355         spring-forward gap [PR libc/2894].
2356
2357 2002-02-03  Andreas Schwab  <schwab@suse.de>
2358
2359         * stdio-common/tst-rndseek.c: Increase timeout.
2360
2361 2002-02-02  Ulrich Drepper  <drepper@redhat.com>
2362
2363         Change ld.so to not use functions which are exported.  One cannot
2364         interpose them anyway.  Use INT() to mark uses, INTDEF() to mark
2365         definitions.
2366         * include/libc-symbols.h: Define INT and INTDEF.
2367         * sysdeps/generic/ldsodefs.h: Declare _dl_debug_printf_internal,
2368         _dl_signal_error_internal, _dl_map_object_internal,
2369         _dl_map_object_deps_internal, _dl_lookup_symbol_internal,
2370         _dl_lookup_versioned_symbol_internal,
2371         _dl_relocate_object_internal, _dl_debug_state_internal,
2372         _dl_start_profile_internal, and _dl_unload_cache_internal.
2373         * include/dlfcn.h: Declare _dl_catch_error_internal.
2374         * elf/rtld.c: Use INT for calls to any of the *_internal functions
2375         above.  Add INTDEF to function definitions.
2376         * elf/dl-debug.c: Likewise.
2377         * elf/dl-deps.c: Likewise.
2378         * elf/dl-dst.h: Likewise.
2379         * elf/dl-error.c: Likewise.
2380         * elf/dl-fini.c: Likewise.
2381         * elf/dl-init.c: Likewise.
2382         * elf/dl-load.c: Likewise.
2383         * elf/dl-lookup.c: Likewise.
2384         * elf/dl-misc.c: Likewise.
2385         * elf/dl-open.c: Likewise.
2386         * elf/dl-profile.c: Likewise.
2387         * elf/dl-reloc.c: Likewise.
2388         * elf/dl-runtime.c: Likewise.
2389         * elf/dl-version.c: Likewise.
2390         * elf/do-lookup.h: Likewise.
2391         * sysdeps/generic/dl-cache.c: Likewise.
2392         * sysdeps/generic/dl-sysdep.c: Likewise.
2393         * sysdeps/alpha/dl-machine.h (RTLD_START): Call _dl_init_internal
2394         instead of _dl_init.
2395         * sysdeps/arm/dl-machine.h: Likewise.
2396         * sysdeps/cris/dl-machine.h: Likewise.
2397         * sysdeps/hppa/dl-machine.h: Likewise.
2398         * sysdeps/i386/dl-machine.h: Likewise.
2399         * sysdeps/ia64/dl-machine.h: Likewise.
2400         * sysdeps/m68k/dl-machine.h: Likewise.
2401         * sysdeps/mips/dl-machine.h: Likewise.
2402         * sysdeps/mips/mips64/dl-machine.h: Likewise.
2403         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
2404         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
2405         * sysdeps/sh/dl-machine.h: Likewise.
2406         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
2407         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
2408         * sysdeps/x86_64/dl-machine.h: Likewise.
2409         * sysdeps/powerpc/dl-start.S (_dl_start_user): Likewise.
2410
2411         * elf/Versions: Don't export _dl_check_all_versions, _dl_sysdep_start,
2412         and _dl_debug_initialize.
2413
2414         * elf/dl-object.c (_dl_new_object): Avoid using strrchr.  We have
2415         more information.
2416         * elf/rtld.c (dl_main): Avoid strrchr.
2417         * sysdeps/unix/sysv/linux/dl-origin.c (_dl_get_origin): Use the
2418         result of readlink.  Search from the back for '/'.
2419
2420         * elf/dl-profile.c (_dl_start_profile): Help the compiler to avoid
2421         strncpy if possible.
2422
2423         * sysdeps/generic/dl-environ.c (unsetenv): Optimize.  Don't use
2424         strncmp.
2425         * elf/dl-load.c (is_dst): Optimize.  Don't call strncmp twice.
2426         * elf/rtld.c (process_dl_debug): Optimize. Avoid calls to strncmp,
2427         strspn, and strcspn.
2428         (process_envvars): Don't use strcspn.
2429
2430         * elf/dl-load.c (_dl_dst_count): Fix possible endless loop.
2431         (_dl_dst_substitute): Likewise.
2432
2433 2002-02-01  Ulrich Drepper  <drepper@redhat.com>
2434
2435         * elf/do-rel.h (elf_dynamic_do_rel): Help the compiler recognize
2436         code which is never used when relocating ld.so itself.
2437
2438         * elf/dynamic-link.h (elf_get_dynamic_info): Optimize a bit for
2439         starting ld.so itself.  Move l_addr variable initialization closer
2440         to use.
2441         (_ELF_DYNAMIC_DO_RELOC): Help the compiler optimize a bit.
2442
2443 2002-02-01  Jakub Jelinek  <jakub@redhat.com>
2444
2445         * Versions.def (libc): Add GLIBC_PRIVATE.
2446         (libdb, libnss_db, libdb1): Remove.
2447         (libnss_compat, libnss_dns, libnss_files, libnss_hesiod, libnss_nis,
2448         libnss_nisplus): Move all symbols to GLIBC_PRIVATE.
2449         (libpthread): Add GLIBC_PRIVATE.
2450         (libresolv): Likewise, remove GLIBC_2.1.
2451         (ld): Add GLIBC_PRIVATE, remove GLIBC_2.1.1, GLIBC_2.2, GLIBC_2.2.1,
2452         GLIBC_2.2.3, GLIBC_2.3.
2453         * catgets/Versions (__open_catalog): Move to GLIBC_PRIVATE.
2454         * elf/Versions (_dl_open, _dl_close, _dl_addr, _dl_init_first,
2455         _dl_sym, _dl_vsym): Likewise.
2456         (__libc_enable_secure, __libc_stack_end, _dl_argv, _dl_catch_error,
2457         _dl_check_all_versions, _dl_check_map_versions, _dl_debug_initialize,
2458         _dl_debug_printf, _dl_debug_state, _dl_dst_count, _dl_dst_substitute,
2459         _dl_init, _dl_lookup_symbol, _dl_lookup_symbol_skip,
2460         _dl_lookup_versioned_symbol, _dl_lookup_versioned_symbol_skip,
2461         _dl_map_object, _dl_map_object_deps, _dl_out_of_memory,
2462         _dl_relocate_object, _dl_signal_error, _dl_start_profile,
2463         _dl_starting_up, _dl_sysdep_start, _dl_unload_cache, _rtld_global):
2464         Likewise.
2465         (_dl_object_relocation_scope): Remove.
2466         * hesiod/Versions: Move all symbols to GLIBC_PRIVATE.
2467         * iconv/Versions (__gconv_alias_db, __gconv_modules_db,
2468         __gconv_cache): Move to GLIBC_PRIVATE.
2469         * inet/Versions (__internal_endnetgrent, __internal_getnetgrent_r,
2470         __internal_setnetgrent): Likewise.
2471         * io/Versions (__libc_open, __libc_close, __libc_read, __libc_write,
2472         __libc_lseek, __libc_fcntl, __libc_open64, __libc_lseek64): Likewise.
2473         * locale/Versions (__collate_element_hash, __collate_element_strings,
2474         __collate_symbol_classes, __collate_symbol_hash,
2475         __collate_symbol_strings, _nl_current_LC_COLLATE,
2476         _nl_current_LC_CTYPE): Likewise.
2477         * misc/Versions (__libc_fsync, __libc_msync): Likewise.
2478         * nis/Versions (libnss_compat): Move all symbols to GLIBC_PRIVATE.
2479         (libnss_nis, libnss_nisplus): Likewise.
2480         * nss/Versions (_nss_files_parse_grent, _nss_files_parse_pwent,
2481         _nss_files_parse_spent): Move to GLIBC_PRIVATE.
2482         (libnss_files): Move all symbols to GLIBC_PRIVATE.
2483         * posix/Versions (__libc_wait, __libc_waitpid, __libc_pause,
2484         __libc_nanosleep, __libc_fork, __libc_pread, __libc_pread64,
2485         __libc_pwrite, __libc_pwrite64): Move to GLIBC_PRIVATE.
2486         * resolv/Versions (__gai_sigqueue, __ns_name_unpack, __ns_name_ntop,
2487         __ns_get16, __ns_samename): Likewise.
2488         (libnss_dns): Move all symbols to GLIBC_PRIVATE.
2489         * setjmp/Versions (__libc_longjmp, __libc_siglongjmp): Move to
2490         GLIBC_PRIVATE.
2491         * socket/Versions (__libc_accept, __libc_send, __libc_recvfrom,
2492         __libc_recvmsg, __libc_sendmsg, __libc_recv, __libc_sendto,
2493         __libc_connect): Likewise.
2494         * stdio-common/Versions (_itoa_lower_digits, _itoa_upper_digits):
2495         Likewise.
2496         * stdlib/Versions (__libc_system): Likewise.
2497         * sunrpc/Versions (__rpc_thread_destroy): Likewise.
2498         * sysdeps/hppa/Versions: Move all symbols to GLIBC_PRIVATE.
2499         * sysdeps/ia64/fpu/Versions: Likewise.
2500         * sysdeps/ia64/Versions: Likewise.
2501         * sysdeps/unix/sysv/linux/ia64/Versions: Likewise.
2502         * sysdeps/unix/sysv/linux/i386/Versions (__modify_ldt): Move
2503         to GLIBC_PRIVATE.
2504         * sysdeps/unix/sysv/linux/x86_64/Versions (__modify_ldt): Likewise.
2505         * sysdeps/unix/sysv/linux/Versions (__syscall_rt_sigqueueinfo,
2506         __libc_sigaction): Likewise.
2507         * termios/Versions (__libc_tcdrain): Likewise.
2508
2509         * misc/sys/cdefs (__attribute_noinline__): Define.
2510         * elf/dl-lookup.c (_dl_do_lookup, _dl_do_lookup_versioned): Add
2511         __attribute_noinline__.
2512
2513         * elf/Makefile (rtld-routines): Add dl-xstat64, dl-fxstat64.
2514         * elf/dl-xstat64.c: New file.
2515         * elf/dl-fxstat64.c: New file.
2516         * sysdeps/unix/sysv/linux/fxstat64.c: If RTLD_STAT64 is defined,
2517         don't export __fxstat64 at multiple versions.
2518         * sysdeps/unix/sysv/linux/lxstat64.c: Similarly.
2519         * sysdeps/unix/sysv/linux/xstat64.c: Similarly.
2520
2521 2002-01-18  Isamu Hasegawa  <isamu@yamato.ibm.com>
2522
2523         * locale/program/ld-collate.c (collate_finish): Assign a wide
2524         char collation sequence value to multi character collating
2525         elements, and avoid over writing by non-character elements.
2526
2527 2002-02-01  Ulrich Drepper  <drepper@redhat.com>
2528
2529         * elf/Makefile (distribute): Add dl-procinfo.c.
2530         * sysdeps/unix/sysv/linux/i386/Dist: Remove dl-procinfo.c.
2531         * sysdeps/unix/sysv/linux/arm/Dist: Likewise.
2532
2533 2002-02-01  Jakub Jelinek  <jakub@redhat.com>
2534
2535         * sysdeps/generic/ldsodefs.h (_dl_load_lock): Remove duplicate
2536         definition.
2537         * sysdeps/ia64/hp-timing.h: Move _dl_hp_timing_overhead in
2538         _rtld_global struct.
2539         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise.
2540         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
2541         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
2542         * sysdeps/sparc/sparc64/Makefile: Make hp-timing static only.
2543         * sysdeps/unix/sysv/aix/init-first.c (_dl_fpu_control,
2544         _dl_fpu_control_set): Remove unused externs.
2545         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c: New file.
2546         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c: New file.
2547         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Move procinfo
2548         related variables in _rtld_global struct.
2549         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise.
2550         * sysdeps/unix/sysv/linux/init-first.c (_dl_fpu_control_set): Remove
2551         unused extern.
2552
2553 2002-02-01  Ulrich Drepper  <drepper@redhat.com>
2554
2555         * sysdeps/generic/dl-procinfo.c: New file.
2556
2557 2002-02-01  Andreas Schwab  <schwab@suse.de>
2558
2559         * sysdeps/m68k/dl-machine.h: Don't use multi-line string literals.
2560
2561 2002-02-01  Ulrich Drepper  <drepper@redhat.com>
2562
2563         * elf/rtld.c (_dl_start): Mark as internal_function.
2564         * sysdeps/i386/dl-machine.h (RTLD_START): Pass parameter for _dl_start
2565         in register.
2566         (elf_machine_rel): Cleanup and minor optimization for RTLD_BOOTSTRAP.
2567         General pretty printing.
2568
2569 2002-01-31  Ulrich Drepper  <drepper@redhat.com>
2570
2571         * elf/dl-minimal.c: Define _itoa for 32-bit machines with HP timing.
2572         * elf/dl-reloc.c: Pretty printing.
2573         * sysdeps/generic/ldsodefs.h: Move _dl_hp_timing_overhead and
2574         procinfo-related variables in rtld_global struct.
2575         * elf/dl-support.c: Likewise.
2576         * elf/rtld.c: Likewise.
2577         * sysdeps/i386/i686/Makefile: Likewise.
2578         * sysdeps/i386/i686/hp-timing.c: Likewise.
2579         * sysdeps/i386/i686/hp-timing.h: Likewise.
2580         * sysdeps/ia64/Makefile: Likewise.
2581         * sysdeps/ia64/hp-timing.c: Likewise.
2582         * sysdeps/sparc/sparc32/sparcv9/Makefile: Likewise.
2583         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
2584         * sysdeps/unix/sysv/linux/arm/dl-procinfo.c: Likewise.
2585         * sysdeps/unix/sysv/linux/arm/dl-procinfo.h: Likewise.
2586         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
2587         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Likewise.
2588         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Likewise.
2589         * sysdeps/x86_64/Makefile: Likewise.
2590
2591         * sysdeps/generic/ldsodefs.h: Add _dl_load_lock, _dl_lazy,
2592         _dl_dynamic_weak, _dl_fpu_control, _dl_cpuclock_offset, and
2593         _dl_debug_fd to rtld_global.
2594         * elf/Versions: Likewise.
2595         * elf/dl-close.c: Likewise.
2596         * elf/dl-iteratephdr.c: Likewise.
2597         * elf/dl-lookup.c: Likewise.
2598         * elf/dl-misc.c: Likewise.
2599         * elf/dl-open.c: Likewise.
2600         * elf/dl-support.c: Likewise.
2601         * elf/do-lookup.h: Likewise.
2602         * elf/rtld.c: Likewise.
2603         * sysdeps/generic/dl-cache.c: Likewise.
2604         * sysdeps/generic/dl-sysdep.c: Likewise.
2605         * sysdeps/ia64/Versions: Likewise.
2606         * sysdeps/unix/clock_gettime.c: Likewise.
2607         * sysdeps/unix/clock_settime.c: Likewise.
2608         * sysdeps/unix/sysv/linux/init-first.c: Likewise.
2609         * sysdeps/sparc/Versions: Removed.
2610         * sysdeps/i386/i686/Versions : Removed.
2611         * sysdeps/x86_64/Versions: Removed.
2612         * configure.in: Define HAVE_PROTECTED if .protected is available.
2613         * config.h.in: Add entry for HAVE_PROTECTED.
2614
2615 2002-01-31  Jakub Jelinek  <jakub@redhat.com.
2616
2617         * sysdeps/alpha/dl-machine.h: Move global variables for SHARED
2618         code in struct _rtld_global.  Export this struct, remove all
2619         exports for the signal variables.
2620         * sysdeps/arm/dl-machine: Likewise.
2621         * sysdeps/generic/dl-origin: Likewise.
2622         * sysdeps/generic/dl-sysdep: Likewise.
2623         * sysdeps/generic/dl-cache: Likewise.
2624         * sysdeps/hppa/dl-fptr: Likewise.
2625         * sysdeps/hppa/dl-machine: Likewise.
2626         * sysdeps/cris/dl-machine: Likewise.
2627         * sysdeps/i386/dl-machine: Likewise.
2628         * sysdeps/ia64/dl-machine: Likewise.
2629         * sysdeps/m68k/dl-machine: Likewise.
2630         * sysdeps/mach/hurd/dl-sysdep: Likewise.
2631         * sysdeps/mips/mips64/dl-machine: Likewise.
2632         * sysdeps/mips/dl-machine: Likewise.
2633         * sysdeps/powerpc/elf/libc-start: Likewise.
2634         * sysdeps/powerpc/dl-machine: Likewise.
2635         * sysdeps/powerpc/dl-start: Likewise.
2636         * sysdeps/sparc/sparc32/dl-machine: Likewise.
2637         * sysdeps/sparc/sparc64/dl-machine: Likewise.
2638         * sysdeps/sh/dl-machine: Likewise.
2639         * sysdeps/s390/s390-32/dl-machine: Likewise.
2640         * sysdeps/s390/s390-64/dl-machine: Likewise.
2641         * sysdeps/unix/sysv/aix/libc-start: Likewise.
2642         * sysdeps/unix/sysv/aix/start-libc: Likewise.
2643         * sysdeps/unix/sysv/linux/ia64/dl-static: Likewise.
2644         * sysdeps/unix/sysv/linux/m68k/getpagesize: Likewise.
2645         * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize: Likewise.
2646         * sysdeps/x86_64/dl-machine: Likewise.
2647
2648 2002-01-31  Ulrich Drepper  <drepper@redhat.com>
2649
2650         * sysdeps/posix/readv.c: Don't use alloca if the memory requirements
2651         are too high.
2652
2653 2002-01-31  Andreas Schwab  <schwab@suse.de>
2654
2655         * sysdeps/posix/readv.c: Check for ssize_t overflow.
2656
2657 2002-01-31  Andreas Schwab  <schwab@suse.de>
2658
2659         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Fix leftover
2660         reference to _dl_pagesize.
2661
2662 2002-01-30  Ulrich Drepper  <drepper@redhat.com>
2663
2664         * Versions.def [ld]: Add GLIBC_2.3.
2665         * elf/dl-addr.c: Move global variables for SHARED code in struct
2666         _rtld_global.  Export this struct, remove all exports for the
2667         signal variables.
2668         * elf/dl-close.c: Likewise.
2669         * elf/dl-conflict.c: Likewise.
2670         * elf/dl-debug.c: Likewise.
2671         * elf/dl-deps.c: Likewise.
2672         * elf/dl-dst.h: Likewise.
2673         * elf/dl-error.c: Likewise.
2674         * elf/dl-fini.c: Likewise.
2675         * elf/dl-init.c: Likewise.
2676         * elf/dl-iteratephdr.c: Likewise.
2677         * elf/dl-libc.c: Likewise.
2678         * elf/dl-load.c: Likewise.
2679         * elf/dl-lookup.c: Likewise.
2680         * elf/dl-minimal.c: Likewise.
2681         * elf/dl-object.c: Likewise.
2682         * elf/dl-open.c: Likewise.
2683         * elf/dl-profile.c: Likewise.
2684         * elf/dl-profstub.c: Likewise.
2685         * elf/dl-reloc.c: Likewise.
2686         * elf/dl-runtime.c: Likewise.
2687         * elf/dl-support.c: Likewise.
2688         * elf/dl-sym.c: Likewise.
2689         * elf/dl-version.c: Likewise.
2690         * elf/do-lookup.h: Likewise.
2691         * elf/do-rel.h: Likewise.
2692         * elf/dynamic-link.h: Likewise.
2693         * elf/rtld.c: Likewise.
2694         * sysdeps/generic/dl-cache.c: Likewise.
2695         * sysdeps/generic/dl-sysdep.c: Likewise.
2696         * sysdeps/generic/ldsodefs.h: Likewise.
2697         * sysdeps/generic/libc-start.c: Likewise.
2698         * sysdeps/i386/dl-machine.h: Likewise.
2699         * sysdeps/ia64/dl-fptr.c: Likewise.
2700         * sysdeps/ia64/dl-machine.h: Likewise.
2701         * sysdeps/unix/sysv/linux/dl-librecon.h: Likewise.
2702         * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
2703         * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise.
2704         * sysdeps/unix/sysv/linux/getclktck.c: Likewise.
2705         * sysdeps/unix/sysv/linux/getpagesize.c: Likewise.
2706         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
2707         * sysdeps/unix/sysv/linux/ia64/dl-static.c: Likewise.
2708         * sysdeps/unix/sysv/linux/ia64/getpagesize.c: Likewise.
2709
2710 2002-01-29  Ulrich Drepper  <drepper@redhat.com>
2711
2712         * sysdeps/ia64/dl-lookupcfg.h (DL_AUTO_FUNCTION_ADDRESS): Add cast
2713         to avoid warning
2714         (DL_STATIC_FUNCTION_ADDRESS): Likewise.
2715
2716         * elf/dl-lookup.c: Only define or handle _dl_num_relocations for the
2717         SHARED version.
2718         * elf/dl-reloc.c: Likewise for _dl_num_cache_relocations.
2719
2720         * elf/rtld.c (_dl_start): Use __builtin_memset if available.
2721
2722 2002-01-29  Ben Collins  <bcollins@debian.org>
2723
2724         * string/bits/string2.h (__mempcpy): Protect size arg for
2725         addition when using __builtin_memcpy.
2726
2727 2002-01-29  Ulrich Drepper  <drepper@redhat.com>
2728
2729         * stdlib/Makefile (tests): Add tst-qsort.
2730         * stdlib/tst-qsort.c: New file.  Written by Paul Eggert.
2731
2732         * manual/signal.texi (Process Signal Mask): Document that
2733         pthread_sigmask, not sigprocmask, must be used in MT programs.
2734         Patch by Bertold Kolics <Bertold.Kolics@Sun.COM>.
2735
2736         * misc/hsearch_r.c (hsearch_r): Don't insert anything if entry is
2737         found.
2738         * misc/Makefile (tests): Add tst-hsearch.
2739         * misc/tst-hsearch.c: New file.
2740
2741 2002-01-18  Wolfram Gloger  <wg@malloc.de>
2742
2743         * malloc/malloc.c: Rewrite, adapted from Doug Lea's malloc-2.7.0.c.
2744         * malloc/malloc.h: Likewise.
2745         * malloc/thread-m.h: Spinlock definitions for x86/x86_64.
2746         * malloc/arena.c: New file.
2747         * malloc/hooks.c: New file.
2748         * malloc/tst-mallocstate.c: New file.
2749         * malloc/Makefile: Add new testcase tst-mallocstate.
2750         Add arena.c and hooks.c to distribute.  Fix commented CPPFLAGS.
2751
2752 2002-01-28  Ulrich Drepper  <drepper@redhat.com>
2753
2754         * stdlib/msort.c: Remove last patch.  The optimization violates the
2755         same rule which qsort.c had problems with.
2756
2757 2002-01-27  Paul Eggert  <eggert@twinsun.com>
2758
2759         * stdlib/qsort.c (_quicksort): Do not apply the comparison function
2760         to a pivot element that lies outside the array to be sorted, as
2761         ISO C99 requires that the comparison function be called only with
2762         addresses of array elements [PR libc/2880].
2763
2764 2002-01-28  Ulrich Drepper  <drepper@redhat.com>
2765
2766         * elf/dl-load.c (_dl_map_object): Remove incorrect optimization
2767         for SHARED code.  Reported by Ben Collins <bcollins@debian.org>.
2768
2769         * timezone/asia: Update from tzdata2002b.
2770         * timezone/australasia: Likewise.
2771         * timezone/backward: Likewise.
2772         * timezone/europe: Likewise.
2773         * timezone/leapseconds: Likewise.
2774         * timezone/iso3166.tab: Likewise.
2775         * timezone/zone.tab: Likewise.
2776
2777 2002-01-23  Richard Henderson  <rth@redhat.com>
2778
2779         * sysdeps/alpha/Makefile (pic-ccflag): New variable.
2780
2781 2002-01-28  Ulrich Drepper  <drepper@redhat.com>
2782
2783         * string/strxfrm.c: Allocate one more byte for rulearr and clear
2784         this element [PR libc/2855].
2785
2786         * string/strcoll.c: Handle zero-length arguments specially
2787         [PR libc/2856].
2788
2789 2002-01-23  Jakub Jelinek  <jakub@redhat.com>
2790
2791         * string/bits/string2.h (__mempcpy): For gcc 3.0+, don't use
2792         __mempcpy_small but instead use __builtin_memcpy ( , , n) + n for
2793         short lengths and constant src.
2794         (strcpy): Don't optimize for gcc 3.0+.
2795         (__stpcpy): For gcc 3.0+, don't use
2796         __stpcpy_small but instead use __builtin_strcpy (, src) + strlen (src)
2797         for short string literal src.
2798
2799 2002-01-23  Jeroen Dobbelaere  <jeroen.dobbelaere@acunia.com>
2800
2801         * sysdeps/unix/sysv/linux/configure.in (libc_cv_gcc_unwind_find_fde):
2802         Set for arm, too.
2803
2804 2001-01-22  Paul Eggert  <eggert@twinsun.com>
2805
2806         * manual/llio.texi (Linked Channels, Cleaning Streams):
2807         Make it clearer that a just-opened input stream might need cleaning.
2808
2809 2002-01-21  H.J. Lu  <hjl@gnu.org>
2810
2811         * sysdeps/mips/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC):
2812         Don't use label at end of compound statement.
2813
2814 2002-01-28  Stephen L Moshier  <moshier@mediaone.net>
2815
2816         * sysdeps/ieee754/ldbl-96/e_lgammal_r.c (__ieee754_lgammal_r):
2817         Remove test for negative integer arg; sin_pi does it correctly.
2818
2819 2002-01-20  Ulrich Drepper  <drepper@redhat.com>
2820
2821         * nscd/Makefile (distribute): Filter out xmalloc.c.
2822
2823 2002-01-19  Ulrich Drepper  <drepper@redhat.com>
2824
2825         * libio/fileops.c (_IO_file_underflow_mmap): Don't define as static.
2826         Set offset if read end wasn't the buffer end.
2827         (_IO_file_seekoff_mmap): New function.
2828         (_IO_file_xsgetn_mmap): New function.
2829         (_IO_file_jumps_mmap): Use the two new functions.
2830         * libio/wfileops.c (_IO_wfile_underflow_mmap): Handle end read buffer
2831         != end buffer.
2832         * libio/libioP.h: Declare _IO_file_seekoff_mmap and
2833         _IO_file_underflow_mmap.
2834         * libio/iofopen.c: Don't position file descriptor at end of file.
2835         * libio/tst-widetext.c: Improve error messages.
2836         * stdio-common/tst-rndseek.c: Likewise.
2837
2838 2002-01-18  Ulrich Drepper  <drepper@redhat.com>
2839
2840         * sysdeps/unix/sysv/linux/bits/statvfs.h: Avoid warning about comma at
2841         end of enum for !_GNU_SOURCE.
2842         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: Likewise.
2843         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: Likewise.
2844         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Likewise.
2845         * sysdeps/mach/hurd/bits/statvfs.h: Don't define non-standard ST_*
2846         values unless _GNU_SOURCE.
2847
2848         * iconvdata/tcvn5712-1.c: Minor cleanups.
2849
2850 2002-01-18  Andreas Schwab  <schwab@suse.de>
2851
2852         * sysdeps/unix/sysv/linux/configure.in
2853         (libc_cv_gcc_unwind_find_fde): Set for m68k, too.
2854
2855 2002-01-16  Roger Sayle  <roger@eyesopen.com>
2856
2857         * stdlib/msort.c (msort_with_tmp): Replace implementation with
2858         more efficient "Towers of Hanoi" mergesort.
2859         (hanoi_sort, hanoi_sort_int, hanoi_sort_long): New functions,
2860         for generic, sizeof(int) and sizeof(long) variants respectively.
2861
2862 2002-01-17  Ulrich Drepper  <drepper@redhat.com>
2863
2864         * manual/syslog.texi (openlog): Describe possible problems with
2865         first parameter.
2866         Patch by Christopher Allen Wing <wingc@engin.umich.edu>.
2867
2868         * nscd/nscd.c (drop_privileges): Removed.  Adjust caller.
2869         * nscd/connections.c (begin_drop_privileges): New function.
2870         (finish_drop_privileges): New function.
2871         (nscd_init): Call the new functions which also install all groups
2872         for the server user.
2873         * nscd/Makefile (nscd-modules): Add xmalloc for nscd.
2874         Patch by Christopher Allen Wing <wingc@engin.umich.edu>.
2875
2876 2002-01-17  H.J. Lu  <hjl@gnu.org>
2877
2878         * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Remove
2879         `const' from `got'.
2880
2881 2002-01-17  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2882
2883         * sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S: Use 64 bit
2884         instructions for pointer operations.
2885         * sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S: Likewise.
2886
2887 2002-01-17  Andreas Jaeger  <aj@suse.de>
2888
2889         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h: GCC 3.1 has
2890         __uint128_t build-in.
2891
2892         * sysdeps/unix/sysv/linux/configure.in: Fix check for S390 and
2893         PowerPC, sync with 2.2 branch.
2894
2895 2002-01-16  Ulrich Drepper  <drepper@redhat.com>
2896
2897         * posix/getconf.c: Update copyright year.
2898         * nss/getent.c: Likewise.
2899         * nscd/nscd_nischeck.c: Likewise.
2900         * iconv/iconvconfig.c: Likewise.
2901         * iconv/iconv_prog.c: Likewise.
2902         * elf/ldconfig.c: Likewise.
2903         * catgets/gencat.c: Likewise.
2904         * csu/version.c: Likewise.
2905         * elf/ldd.bash.in: Likewise.
2906         * elf/sprof.c (print_version): Likewise.
2907         * locale/programs/locale.c: Likewise.
2908         * locale/programs/localedef.c: Likewise.
2909         * nscd/nscd.c (print_version): Likewise.
2910         * debug/xtrace.sh: Likewise.
2911         * malloc/memusage.sh: Likewise.
2912         * malloc/mtrace.pl: Likewise.
2913
2914 2002-01-16  Andreas Schwab  <schwab@suse.de>
2915
2916         * sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed: Fix regexp to
2917         reliably remove "-ia64" from rtld name.
2918
2919 2002-01-16  Ulrich Drepper  <drepper@redhat.com>
2920
2921         * iconvdata/gb18030.c: Bug fixes and support for more characters.
2922         Patch by Yu Shao <yshao@redhat.com>.
2923
2924 2002-01-16  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2925
2926         * sysdeps/unix/sysv/linux/s390/swapcontext.c: Remove.
2927         * sysdeps/unix/sysv/linux/s390/s390-32/swapcontext.S: New file.
2928         * sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S: New file.
2929
2930 2002-01-14  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2931
2932         * sysdeps/s390/fpu/libm-test-ulps: Update.
2933
2934 2002-01-11  Ulrich Drepper  <drepper@redhat.com>
2935
2936         * elf/elf.h: Update x86 relocations.
2937
2938 2002-01-10  Ulrich Drepper  <drepper@redhat.com>
2939
2940         * locale/programs/charmap.c (new_width): Check whether byte
2941         sequences for both ends of range have the same length.
2942
2943 2002-01-09  Jakub Jelinek  <jakub@redhat.com>
2944
2945         * elf/elf.h (SHN_UNDEF): Remove duplicate definition.
2946
2947 2002-01-09  Jakub Jelinek  <jakub@redhat.com>
2948
2949         * sysdeps/alpha/fpu/e_sqrt.c (__ieee754_sqrt): Don't use multi-line
2950         string literals.
2951         (__full_ieee754_sqrt): Add __attribute_used__.
2952
2953 2002-01-10  Ulrich Drepper  <drepper@redhat.com>
2954
2955         * sysdeps/generic/group_member.c (__group_member): Also check
2956         groups[0] [PR libc/2781].
2957
2958 2002-01-08  Ulrich Drepper  <drepper@redhat.com>
2959
2960         * Makefile (distribute): Add scripts/cpp.
2961         * elf/Makefile (distribute): Add reldep6mod[01234].c,
2962         unwind-dw2.c, unwind-dw2-fde.c, unwind.h, unwind-pe.h,
2963         unwind-dw2-fde.h, and dwarf2.h.
2964         * sysdeps/unix/bsd/bsd4.4/Dist: New file.
2965         * sysdeps/unix/sysv/aix/Dist: Add sysv_termio.h and start-libc.c.
2966         * sysdeps/unix/sysv/linux/ia64/Dist: Add ldd-rewrite.sed.
2967         * sysdeps/unix/sysv/linux/s390/Dist: Likewise.
2968
2969 2002-01-07  Roland McGrath  <roland@frob.com>
2970
2971         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Use
2972         volatile on type of ARGC so the compiler doesn't get clever.
2973
2974 2002-01-07  Andreas Jaeger  <aj@suse.de>
2975
2976         * sysdeps/generic/bits/byteswap.h: Prevent double inclusion.
2977         * sysdeps/i386/bits/byteswap.h: Likewise.
2978         * sysdeps/ia64/bits/byteswap.h: Likewise.
2979         * sysdeps/m68k/bits/byteswap.h: Likewise.
2980         * sysdeps/s390/s390-32/bits/byteswap.h: Likewise.
2981         * sysdeps/s390/s390-64/bits/byteswap.h: Likewise [PR libc/2757].
2982
2983 2002-01-02  Bruno Haible  <bruno@clisp.org>
2984
2985         * intl/plural.y: Fix %expect count.
2986
2987 2002-01-03  Jakub Jelinek  <jakub@redhat.com>
2988
2989         * elf/Makefile (routines, shared-only-routines): Add
2990         unwind-dw2-fde-glibc instead of unwind-dw2-fde.
2991         * elf/elf.h (PT_GNU_EH_FRAME): Define.
2992         * sysdeps/generic/unwind-dw2-fde-glibc.c: New file.
2993         * sysdeps/generic/unwind-dw2-fde.c (__register_frame_info_bases):
2994         Optimize if .eh_frame section contains no FDEs.
2995         (__register_frame, __deregister_frame_info_bases,
2996         __deregister_frame): Likewise.
2997         * sysdeps/generic/unwind-dw2.c (execute_cfa_program): Fix
2998         DW_CFA_restore handling.
2999
3000 2002-01-07  Stephen L Moshier  <moshier@mediaone.net>
3001
3002         * sysdeps/ieee754/ldbl-96/s_erfl.c (erfcl): Fix K&R header.
3003
3004         * sysdeps/ieee754/ldbl-96/e_lgammal_r.c (sin_pi): Fix typo in test
3005         for x < 0.25 and restore original range reduction method.
3006         (__ieee754_lgammal_r): Make sure signgam is set before returning.
3007
3008 2002-01-07  Ulrich Drepper  <drepper@redhat.com>
3009
3010         * libio/fileops.c (_IO_file_underflow_mmap): New function.
3011         (_IO_file_close_mmap): New function.
3012         (_IO_file_jumps_mmap): New variable.
3013         * libio/wfileops.c (_IO_wfile_underflow): Reset read pointer before
3014         trying to convert rest of byte buffer.
3015         (_IO_wfile_underflow_mmap): New function.
3016         (_IO_wfile_jumps_mmap): New variable.
3017         * libio/iofopen.c (__fopen_maybe_mmap): New function.
3018         (__fopen_internal): New function.  Split out from _IO_new_fopen.
3019         (_IO_new_fopen): Call __fopen_internal.
3020         * libio/iofopen64.c: Just call __fopen_internal.
3021         * libio/iofdopen.c: Call __fopen_maybe_mmap before returning
3022         successfully.
3023         * libio/iolibio.h: Declare __fopen_internal and __fopen_maybe_mmap.
3024         * libio/libioP.h: Declare _IO_file_jumps_mmap, _IO_wfile_jumps_mmap,
3025         _IO_file_close_mmap.
3026
3027         * sysdeps/gnu/_G_config.h: Define _G_MMAP64.
3028         * sysdeps/unix/sysv/linux/cris/_G_config.h: Likewise.
3029
3030         * stdio-common/Makefile (tests): Add tst-rndseek.
3031         * stdio-common/tst-rndseek.c: New file.
3032
3033 2002-01-05  Roland McGrath  <roland@frob.com>
3034
3035         * config.h.in (HAVE_MIG_RETCODE): New #undef.
3036         * sysdeps/mach/hurd/configure.in (hurd_MIG_RETCODE: New macro
3037         swiped from hurd package's aclocal.m4; use it to set HAVE_MIG_RETCODE.
3038         * sysdeps/mach/hurd/configure: Regenerated.
3039
3040 2002-01-03  Ulrich Drepper  <drepper@redhat.com>
3041
3042         * elf/elf.h: Add more TLS definitions.
3043
3044 2002-01-02  Ulrich Drepper  <drepper@redhat.com>
3045
3046         * include/features.h (__GLIBC_MINOR__): Bump to 3.
3047
3048 2002-01-02  Roland McGrath  <roland@frob.com>
3049
3050         * sysdeps/mach/hurd/sigwait.c (__sigwait): Use __sigandset,
3051         __sigisemptyset.  Don't use MASK uninitialized.
3052
3053         * sysdeps/mach/hurd/sigprocmask.c (__sigprocmask): Use __sigorset.
3054         * hurd/hurdinit.c (_hurd_new_proc_init): Use __sigisemptyset.
3055         * hurd/hurdsig.c (_hurd_internal_post_signal): Use __sigismember,
3056         __sigdelset, __sigaddset, __sigorset.
3057
3058         * sysdeps/generic/htonl.c: Use uint32_t instead of u_int32_t.
3059         * sysdeps/generic/htons.c: Use uint16_t instead of u_int16_t.
3060
3061         * hurd/hurdinit.c (_hurd_ports_use): Return EGRATUITOUS when
3062         _hurd_ports is null.
3063
3064         * hurd/hurdsig.c (_hurdsig_init): Conditionalize exception port setup
3065         for old CMU and new OSF Mach interface flavors.
3066         * hurd/hurdfault.c (_hurdsig_fault_init): Likewise.
3067         * sysdeps/mach/hurd/fork.c (__fork): Likewise.
3068
3069         * hurd/hurdsig.c (_hurd_internal_post_signal): Leave msgh_seqno unset.
3070
3071         * sysdeps/mach/hurd/spawni.c (__spawni) [KERN_INVALID_LEDGER]:
3072         Pass extra arguments to task_create for OSF variant.
3073         * sysdeps/mach/hurd/fork.c (__fork): Likewise.
3074
3075         * sysdeps/powerpc/elf/libc-start.c: Make AUXVEC diddling code
3076         conditional on [HAVE_AUX_VECTOR].
3077
3078         * mach/mach/mach_traps.h (thread_switch, __thread_switch): Use
3079         mach_msg_timeout_t as type of final argument.
3080
3081         * hurd/privports.c (__get_privileged_ports):
3082         Change host_priv_t to mach_port_t in argument type.
3083         * hurd/hurd.h (get_privileged_ports, __get_privileged_ports):
3084         Update decls.
3085
3086         * sysdeps/mach/hurd/i386/bits/sigcontext.h: Protect from
3087         multiple inclusion.  Inhibit #error under [_SYS_UCONTEXT_H].
3088         * sysdeps/mach/hurd/alpha/bits/sigcontext.h: Likewise.
3089         * sysdeps/mach/hurd/hppa/bits/sigcontext.h: Likewise.
3090         * sysdeps/mach/hurd/mips/bits/sigcontext.h: Likewise.
3091         * sysdeps/mach/hurd/powerpc/bits/sigcontext.h: Likewise.
3092
3093 2002-01-01  Roland McGrath  <roland@frob.com>
3094
3095         * sysdeps/mach/hurd/errnos.awk: Tighten up device_types.h matching.
3096
3097 2002-01-01  Ulrich Drepper  <drepper@redhat.com>
3098
3099         * include/stdlib.h: Define inlines for the _l variants of the strto*
3100         functions.
3101
3102 2002-01-01  Roland McGrath  <roland@frob.com>
3103
3104         * sysdeps/mach/hurd/powerpc/intr-msg.h: Remove extraneous backslash.
3105
3106         * mach/Machrules (MIG): Set CPP as well as CC.
3107
3108 2001-12-31  Ulrich Drepper  <drepper@redhat.com>
3109
3110         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Always use C
3111         locale to parse /proc/loadavg [PR libc/2760].
3112
3113 2001-12-31  Jakub Jelinek  <jakub@redhat.com>
3114
3115         * elf/dl-conflict.c: Include sys/param.h.
3116         (RESOLVE_CONFLICT_FIND_MAP): Cast r_offset to ElfW(Addr).
3117         * sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): Avoid
3118         warning.
3119         (TRAMPOLINE_TEMPLATE, RTLD_START): Don't use multi-line string
3120         literals to avoid warnings.
3121
3122 2001-12-31  Andreas Jaeger  <aj@suse.de>
3123
3124         * configure.in: Don't check for gsed since we do not use it anywhere.
3125
3126 2001-12-25  Dmitry V. Levin  <ldv@alt-linux.org>
3127
3128         * io/fts.c: Update from BSD to fix memory leaks.
3129
3130 2001-12-25  Dmitry V. Levin  <ldv@alt-linux.org>
3131
3132         * crypt/md5-crypt.c: Realloc error handling memory leak fix.
3133         * elf/chroot_canon.c: Likewise.
3134         * elf/dl-object.c: Likewise.
3135         * iconv/iconv_charmap.c: Likewise.
3136         * iconv/iconv_prog.c: Likewise.
3137         * libio/iogetdelim.c: Likewise.
3138         * locale/lc-time.c: Likewise.
3139         * stdlib/canonicalize.c: Likewise.
3140         * sunrpc/svc.c: Likewise.
3141         * sysdeps/generic/glob.c: Likewise.
3142
3143 2001-12-19  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3144
3145         * sysdeps/unix/sysv/linux/s390/profil-counter.h: Move/copy to ...
3146         * sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: ... here,
3147         remove high order bit from the program counter.
3148         * sysdeps/unix/sysv/linux/s390/s390-64/profil-counter.h: ... and here.
3149
3150 2001-12-19  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3151
3152         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Remove
3153         unnecessary code and add missing reloc types.
3154         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Add empty
3155         case for reloc type R_390_NONE.
3156
3157 2001-12-28  Andreas Jaeger  <aj@suse.de>
3158
3159         * io/bug-ftw3.c: Include string.h for prototypes.
3160
3161         * crypt/md5test.c (main): Remove unused variable.
3162
3163         * dlfcn/modstatic.c: Add prototype to avoid warning.
3164
3165 2001-12-26  Roland McGrath  <roland@frob.com>
3166
3167         * sysdeps/mach/hurd/sigwait.c (__sigwait): When returning immediately,
3168         check only (SS->pending & MASK) for the signal to return.
3169         From Jeroen Dekkers <jeroen@dekkers.cx>.
3170
3171 2001-12-22  Roland McGrath  <roland@frob.com>
3172
3173         * iconv/skeleton.c [!RESET_INPUT_BUFFER && !SAVE_RESET_STATE]:
3174         Use preprocessor #if conditionals instead of `if' to avoid
3175         warnings about divide by zero in dead code.
3176
3177         * hurd/Versions (libc: GLIBC_2.2.5): Add _hurd_port_set,
3178         _hurd_port_init, and __hurd_self_sigstate.
3179
3180         * mach/Versions (libc: GLIBC_2.2.5): Add mig_strncpy.
3181
3182 2001-12-21  Andreas Jaeger  <aj@suse.de>
3183
3184         * elf/dblloadmod1.c: Add prototype to avoid warning.
3185         * elf/dblloadmod2.c: Likewise.
3186         * elf/dblloadmod3.c: Likewise.
3187         * elf/reldepmod5.c: Likewise.
3188         * elf/reldepmod6.c: Likewise.
3189
3190         * elf/dl-conflict.c (_dl_resolve_conflicts): Add unused attribute
3191         for resolve_conflict_map since RESOLVE_CONFLICT_FIND_MAP is not
3192         used on all architectures.
3193
3194         * sunrpc/svc_tcp.c: Add noreturn attribute for
3195         svctcp_rendezvous_abort.
3196         * sunrpc/svc_unix.c: Likewise for svcunix_rendezvous_abort.
3197
3198         * sysdeps/generic/strstr.c (strstr): Add paranthese for assignment
3199         to avoid warning.
3200
3201 2001-12-19  Jakub Jelinek  <jakub@redhat.com>
3202
3203         * manual/llio.texi (aio_fsync): Fix a typo.
3204         Patch by Tammy Fox <tfox@redhat.com>.
3205
3206 2001-12-18  Jakub Jelinek  <jakub@redhat.com>
3207
3208         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (clone): Subtract
3209         stack bias from child stack pointer before passing it to clone syscall.
3210
3211 2001-12-18  Ulrich Drepper  <drepper@redhat.com>
3212
3213         * sysdeps/posix/sysconf.c (__sysconf): Respect POSIX minimum for
3214         _SC_TZNAME_MAX.
3215         * sysdeps/generic/sysconf.c (__sysconf): Likewise.
3216         Reported by Thorsten Kukuk <kukuk@suse.de>.
3217
3218         * sysdeps/unix/grantpt.c (grantpt): Correct typo in comment and
3219         add some casts.
3220
3221         * sysdeps/unix/sysv/linux/grantpt.c: Make __unix_grantpt static.
3222
3223 2001-12-18  Thorsten Kukuk  <kukuk@suse.de>
3224
3225         * sysdeps/unix/sysv/linux/grantpt.c: Make errno results standard
3226         conforming: return EBADF if file descriptor is invalid and EINVAL
3227         if file descriptor is no valid tty.
3228         * login/tst-grantpt.c: New file.
3229         * login/Makefile (tests): Add tst-grantpt.
3230
3231 2001-12-17  Ulrich Drepper  <drepper@redhat.com>
3232
3233         * io/ftw.c (ftw_dir): Handle inaccessibility of toplevel dir
3234         different than implemented in last patch.
3235         * io/bug-ftw3.c: Adjust test for changed handling of
3236         inaccessibility of toplevel dir.
3237
3238 2001-12-16  Roland McGrath  <roland@frob.com>
3239
3240         * nss/nsswitch.c (__nss_next): Don't use __FUNCTION__ as literal.
3241         * grp/initgroups.c (internal_getgrouplist): Likewise.
3242
3243         * hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): Add `break' after
3244         `default:' to silence new GCC warning.
3245         Rewrite cast of lvalue to silence new GCC warning.
3246
3247         * sysdeps/mach/hurd/i386/init-first.c: Avoid multi-line strings in asm.
3248
3249         * sysdeps/mach/hurd/spawni.c: New file, by me with a
3250         couple fixes by Neal H Walfield <neal@cs.uml.edu>.
3251
3252 2001-12-14  Ulrich Drepper  <drepper@redhat.com>
3253
3254         * sysdeps/generic/strstr.c (strstr): Update.  New optimized version.
3255         Patch by Stephen R. van den Berg.
3256
3257         * crypt/md5.h: Define md5_uintptr.
3258
3259 2001-12-13  Ulrich Drepper  <drepper@redhat.com>
3260
3261         * libio/tst_swprintf.c (main): Add test for string argument with
3262         zero precision.
3263         * stdio-common/Makefile (tests): Add tst-sprintf.
3264         * stdio-common/tst-sprintf.c: New file.
3265
3266 2001-12-13  Andreas Schwab  <schwab@suse.de>
3267
3268         * stdio-common/vfprintf.c (process_string_arg): Correctly handle
3269         zero precision with wide character string format.
3270
3271 2001-12-13  Thorsten Kukuk  <kukuk@suse.de>
3272
3273         * sysdeps/posix/cuserid.c (cuserid): If we don't find the UID,
3274         but have a user supplied buffer, return the empty buffer, not NULL.
3275
3276 2001-12-13  Ulrich Drepper  <drepper@redhat.com>
3277
3278         * crypt/md5.c (md5_process_bytes): Correct handling of alignment.
3279         Patch by Eric Sharkey <sharkey@netrics.com>.
3280
3281         * crypt/md5test.c (main): Add test for multiple calls to
3282         __md5_process_bytes to itererate over input string.
3283
3284 2001-12-12  Ulrich Drepper  <drepper@redhat.com>
3285
3286         * nis/nis_findserv.c (__nis_findfastest_with_timeout): Mostly the code
3287         from __nis_findfastest.  Take timeout value from parameter.
3288         (__nis_findfastest): Call __nis_findfastest_with_timeout repeatedly.
3289         * nis/nis_intern.h: Define parameters controlling __nis_findfastest
3290         [PR libc/2520].  Patch by Alexander Belopolsky <alexb@rentec.com>.
3291
3292 2001-12-12  Andreas Jaeger  <aj@suse.de>
3293
3294         * configure.in: Use -nostartfiles -nostdlib for linker tests, fix
3295         combreloc test so that it works in this case.
3296
3297         * sysdeps/arm/dl-machine.h (elf_machine_rela): Fix typo in last patch.
3298
3299 2001-12-12  NIIBE Yutaka  <gniibe@m17n.org>
3300
3301         * sysdeps/sh/Makefile: New file.
3302         * sysdeps/sh/_mcount.S: New file.
3303         * sysdeps/sh/sysdep.h (CALL_MCOUNT): Implemented.
3304         * sysdeps/sh/machine-gmon.h: Remove "NOTYET" comment, as we are ready.
3305
3306 2001-12-11  Ulrich Drepper  <drepper@redhat.com>
3307
3308         * resolv/nss_dns/dns-host.c (getanswer_r): Remove MAX_NR_ADDRS
3309         limitation [PR libc/2564].
3310
3311 2001-12-11  Jakub Jelinek  <jakub@redhat.com>
3312
3313         * elf/Makefile (dl-routines): Add conflict.
3314         (rtld-ldscript-in, rtld-ldscript, rtld-parms): Remove.
3315         (ld.so): Add _begin local symbol.
3316         * elf/elf.h (DT_VALTAGIDX, DT_VALNUM, DT_ADDRTAGIDX, DT_ADDRNUM):
3317         Define.
3318         * elf/dl-deps.c (_dl_build_local_scope): New.
3319         (_dl_map_object_deps): If LD_TRACE_PRELINKING, compute local scopes
3320         of all libraries.
3321         * elf/do-rel.h (VALIDX): Define.
3322         (elf_dynamic_do_rel): If ELF_MACHINE_PLT_REL is defined, don't do
3323         lazy binding for RELA.  If DT_GNU_PRELINKED, DT_RELACOUNT relocations
3324         can be skipped.
3325         * elf/dl-conflict.c: New file.
3326         * elf/dl-lookup.c (_dl_debug_bindings): New.
3327         (_dl_lookup_symbol): Use _dl_debug_bindings.  Reference_name is always
3328         non-NULL.
3329         (_dl_lookup_symbol_skip): Likewise.
3330         (_dl_lookup_versioned_symbol): Likewise.
3331         (_dl_lookup_versioned_symbol_skip): Likewise.
3332         * elf/dl-runtime.c (PLTREL): If ELF_MACHINE_PLT_REL is defined,
3333         define to ElfW(Rel).
3334         * elf/dynamic-link.h (elf_get_dynamic_info): Record selected dynamic
3335         tags in the DT_VALRNGLO..DT_VALRNGHI and DT_ADDRRNGLO..DT_ADDRRNGHI
3336         ranges.
3337         Don't adjust address dynamic tags if l_addr is 0.
3338         * elf/rtld.c (_dl_trace_prelink, _dl_trace_prelink_map): New variables.
3339         (_dl_start): Skip ELF_DYNAMIC_RELOCATE if ld.so is prelinked.
3340         (VALIDX, ADDRIDX): Define.
3341         (_dl_start_final): Initialize _dl_rtld_map's l_map_start and l_map_end.
3342         (dl_main): Print library list for LD_TRACE_PRELINKING.
3343         If prelinking information can be used, skip relocating libraries and
3344         call _dl_resolve_conflicts instead.
3345         (process_envvars): Handle LD_TRACE_PRELINKING envvar.
3346         * elf/dl-load.c (_dl_map_object): Don't create fake libs
3347         if LD_TRACE_PRELINKING.
3348         * include/link.h (struct link_map) [l_info]: Add DT_VALNUM
3349         + DT_ADDRNUM.
3350         * sysdeps/generic/ldsodefs.h (_dl_trace_prelink_map): New declaration.
3351         (DL_DEBUG_PRELINK): Define.
3352         (_dl_resolve_conflicts): Add prototype.
3353
3354         * sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): Reinitialize
3355         .plt for prelinked libraries where prelinking info cannot be used.
3356         (elf_machine_rela): If relocating R_ALPHA_JMP_SLOT in .gnu.conflict
3357         section, use RESOLVE_CONFLICT_FIND_MAP to find out reloc's link_map.
3358         * sysdeps/arm/bits/link.h: New file.
3359         * sysdeps/arm/dl-machine.h (elf_machine_runtime_setup): Save original
3360         content of .got[1].
3361         (ELF_MACHINE_NO_RELA): Only define if RTLD_BOOTSTRAP.
3362         (ELF_MACHINE_PLT_REL): Define.
3363         (elf_machine_rela, elf_machine_rela_relative): New.
3364         (elf_machine_lazy_rel): Reinitialize R_ARM_JUMP_SLOT address instead
3365         of adjusting it if prelinked and prelinking cannot be used.
3366         * sysdeps/i386/bits/link.h: New file.
3367         * sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Save original
3368         content of .got[1].
3369         (ELF_MACHINE_NO_RELA): Only define if RTLD_BOOTSTRAP.
3370         (ELF_MACHINE_PLT_REL): Define.
3371         (elf_machine_rela, elf_machine_rela_relative): New.
3372         (elf_machine_lazy_rel): Reinitialize R_386_JUMP_SLOT address instead
3373         of adjusting it if prelinked and prelinking cannot be used.
3374         * sysdeps/powerpc/dl-machine.h (elf_machine_rela): If relocating
3375         conflicts, skip finaladdr computation.  Use RESOLVE_CONFLICT_FIND_MAP
3376         to find out map for R_PPC_JMP_SLOT relocs.
3377         * sysdeps/sparc/sparc32/dl-machine.h (VALIDX): Define.
3378         (OPCODE_BA): Define.
3379         (elf_machine_runtime_setup): Reinitialize .plt for prelinked
3380         libraries where prelinking info cannot be used.
3381         (sparc_fixup_plt): Renamed from elf_machine_fixup_plt.
3382         (elf_machine_fixup_plt): Call sparc_fixup_plt.
3383         (elf_machine_rela): Set value to 0 if relocating conflicts.
3384         Call sparc_fixup_plt for R_SPARC_JMP_SLOT.
3385         * sysdeps/sparc/sparc64/dl-machine.h (VALIDX): Define.
3386         (sparc64_fixup_plt): Fix a typo.
3387         (elf_machine_rela): Set value to 0 if relocating conflicts.
3388         Handle R_SPARC_JMP_SLOT relocs when relocating conflicts.
3389         (elf_machine_runtime_setup): Reinitialize .plt for prelinked
3390         libraries where prelinking info cannot be used.
3391         * sysdeps/sh/bits/link.h: New file.
3392         * sysdeps/sh/dl-machine.h (elf_machine_runtime_setup): Save original
3393         content of .got[1].
3394         (elf_machine_lazy_rel): Reinitialize R_SH_JMP_SLOT address instead
3395         of adjusting it if prelinked and prelinking cannot be used.
3396         * sysdeps/s390/s390-32/bits/link.h: New file.
3397         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_runtime_setup):
3398         Save original content of .got[1].
3399         (elf_machine_lazy_rel): Reinitialize R_390_JMP_SLOT address instead
3400         of adjusting it if prelinked and prelinking cannot be used.
3401         * sysdeps/s390/s390-64/bits/link.h: New file.
3402         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_runtime_setup):
3403         Save original content of .got[1].
3404         (elf_machine_lazy_rel): Reinitialize R_390_JMP_SLOT address instead
3405         of adjusting it if prelinked and prelinking cannot be used.
3406         * sysdeps/x86_64/bits/link.h: New file.
3407         * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup):
3408         Save original content of .got[1].
3409         (elf_machine_lazy_rel): Reinitialize R_X86_64_JMP_SLOT address instead
3410         of adjusting it if prelinked and prelinking cannot be used.
3411
3412 2001-12-11  Ulrich Drepper  <drepper@redhat.com>
3413
3414         * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Use sizeof
3415         where appropriate instead of numbers.  Little optimizations.
3416
3417 2001-12-10  Roland McGrath  <roland@frob.com>
3418
3419         * sysdeps/mach/hurd/bind.c (bind): Don't deallocate IFSOCK if we never
3420         set it.
3421
3422         * shlib-versions [USE_IN_LIBIO] (.*-.*-gnu-gnu.*): Set default
3423         set to GLIBC_2.2.5, not GLIBC_2.2.4.
3424
3425         * sysdeps/mach/hurd/configure.in (libc_cv_gcc_unwind_find_fde):
3426         Fix conditionals so this is set by default for stdio and not for libio.
3427         * sysdeps/mach/hurd/configure: Regenerated.
3428
3429 2001-12-10  Thorsten Kukuk  <kukuk@suse.de>
3430
3431         * io/ftw.c (ftw_startup): Check, if the path is search and readable.
3432
3433 2001-12-10  Ulrich Drepper  <drepper@redhat.com>
3434
3435         * io/Makefile (tests): Add bug-ftw3.
3436         * io/bug-ftw3.c: New file.
3437
3438         * sysdeps/generic/glob.c (glob): Return only pattern if nothing
3439         matches and GLOB_NOCHECK is set.
3440         * posix/globtest.sh: Correct expected result for NOCHECK test.
3441
3442         * po/ca.po: Update from translation team.
3443
3444 2001-12-09  Ulrich Drepper  <drepper@redhat.com>
3445
3446         Implement transliteration of characters in strings of the locale
3447         definitions.
3448         * locale/programs/linereader.c: Adjust for additional parameter to
3449         lr_token.
3450         (get_string): If character <Uxxxx> is not found try to transliterate
3451         it.
3452         * locale/programs/ld-ctype.c: Adjust for additional parameter to
3453         lr_token.  Add const to charmap parameter of all functions.
3454         (find_translit, find_translit2): New functions.
3455         * locale/programs/charmap.c: Adjust for additional parameter to
3456         lr_token.
3457         * locale/programs/repertoire.c: Likewise.
3458         * locale/programs/linereader.h: Likewise.
3459         * locale/programs/ld-address.c: Likewise.  Add const to charmap
3460         parameter of all functions.
3461         * locale/programs/ld-collate.c: Likewise.
3462         * locale/programs/ld-identification.c: Likewise.
3463         * locale/programs/ld-measurement.c: Likewise.
3464         * locale/programs/ld-messages.c: Likewise.
3465         * locale/programs/ld-monetary.c: Likewise.
3466         * locale/programs/ld-name.c: Likewise.
3467         * locale/programs/ld-numeric.c: Likewise.
3468         * locale/programs/ld-paper.c: Likewise.
3469         * locale/programs/ld-paper.c: Likewise.
3470         * locale/programs/ld-telephone.c: Likewise.
3471         * locale/programs/ld-time.c: Likewise.
3472         * locale/programs/locfile.c: Likewise.
3473         * locale/programs/localedef.c: Likewise.
3474         * locale/programs/localedef.h: Likewise.
3475         * locale/programs/locfile.h: Likewise.  Add declaration for
3476         find_translit.
3477         * locale/programs/simple-hash.c: Add const to first parameter of
3478         find_entry, iterate_table, and lookup.
3479         * locale/programs/simple-hash.h: Likewise.
3480         * locale/localeinfo.h: Don't define __LC_LAST here.  Include <locale.h>
3481         instead.
3482         * include/locale.h: Define __LC_LAST.
3483         * iconv/Makefile (CFLAGS-linereader.c): Define to -DNO_TRANSLITERATION.
3484
3485 2001-12-07  Geoff Keating  <geoffk@redhat.com>
3486
3487         * sysdeps/powerpc/Dist: Update for recent FP changes.
3488         * sysdeps/powerpc/fpu/Dist: Likewise.
3489
3490 2001-12-07  Andreas Schwab  <schwab@suse.de>
3491
3492         * sysdeps/unix/sysv/linux/opensock.c: Include <string.h>.
3493
3494 2001-12-06  Geoff Keating  <geoffk@redhat.com>
3495
3496         * sysdeps/powerpc/Makefile (sysdep_routines): Don't build the fpr
3497         save/restore functions here.
3498         (libm-support): Don't define these functions here.
3499         * sysdeps/powerpc/fpu/Makefile: Build the fpr save/restore
3500         functions here.
3501         * sysdeps/powerpc/fe_nomask.c: Move to...
3502         * sysdeps/powerpc/fpu/fe_nomask.c: ... here.
3503         * sysdeps/powerpc/fprrest.S: Move to...
3504         * sysdeps/powerpc/fpu/fprrest.S: ... here.
3505         * sysdeps/powerpc/fprsave.S: Move to...
3506         * sysdeps/powerpc/fpu/fprsave.S: ... here.
3507
3508 2001-12-06  Ulrich Drepper  <drepper@redhat.com>
3509
3510         * sysdeps/unix/sysv/linux/opensock.c: New file.
3511
3512 2001-12-06  Geoff Keating  <geoffk@redhat.com>
3513
3514         * config.make.in (with-fp): Define from configure.
3515         * configure.in: Substitute with_fp.
3516         * configure: Regenerate.
3517         * sysdeps/powerpc/Makefile: Set -msoft-float when --without-fp is
3518         specified, and don't change FPU environment.
3519
3520 2001-12-06  Ulrich Drepper  <drepper@redhat.com>
3521
3522         * libio/vasprintf.c (_IO_vasprintf): Free buffer on failure.
3523         * assert/assert.c: Check result of __asprintf call and don't use
3524         string if it failed.
3525         * assert/assert-perr.c: Likewise.
3526         * inet/rcmd.c: Likewise.
3527         * locale/programs/localedef.c (main): Check result of
3528         construct_output_path and exit if it failed.
3529         (construct_output_path): Check result of asprintf and mkdir calls and
3530         fail if they failed.
3531         * posix/getopt.c: Check result of __asprintf calls and fail if
3532         they failed.
3533         Patch by Dmitry V. Levin <ldv@alt-linux.org>.
3534
3535 2001-12-05  Ulrich Drepper  <drepper@redhat.com>
3536
3537         * sysdeps/generic/strcasecmp.c (__strcasecmp): Little performance
3538         patch.
3539         * sysdeps/generic/strncase.c: Likewise.
3540         * string/tester.c: Add tests for strcasecmp and strncasecmp.
3541
3542 2001-12-05  Geoff Keating  <geoffk@redhat.com>
3543
3544         * scripts/cpp: Test the exit status from 'type', not 'awk'.
3545
3546         * sysdeps/powerpc/__longjmp.S: Don't restore FP registers.
3547         * sysdeps/powerpc/fpu/__longjmp.S: Do restore FP registers.
3548         * sysdeps/powerpc/setjmp.S: Don't save FP registers.
3549         * sysdeps/powerpc/fpu/setjmp.S: Do save FP registers.
3550         * sysdeps/powerpc/fclrexcpt.c: Move to...
3551         * sysdeps/powerpc/fpu/fclrexcpt.c: ... here.
3552         * sysdeps/powerpc/fpu_control.h: Move to...
3553         * sysdeps/powerpc/fpu/fpu_control.h: ... here.
3554
3555 2001-12-05  Ulrich Drepper  <drepper@redhat.com>
3556
3557         * iconvdata/ibm1129.h: Remove duplicate mappings.
3558         * iconvdata/ibm937.c: Handle overflow errors.  Handle new tables.
3559         * iconvdata/ibm937.h: Reorganize table to safe a lot of space.
3560         Patch by Masahide Washizawa <WASHI@jp.ibm.com>.
3561
3562         * timezone/zic.c: Fix handling of turnaround times.
3563         Patch by Arthur David Olson <olsona@dc37a.nci.nih.gov>.
3564
3565 2001-12-02  Moshe Olshansky  <OLSHANSK@il.ibm.com>
3566
3567         * sysdeps/ieee754/dbl-64/e_remainder.c (__ieee754_remainder): Fix
3568         overflow problem.
3569
3570 2001-12-05  Ulrich Drepper  <drepper@redhat.com>
3571
3572         * posix/regex.c: For use outside glibc defined bounded pointer
3573         macros here.  Patch by Jim Meyering <jim@meyering.net>.
3574
3575         * iconvdata/Makefile (modules): Add TCVN5712-1.
3576         * iconvdata/TESTS: Add TCVN5712-1.
3577         * iconvdata/gconv-modules: Likewise.
3578         * iconvdata/tcvn5712-1.c: New file.
3579         * iconvdata/testdata/TCVN-5712: New file.
3580         * iconvdata/testdata/TCVN-5712..UTF8: New file.
3581
3582 2001-12-04  Ulrich Drepper  <drepper@redhat.com>
3583
3584         * iconvdata/cp1258.c: Optimize conversion from UCS4.
3585
3586 2001-12-02  Roland McGrath  <roland@frob.com>
3587
3588         * mach/Makefile, mach/Machrules: Move comments out of \ continuations.
3589
3590         * hurd/hurd.h (__hurd_fail): Add `break;' to silence new gcc-3 warning.
3591         Reported by Jeff Bailey <jbailey@nisa.net>.
3592
3593         * hurd/hurd.h (_hurd_umask): Remove volatile qualifier from decl.
3594         Reported by Jeff Bailey <jbailey@nisa.net>.
3595
3596         * mach/Makefile ($(objpfx)mach-syscalls.mk): Pass $(CFLAGS) to $(CC).
3597         * mach/Machrules ($(objpfx)%.udeps static pattern rule): Likewise.
3598         Reported by Jeff Bailey <jbailey@nisa.net>.
3599
3600 2001-12-01  Roland McGrath  <roland@frob.com>
3601
3602         * sysdeps/mach/hurd/configure.in (libc_cv_gcc_unwind_find_fde): Add
3603         missing backslash in test arguments.
3604         * sysdeps/mach/hurd/configure: Regenerated.
3605
3606 2001-11-26  Roland McGrath  <roland@frob.com>
3607
3608         * hurd/hurdinit.c (_hurd_ports_use): Check if _hurd_ports is null.
3609         Reported by John Tobey <jtobey@john-edwin-tobey.org>.
3610
3611 2001-11-30  Ulrich Drepper  <drepper@redhat.com>
3612
3613         * iconvdata/Makefile (modules): Add ARMSCII-8.
3614         * iconvdata/gconv-modules: Add entries for ARMSCII-8.
3615         * iconvdata/armscii-8.c: New file.
3616
3617 2001-11-29  Jakub Jelinek  <jakub@redhat.com>
3618
3619         * sysdeps/generic/glob.c (next_brace_sub): Return NULL if braces
3620         don't match, fix {{a,b},c} globbing, clean up.
3621         Patch by Flavio Veloso <flaviovs@magnux.com>.
3622         * posix/globtest.sh: Add new tests.
3623
3624 2001-11-29  Andreas Jaeger  <aj@suse.de>
3625
3626         * sysdeps/unix/sysv/linux/x86_64/Versions: Add arch_prctl.
3627         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Add arch_prctl call.
3628
3629         * sysdeps/generic/abort.c: Include libioP.h for
3630         _IO_flush_all_lockp prototype.
3631
3632 2001-11-29  Ulrich Drepper  <drepper@redhat.com>
3633
3634         * posix/regex.h: Define __restrict_arr correctly.
3635
3636 2001-11-28  Ulrich Drepper  <drepper@redhat.com>
3637
3638         * iconvdata/ibm1163.c: New file.
3639         * iconvdata/ibm1163.h: New file.
3640         * iconvdata/ibm1164.c: New file.
3641         * iconvdata/ibm1164.h: New file.
3642         * iconvdata/TESTS: Add entries for IBM1163 and IBM1164.
3643         * iconvdata/Makefile: Likewise.
3644         * iconvdata/testdata/IBM1163: New file.
3645         * iconvdata/testdata/IBM1163..UTF8: New file.
3646         * iconvdata/testdata/IBM1164: New file.
3647         * iconvdata/testdata/IBM1164..UTF8: New file.
3648         Patch by Masahide Washizawa <WASHI@jp.ibm.com>.
3649
3650         * iconvdata/ibm1046.h: Optimize.  Remove duplicate mappings.
3651         * iconvdata/ibm1124.h: Likewise.
3652         * iconvdata/ibm1132.h: Likewise.
3653         * iconvdata/ibm1133.h: Likewise.
3654         * iconvdata/ibm1160.h: Likewise.
3655         * iconvdata/ibm1161.h: Likewise.
3656         * iconvdata/ibm1162.h: Likewise.
3657         * iconvdata/ibm856.h: Likewise.
3658         * iconvdata/ibm922.h: Likewise.
3659         * iconvdata/ibm930.h: Likewise.
3660         * iconvdata/ibm932.h: Likewise.
3661         * iconvdata/ibm933.h: Likewise.
3662         * iconvdata/ibm935.h: Likewise.
3663         * iconvdata/ibm937.h: Likewise.
3664         * iconvdata/ibm939.h: Likewise.
3665         * iconvdata/ibm943.h: Likewise.
3666         * iconvdata/ibm930.c: Pretty printing.
3667         * iconvdata/ibm937.c: Avoid access accross array boundary.
3668
3669         * iconv/gconv_open.c (__gconv_open): Empty codeset name now means using
3670         the current locale's codeset.
3671         * iconv/iconv_open.c (iconv_open): Don't strip out everything for
3672         empty input string.
3673         * iconv/iconv_prog.c: Pass empty strings as default value for to-
3674         and from-charset.  Don't determine locale's charset here.
3675
3676         * libio/genops.c (_IO_flush_all_lockp): New function.  The same code
3677         as the old _IO_flush_all but lock only if parameter is nonzero.
3678         (_IO_flush_all): Call _IO_flush_all_lockp with 1 as parameter.
3679         * libio/libioP.h: Add prototype for _IO_flush_all_lockp.
3680         * sysdeps/generic/abort.c (fflush): Define to _IO_flush_all_lockp(0)
3681         if libio is used [PR libc/2575].
3682
3683 2001-11-28  Jakub Jelinek  <jakub@redhat.com>
3684
3685         * sysdeps/sparc/fpu/bits/mathinline.h (__signbitf, __signbit,
3686         __signbitl): Only define for ISO C99.
3687
3688 2001-11-22  Thorsten Kukuk  <kukuk@suse.de>
3689
3690         * nss/nss_files/files-hosts.c (_nss_files_get##name##_r): Set
3691         herrnop to NETDB_INTERNAL if we run out of buffer space.
3692
3693 2001-11-28  Ulrich Drepper  <drepper@redhat.com>
3694
3695         * nss/nss_files/files-XXX.c (internal_getent): Correct input
3696         overflow test for platforms with signed char.
3697         Reported by Andrew Haley <aph@cambridge.redhat.com>.
3698
3699 2001-11-28  Bruno Haible  <bruno@clisp.org>
3700
3701         * locale/programs/simple-hash.c (lookup_2): Remove function.
3702         (insert_entry_2): Call lookup instead of lookup_2.
3703
3704 2001-03-04  Bruno Haible  <bruno@clisp.org>
3705
3706         * intl/dcigettext.c (DCIGETTEXT): Increment path_max proportionally.
3707
3708 2001-10-31  Bruno Haible  <bruno@clisp.org>
3709
3710         * intl/plural.y: Include <stddef.h>, needed for NULL with SunOS 4 cc.
3711
3712 2001-03-21  Bruno Haible  <bruno@clisp.org>
3713
3714         * intl/dcigettext.c (_nl_state_lock): Mark as #ifdef _LIBC. AIX 3 xlc
3715         chokes on empty macro arguments.
3716         * intl/plural.y: Add #pragma for alloca on AIX 3.
3717
3718 2001-11-27  Ulrich Drepper  <drepper@redhat.com>
3719
3720         * intl/dcigettext.c (guess_category_value): Only implement for
3721         glibc.  Otherwise rely on function _nl_locale_name which isn't
3722         present in the glibc sources.
3723
3724 2001-09-24  Bruno Haible  <bruno@clisp.org>
3725
3726         * intl/loadmsgcat.c (_nl_init_domain_conv): Also enable
3727         transliteration when building on a glibc system but outside glibc.
3728
3729 2001-09-22  Bruno Haible  <bruno@clisp.org>
3730
3731         * intl/plural-eval.c: New file, extracted from dcigettext.c.
3732         * intl/dcigettext.c (plural_eval): Remove function, moved to
3733         intl/plural-eval.c.
3734         (plural_lookup): Call PLURAL_EVAL instead of plural_eval.
3735         Include plural-eval.c.
3736
3737 2001-09-22  Bruno Haible  <bruno@clisp.org>
3738
3739         * intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Reject numbers that
3740         don't start with a digit; nplurals must be positive.
3741
3742 2001-09-02  Bruno Haible  <bruno@clisp.org>
3743
3744         * intl/plural-exp.h: New file, extracted from gettextP.h.
3745         * intl/plural-exp.c: New file, extracted from loadmsgcat.c.
3746         * intl/gettextP.h (struct expression, struct parse_args,
3747         __gettext_free_exp, __gettextparse): Move to plural-exp.h.
3748         * intl/loadmsgcat.c: Include plural-exp.h.
3749         (PLURAL_PARSE): Move macro to plural-exp.h.
3750         (plvar, plone, germanic_plural, INIT_GERMANIC_PLURAL): Move to
3751         plural-exp.c.
3752         (_nl_load_domain): Move plural handling code to plural-exp.c.  Call
3753         EXTRACT_PLURAL_EXPRESSION.
3754         (_nl_unload_domain): Update.
3755         * intl/dcigettext.c: Include plural-exp.h.
3756         * intl/plural.y: Include plural-exp.h, not gettextP.h.
3757         (FREE_EXPRESSION): Move macro to plural-exp.h.
3758         * intl/Makefile (routines): Add plural-exp.
3759         (distribute): Add plural-exp.h.
3760
3761 2001-07-28  Bruno Haible  <bruno@clisp.org>
3762
3763         * intl/l10nflist.c (_nl_normalize_codeset): Cast isalnum, isalpha,
3764         isdigit, tolower argument to 'unsigned char'.
3765         * intl/loadmsgcat.c (_nl_load_domain): Cast isspace argument to
3766         'unsigned char'.
3767         * intl/localealias.c (read_alias_file): Cast isspace argument to
3768         'unsigned char'.
3769
3770 2001-10-20  Bruno Haible  <bruno@clisp.org>
3771
3772         Assume strchr() exists. (Without it, intl/explodename.c wouldn't link
3773         anyway.)
3774         * intl/dcigettext.c (strchr): Remove fallback definition; it conflicts
3775         with the variable 'index' in plural_lookup.
3776         * intl/l10nflist.c (strchr): Likewise.
3777         * intl/localealias.c (strchr): Likewise.
3778
3779         Assume <stddef.h>, <stdlib.h>, <string.h>, <locale.h> exist.
3780         * intl/bindtextdom.c: Likewise.
3781         * intl/dcigettext.c: Likewise.
3782         * intl/dgettext.c: Likewise.
3783         * intl/dngettext.c: Likewise.
3784         * intl/explodename.c: Likewise.
3785         * intl/finddomain.c: Likewise.
3786         * intl/gettext.c: Likewise.
3787         * intl/l10nflist.c: Likewise.
3788         * intl/loadmsgcat.c: Likewise.
3789         * intl/localealias.c: Likewise.
3790         * intl/ngettext.c: Likewise.
3791         * intl/textdomain.c: Likewise.
3792         * intl/gettext.h: Assume <limits.h> exists.
3793
3794 2001-11-27  Ulrich Drepper  <drepper@redhat.com>
3795
3796         * stdio-common/Makefile (tests): Add scanf11.
3797         * stdio-common/scanf11.c: New file.
3798
3799 2001-11-26  Ulrich Drepper  <drepper@redhat.com>
3800
3801         * version.h (RELEASE): Define as development.
3802         (VERSION): Set to 2.2.90.
3803
3804 2001-11-22  Thorsten Kukuk  <kukuk@suse.de>
3805
3806         * nis/nss_compat/compat-grp.c: Print group id as unsigned long.
3807         * nis/nss_nis/nis-grp.c: Likewise.
3808         * nis/nss_nisplus/nisplus-grp.c: Likewise.
3809
3810         * nis/nss_compat/compat-pwd.c: Print user id as unsigned long.
3811         * nis/nss_nis/nis-pwd.c: Likewise.
3812         * nis/nss_nisplus/nisplus-pwd.c: Likewise.
3813
3814         * nis/nss_nis/nis-publickey.c: Use strtoul instead of atoi.
3815         * nis/nss_nisplus/nisplus-parser.c: Likewise.
3816         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
3817
3818         * nscd/grpcache.c: Use strtoul instead of atol.
3819         * nscd/pwdcache.c: Likewise.
3820         * nss/getent.c: Likewise.
3821
3822 2001-11-27  Paul Eggert  <eggert@twinsun.com>
3823
3824         * sysdeps/posix/tempname.c (__gen_tempname): Try at least
3825         ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
3826
3827 2001-11-19  Bruno Haible  <bruno@clisp.org>
3828
3829         * locale/programs/simple-hash.c (insert_entry_2): Resize at 75%, not
3830         90%.
3831         (compute_hashval): Shift by 9 bits, not by 4 bits. This drastically
3832         improves the quality of the hash function, especially for short
3833         strings.
3834
3835 2001-11-26  Ulrich Drepper  <drepper@redhat.com>
3836
3837         * stdio-common/vfscanf.c: If incomplete nan of inf(inity) strings
3838         are found call conv_error and not input_error [PR libc/2669].
3839
3840         * math/bits/mathcalls.h: Mark ceil and floor as const.
3841         Reported by David Mosberger.
3842
3843 2001-11-21  Jim Meyering  <meyering@lucent.com>
3844
3845         * posix/regex.c (iswctype, mbrtowc, wcslen, wcscoll, wcrtomb) [_LIBC]:
3846         Define to be __-prefixed.
3847         Remove unnecessary duplication in `#ifdef _LIBC' blocks.
3848
3849 2001-11-26  Andreas Jaeger  <aj@suse.de>
3850
3851         * sysdeps/unix/sysv/linux/hppa/brk.c: Remove __brk_addr alias,
3852         avoid warning.
3853
3854 2001-11-26  Stephen L Moshier <moshier@mediaone.net>
3855
3856         * sysdeps/ieee754/ldbl-128/e_log10l.c (L102B): Fix typo in
3857         initialization.
3858
3859         * sysdeps/ieee754/ldbl-128/e_coshl.c (__ieee754_coshl): Remove
3860         unused variables.  Fix threshold for returning 1.0.
3861
3862         * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (neval, deval): Constify
3863         argument.
3864
3865         * sysdeps/ieee754/ldbl-128/s_erfl.c (neval, deval): Likewise, and
3866         remove unused variables.
3867
3868         * sysdeps/ieee754/ldbl-128/e_j0l.c (neval, deval): Likewise.
3869
3870         * sysdeps/ieee754/ldbl-128/e_j1l.c (neval, deval): Likewise, and
3871         include local math header files.
3872
3873 2001-11-22  Andreas Jaeger  <aj@suse.de>
3874
3875         * sysdeps/ieee754/ldbl-96/s_ilogbl.c (__ilogbl): Add brace to
3876         avoid warning.
3877
3878 2001-11-21  Andreas Jaeger  <aj@suse.de>
3879
3880         * sysdeps/unix/sysv/linux/x86_64/sys/debugreg.h: New file.
3881
3882         * sysdeps/unix/sysv/linux/x86_64/Makefile (sysdep_headers): Add
3883         sys/debugreg.h
3884
3885 2001-11-15  Andreas Jaeger  <aj@suse.de>
3886
3887         * include/features.h (__GLIBC_HAVE_LONG_LONG): Define for
3888         compilers that support it.
3889
3890         * posix/sys/types.h: Use __GLIBC_HAVE_LONG_LONG.
3891         * sysdeps/unix/sysv/linux/bits/types.h: Likewise.
3892         * stdlib/stdlib.h: Likewise.
3893
3894 2001-11-17  Ulrich Drepper  <drepper@redhat.com>
3895
3896         * posix/regex.c (byte_re_match_2_internal): For gcc replace switch
3897         statement with gotos.
3898         Based on a patch by Paolo Bonzini <bonzini@pc-amo3.elet.polimi.it>.
3899
3900 2001-11-16  Stephen L Moshier  <moshier@mediaone.net>
3901
3902         * sysdeps/ieee754/ldbl-96/s_erfl.c (__erfcl): Fix K&R header.
3903
3904 2001-11-15  Ulrich Drepper  <drepper@redhat.com>
3905
3906         * sysdeps/generic/unwind-dw2-fde.c: Don't use recursive mutexes.
3907
3908 2001-10-02  Jakub Jelinek  <jakub@redhat.com>
3909             H.J. Lu  <hjl@gnu.org>
3910
3911         * Versions.def (libc): Add GCC_3.0.
3912         * configure.in (libc_cv_gcc_static_libgcc): Set to -static-libgcc
3913         if gcc supports this flag.
3914         (EXPORT_UNWIND_FIND_FDE): Define unless target configure disables it.
3915         (gcc3): Allow glibc to be compiled with gcc 3.x.
3916         * config.h.in (EXPORT_UNWIND_FIND_FDE): Add.
3917         * config.make.in (static-libgcc, unwind-find-fde): Add.
3918         * Makerules (build-shlib-helper, build-module-helper): Use it.
3919         * scripts/versions.awk: Make sure GLIBC_ versions come first.
3920         * elf/soinit.c (__libc_global_ctors): Set tbases and dbases if
3921         necessary.
3922         (_fini): Call __deregister_frame_info_bases if
3923         __register_frame_info_bases was used to register.
3924         * elf/Versions (__register_frame_info, __deregister_frame_info): Add
3925         for GLIBC_2.0.
3926         (__register_frame_info_bases, __register_frame_info_table_bases,
3927         __deregister_frame_info_bases, _Unwind_Find_FDE): Add for GCC_3.0.
3928         * elf/Makefile (routines): Add unwind-dw2-fde.
3929         (shared-only-routines): Add unwind-dw2-fde.
3930         * sysdeps/alpha/gccframe.h: New file.
3931         * sysdeps/arm/gccframe.h: New file.
3932         * sysdeps/generic/framestate.c: New file.
3933         * sysdeps/generic/dwarf2.h: New file.
3934         * sysdeps/generic/gccframe.h (struct object): Update from gcc 3.0.
3935         * sysdeps/generic/unwind-dw2-fde.c: New file.
3936         * sysdeps/unix/sysv/linux/ia64/unwind-dw2-fde.c: New file.
3937         * sysdeps/generic/unwind-dw2-fde.h: New file.
3938         * sysdeps/generic/unwind-dw2.c: New file.
3939         * sysdeps/generic/unwind-pe.h: New file.
3940         * sysdeps/generic/unwind.h: New file.
3941         * sysdeps/hppa/gccframe.h: New file.
3942         * sysdeps/i386/gccframe.h: New file.
3943         * sysdeps/m68k/gccframe.h: New file.
3944         * sysdeps/mips/gccframe.h: New file.
3945         * sysdeps/powerpc/gccframe.h: New file.
3946         * sysdeps/s390/gccframe.h: New file.
3947         * sysdeps/sh/gccframe.h: New file.
3948         * sysdeps/sparc/gccframe.h: New file.
3949         * sysdeps/vax/gccframe.h: New file.
3950         * sysdeps/unix/sysv/linux/configure.in (libc_cv_gcc_unwind_find_fde):
3951         Set on all architectures except ia64.
3952         * sysdeps/mach/hurd/configure.in (libc_cv_gcc_unwind_find_fde): Set
3953         for i386.
3954         * sysdeps/mach/hurd/i386/Versions (__register_frame_info,
3955         __deregister_frame_info): Move to elf/Versions.
3956         * sysdeps/unix/sysv/linux/m68k/Versions: Likewise.
3957         * sysdeps/unix/sysv/linux/arm/Versions: Likewise.
3958         * sysdeps/unix/sysv/linux/alpha/Versions: Likewise.
3959         * sysdeps/unix/sysv/linux/i386/Versions: Likewise.
3960         * sysdeps/unix/sysv/linux/mips/Versions: Likewise.
3961         * sysdeps/unix/sysv/linux/powerpc/Versions: Likewise.
3962         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
3963         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
3964         * sysdeps/unix/sysv/linux/sparc/sparc64/Versions: Likewise.
3965         * sysdeps/mach/hurd/i386/Makefile (sysdep-routines): Add framestate.
3966         * sysdeps/unix/sysv/linux/arm/Makefile: Likewise.
3967         * sysdeps/unix/sysv/linux/alpha/Makefile: Likewise.
3968         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
3969         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
3970         * sysdeps/unix/sysv/linux/mips/Makefile: Likewise.
3971         * sysdeps/unix/sysv/linux/powerpc/Makefile: Likewise.
3972         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
3973         * sysdeps/unix/sysv/linux/sparc/Makefile: Likewise.
3974
3975 2001-11-15  Jeff Law  <law@redhat.com>
3976
3977         * posix/regex.c (uintptr_t): Do not provide a definition if the
3978         system provided one.
3979
3980 2001-11-13  Roland McGrath  <roland@frob.com>
3981
3982         * stdio-common/tmpfile.c: Moved to ...
3983         * sysdeps/generic/tmpfile.c: ... here.
3984         * sysdeps/mach/hurd/tmpfile.c: New file.
3985
3986         * hurd/fopenport.c (__fopenport): Renamed from fopenport.
3987         [USE_IN_LIBIO] (fopencookie): #define as _IO_fopencookie.
3988         (fopenport): Define as weak alias.
3989
3990         * libio/iofopncook.c (_IO_fopencookie): Move forward declaration ...
3991         * libio/libioP.h: ... to here.
3992
3993 2001-11-12  Ulrich Drepper  <drepper@redhat.com>
3994
3995         * elf/dl-reloc.c (_dl_relocate_object): Avoid iterating over
3996         program header twice.  Construct list with the needed information.
3997
3998 2001-11-10  Ulrich Drepper  <drepper@redhat.com>
3999
4000         * po/ca.po: Update from translation team.
4001
4002         * elf/dl-load.c (_dl_map_object_from_fd): Remove use of
4003         _dl_pf_to_prot.  Use arithmetic operation using PF_TO_PROT macro.
4004         * sysdeps/generic/ldsodefs.h (PF_TO_PROT): New macro.
4005         * elf/dl-reloc.c (_dl_relocate_object): Likewise.
4006
4007 2001-11-10  Andreas Jaeger  <aj@suse.de>
4008
4009         * sysdeps/ieee754/ldbl-128/e_log2l.c: New file.
4010         * sysdeps/ieee754/ldbl-128/e_log10l.c: Likewise.
4011         Contributed by Stephen L Moshier <moshier@mediaone.net>.
4012
4013 2001-11-09  Ulrich Drepper  <drepper@redhat.com>
4014
4015         * elf/dl-minimal.c (realloc): Handle NULL for first parameter
4016         correctly.
4017         * elf/dl-load.c (is_dst): New function.
4018         (_dl_dst_count): Use is_dst to check for DST variable.
4019         (_dl_dst_substitute): Likewise.
4020
4021 2001-11-09  Roland McGrath  <roland@frob.com>
4022
4023         Hurd/PowerPC port contributed by Peter Bruin <pjbruin@dds.nl>.
4024         * sysdeps/mach/hurd/powerpc/exc2signal.c: New file.
4025         * sysdeps/mach/hurd/powerpc/init-first.c: New file.
4026         * sysdeps/mach/hurd/powerpc/intr-msg.h: New file.
4027         * sysdeps/mach/hurd/powerpc/longjmp-ts.c: New file.
4028         * sysdeps/mach/hurd/powerpc/register-dump.h: New file.
4029         * sysdeps/mach/hurd/powerpc/sigreturn.c: New file.
4030         * sysdeps/mach/hurd/powerpc/static-start.S: New file.
4031         * sysdeps/mach/hurd/powerpc/trampoline.c: New file.
4032         * sysdeps/mach/hurd/powerpc/bits/sigcontext.h: New file.
4033         * sysdeps/mach/hurd/powerpc/Dist: New file.
4034
4035         * hurd/privports.c (__get_privileged_ports):
4036         Only contact the proc server if necessary for this call.
4037         Suggested by Neal H Walfield <neal@cs.uml.edu>.
4038         Check error return for mach_port_mod_refs.
4039
4040 2001-11-09  Andreas Schwab  <schwab@suse.de>
4041
4042         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: New file.
4043
4044 2001-11-09  Ulrich Drepper  <drepper@redhat.com>
4045
4046         * elf/dl-load.c (lose): Remove some unnecessary code.  The new
4047         object is always the last in the list.
4048         (_dl_map_object_from_fd): Delete code to remove from object list
4049         when DF_1_NOOPEN is seen.  This is done in lose.
4050
4051 2001-11-08  Ulrich Drepper  <drepper@redhat.com>
4052
4053         * elf/dl-object.c (_dl_new_object): Various small optimizations.
4054
4055 2001-11-07  Ulrich Drepper  <drepper@redhat.com>
4056
4057         * sysdeps/generic/dl-cache.c: Optimize SEARCH_CACHE and
4058         HWCAP_CHECK macro code.
4059
4060         * elf/dl-misc.c (_dl_sysdep_read_whole_file): Optimize code a bit.
4061         Now returns MAP_FAILED on error.
4062         * elf/rtld.c: Adjust caller.
4063         * sysdeps/generic/dl-cache.c: Likewise.
4064         * sysdeps/generic/ldsodefs.h: Adjust description.
4065
4066         * elf/dl-version.c (match_symbol): Optimize error handling for size.
4067         (_dl_check_map_versions): Likewise.
4068
4069 2001-11-06  Ulrich Drepper  <drepper@redhat.com>
4070
4071         * elf/dl-load.c (_dl_map_object_from_fd): Don't call
4072         _dl_signal_error directly, always use lose.  Set fd to -1 after
4073         file is closed.
4074         (lose): Don't call close if fd == -1.
4075
4076 2001-11-07  Kaoru Fukui  <k_fukui@highway.ne.jp>
4077
4078         * manual/charset.texi: Fix typo @w[ISO 6937] to  @w{ISO 6937}.
4079          Also fix typo @code {mbsinit} to @code{mbsinit}.
4080
4081 2001-11-06  Ulrich Drepper  <drepper@redhat.com>
4082
4083         * elf/dl-profile.c: Replace state variable with simple flag named
4084         running.  Remove commented-out code.
4085
4086         * elf/dl-load.c (decompose_rpath): Optimize error handling for size.
4087         (_dl_init_paths): Likewise.
4088         (_dl_map_object_from_fd): Likewise.
4089         * elf/dl-reloc.c (_dl_relocate_object): Likewise.
4090
4091 2001-11-06  Roland McGrath  <roland@frob.com>
4092
4093         * sysdeps/mach/powerpc/sysdep.h: Include sysdeps/unix/powerpc/sysdep.h
4094         instead of sysdeps/powerpc/elf/sysdep.h and sysdeps/unix/sysdep.h.
4095
4096         * sysdeps/unix/sysv/linux/powerpc/sysdep.h: Don't include
4097         sysdeps/powerpc/elf/sysdep.h.
4098         Reported by Kaoru Fukui <k_fukui@highway.ne.jp>.
4099
4100 2001-11-05  Ulrich Drepper  <drepper@redhat.com>
4101
4102         * elf/rtld.c (process_dl_debug): Rewritten.  Optimized for size not
4103         speed.
4104         (process_envvars): Some more optimizations.
4105         * sysdeps/generic/ldsodefs.h (DL_DEBUG_HELP): New macro.
4106
4107         * elf/elf.h: Add dynamic tag definitions for prelinking.
4108
4109         * elf/rtld.c (process_envvars): Avoid using array of string pointers.
4110         Rewrite code to remove environment varables for SUID binaries.
4111         Small optimization in LD_PROFILE handling.
4112         * sysdeps/generic/unsecvars.h: Adjust format for process_envvars
4113         changes.
4114         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
4115
4116         * sysdeps/generic/dl-sysdep.c: Don't initialize _dl_cpuclock_offset.
4117
4118         * elf/dl-reloc.c (_dl_reloc_bad_type): Rewrite to not use writable
4119         strings.  Change type of second parameter.
4120         * sysdeps/generic/ldsodefs.h: Adjust _dl_reloc_bad_type prototype
4121         for last change.
4122
4123         * io/fts.h: Prevent using <fts.h> with _FILE_OFFSET_BITS=64.
4124
4125 2001-11-04  Joseph S. Myers  <jsm28@cam.ac.uk>
4126
4127         * manual/string.texi: Fix typos.
4128         * manual/examples/argp-ex2.c: Likewise.
4129
4130 2001-11-05  Roland McGrath  <roland@frob.com>
4131
4132         * sysdeps/powerpc/elf/sysdep.h: Remove this file, because it overrides
4133         the more-specific unix/sysv/linux/powerpc file and breaks everything.
4134         * sysdeps/powerpc/sysdep.h (ALIGNARG, ASM_TYPE_DIRECTIVE,
4135         ASM_SIZE_DIRECTIVE, CALL_MCOUNT, ENTRY, EALIGN, DO_CALL, JUMPTARGET,
4136         PSEUDO, PSEUDO_RET, PSEUDO_END, L, C_TEXT): These macros moved here
4137         here, put under [__ELF__].
4138
4139 2001-11-05  Ulrich Drepper  <drepper@redhat.com>
4140
4141         * manual/charset.texi: Extensive editing work.
4142         * manual/nss.texi: Likewise.
4143         Changes by Dennis Grace <dgrace@us.ibm.com>.
4144
4145 2001-11-04  Roland McGrath  <roland@frob.com>
4146
4147         * hurd/set-host.c (_hurd_set_host_config): Use O_WRONLY in flags
4148         parameter to dir_mkfile.
4149
4150 2001-11-02  Jakub Jelinek  <jakub@redhat.com>
4151
4152         * string/bits/string2.h (__strndup): If n is smaller than len, set
4153         len to n + 1.
4154         * string/tester.c (test_strndup): New function.
4155         (main): Call it.
4156
4157 2001-11-01  Ulrich Drepper  <drepper@redhat.com>
4158
4159         * sunrpc/rpc_main.c: Optimize variable definitions a bit.
4160
4161         * sunrpc/Makefile (rpcgen-cmd): Use ../scripts/cpp in rpcgen calls.
4162         * scripts/cpp: New file.
4163
4164         * elf/dl-load.c (_dl_map_object): Correct test of DF_1_NODEFLIB
4165         for rtld_search_dirs content.  Minor optimizations.
4166
4167 2001-10-31  Ulrich Drepper  <drepper@redhat.com>
4168
4169         * elf/dl-load.c (_dl_map_object): Make code a bit more compact by
4170         avoiding unnecessary duplication.
4171
4172 2001-10-31  Jakub Jelinek  <jakub@redhat.com>
4173
4174         * elf/dl-load.c (_dl_map_object): If library was found using
4175         LD_LIBRARY_PATH, don't try RUNPATH list.