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