(_dl_map_object_deps): Revert patch from 2002-05-28. This cripples
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2002-08-21  Ulrich Drepper  <drepper@redhat.com>
2
3         * include/setjmp.h (__libc_longjmp): Add declaration.
4
5 2002-08-21  Andreas Jaeger  <aj@suse.de>
6
7         * sysdeps/x86_64/_mcount.S: Fix assembler.
8
9         * sysdeps/unix/sysv/linux/x86_64/Makefile: Generate bits/syscall.h
10         with biarch support.
11
12 2002-08-21  Andreas Jaeger  <aj@suse.de>
13
14         * sysdeps/x86_64/sysdep.h (CALL_MCOUNT): Fix it.
15
16         * sysdeps/x86_64/Makefile (sysdep_routines): Add _mcount.
17
18         * sysdeps/x86_64/machine-gmon.h: New.
19         * sysdeps/x86_64/_mcount.S: New.
20
21 2002-08-20  Ulrich Drepper  <drepper@redhat.com>
22
23         * elf/rtld.c (_dl_start): Pass zero to TLS_INIT_TP.  Set
24         bootstrap_map.l_tls_tp_initialized to 1 if TLS_INIT_TP was called.
25         (_dl_start_final): Copy l_tls_tp_initialized to GL(dl_rtld_map).
26         (dl_main): If HAVE___THREAD is not defined pass l_tls_tp_initialized
27         to TL_INIT_TP.  Otherwise pass 1.
28         * include/link.h (struct link_map): Add l_tls_tp_initialized.
29         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Pass 0 to TL_INIT_TP.
30
31 2002-08-15  Jakub Jelinek  <jakub@redhat.com>
32
33         * locale/programs/localedef.c (add_to_readlist): Error about
34         circular dependencies only if the locale in question hasn't
35         been finished.
36         * locale/programs/linereader.c (get_string): Pass LC_CTYPE not
37         CTYPE_LOCALE to load_locale.
38         * locale/programs/locfile.c (locfile_read): Don't include
39         unneeded but available locales in locale_mask.
40
41         * locale/programs/locarchive.c (enlarge_archive): If quiet, don't
42         print any messages about enlarging archive.
43
44 2002-08-20  Brian Youmans  <3diff@gnu.org>
45
46         * manual/contrib.texi: Removed licenses, added acknowledgements
47         for contributions by Intel, IBM, Craig Metz.
48         * LICENSES: New file, contains the text of all non-FSF licenses in the
49         distribution that require putting the notice in the accompanying
50         documentation.
51         * README.template, README: Mention LICENSES.
52
53         * sysdeps/mach/hurd/net/if_ppp.h: Replaced CMU license with a
54         new one modelled on the modern BSD license, per recent letter
55         of permission from CMU.
56         * sysdeps/unix/sysv/linux/net/if_ppp.h: Likewise.
57
58         * sysdeps/ieee754/dbl-64/MathLib.h: Changed the copyright holder
59         from IBM to FSF, per the recent Software Letter.  Changed the
60         distribution terms from GPL to LGPL.
61
62         * sysdeps/ieee754/dbl-64/asincos.tbl: Added FSF copyright and
63         copying permission notice (Lesser GPL), per recent IBM Software Letter.
64         * sysdeps/ieee754/dbl-64/powtwo.tbl: Likewise.
65         * sysdeps/ieee754/dbl-64/root.tbl: Likewise.
66         * sysdeps/ieee754/dbl-64/sincos.tbl: Likewise.
67         * sysdeps/ieee754/dbl-64/uatan.tbl: Likewise.
68         * sysdeps/ieee754/dbl-64/uexp.tbl: Likewise.
69         * sysdeps/ieee754/dbl-64/ulog.tbl: Likewise.
70         * sysdeps/ieee754/dbl-64/upow.tbl: Likewise.
71         * sysdeps/ieee754/dbl-64/utan.tbl: Likewise.
72
73         * sysdeps/ieee754/dbl-64/atnat.h: Changed the copyright holder
74         from IBM to FSF, per the recent Software Letter.  Corrected the
75         text of the copying permission notice to say Lesser GPL instead
76         of GPL in warranty disclaimer paragraph.
77         * sysdeps/ieee754/dbl-64/atnat2.h: Likewise.
78         * sysdeps/ieee754/dbl-64/branred.h: Likewise.
79         * sysdeps/ieee754/dbl-64/dla.h: Likewise.
80         * sysdeps/ieee754/dbl-64/doasin.h: Likewise.
81         * sysdeps/ieee754/dbl-64/dosincos.h: Likewise.
82         * sysdeps/ieee754/dbl-64/mpa.h: Likewise.
83         * sysdeps/ieee754/dbl-64/mpa2.h: Likewise.
84         * sysdeps/ieee754/dbl-64/mpatan.h: Likewise.
85         * sysdeps/ieee754/dbl-64/mpexp.h: Likewise.
86         * sysdeps/ieee754/dbl-64/mplog.h: Likewise.
87         * sysdeps/ieee754/dbl-64/mpsqrt.h: Likewise.
88         * sysdeps/ieee754/dbl-64/mydefs.h: Likewise.
89         * sysdeps/ieee754/dbl-64/sincos32.h: Likewise.
90         * sysdeps/ieee754/dbl-64/uasncs.h: Likewise.
91         * sysdeps/ieee754/dbl-64/uexp.h: Likewise.
92         * sysdeps/ieee754/dbl-64/ulog.h: Likewise.
93         * sysdeps/ieee754/dbl-64/upow.h: Likewise.
94         * sysdeps/ieee754/dbl-64/urem.h: Likewise.
95         * sysdeps/ieee754/dbl-64/uroot.h: Likewise.
96         * sysdeps/ieee754/dbl-64/usncs.h: Likewise.
97         * sysdeps/ieee754/dbl-64/utan.h: Likewise.
98
99         * sysdeps/ieee754/dbl-64/branred.c: Corrected the text of the copying
100         permission notice to say Lesser GPL instead of GPL in warranty
101         disclaimer paragraph.
102         * sysdeps/ieee754/dbl-64/doasin.c: Likewise.
103         * sysdeps/ieee754/dbl-64/dosincos.c: Likewise.
104         * sysdeps/ieee754/dbl-64/e_asin.c: Likewise.
105         * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise.
106         * sysdeps/ieee754/dbl-64/e_exp.c: Likewise.
107         * sysdeps/ieee754/dbl-64/e_log.c: Likewise.
108         * sysdeps/ieee754/dbl-64/e_pow.c: Likewise.
109         * sysdeps/ieee754/dbl-64/e_remainder.c: Likewise.
110         * sysdeps/ieee754/dbl-64/e_sqrt.c: Likewise.
111         * sysdeps/ieee754/dbl-64/halfulp.c: Likewise.
112         * sysdeps/ieee754/dbl-64/mpa.c: Likewise.
113         * sysdeps/ieee754/dbl-64/mpatan.c: Likewise.
114         * sysdeps/ieee754/dbl-64/mpatan2.c: Likewise.
115         * sysdeps/ieee754/dbl-64/mpexp.c: Likewise.
116         * sysdeps/ieee754/dbl-64/mplog.c: Likewise.
117         * sysdeps/ieee754/dbl-64/mpsqrt.c: Likewise.
118         * sysdeps/ieee754/dbl-64/mptan.c: Likewise.
119         * sysdeps/ieee754/dbl-64/s_atan.c: Likewise.
120         * sysdeps/ieee754/dbl-64/s_sin.c: Likewise.
121         * sysdeps/ieee754/dbl-64/s_tan.c: Likewise.
122         * sysdeps/ieee754/dbl-64/sincos32.c: Likewise.
123         * sysdeps/ieee754/dbl-64/slowexp.c: Likewise.
124         * sysdeps/ieee754/dbl-64/slowpow.c:  Likewise.
125
126 2002-08-20  Roland McGrath  <roland@redhat.com>
127
128         Fix ABI compatibility with libc compiled with old tools on powerpc.
129         Changes contributed by Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
130         and Jack Howarth <howarth@bromo.med.uc.edu>.
131         * sysdeps/powerpc/Makefile [$(have-protected) = yes]
132         (CPPFLAGS-divdi3.c, CPPFLAGS-libgcc-compat.S): New variables,
133         pass -DHAVE_DOT_HIDDEN for these files.
134         * sysdeps/powerpc/Versions (libc: GLIBC_2.0): Added __floatdidf,
135         __floatdisf.
136         * sysdeps/powerpc/divdi3.c: New file.
137         * sysdeps/powerpc/libgcc-compat.S: New file, replacement for ...
138         * sysdeps/powerpc/libgcc-compat.c: ... this, file removed.
139
140 2002-08-20  Jakub Jelinek  <jakub@redhat.com>
141
142         * locale/loadarchive.c (_nl_load_locale_from_archive): Handle
143         partially overlapping mappings.  Remove unneeded (char *) casts.
144         Never allow duplication of ranges in mapped areas.
145
146 2002-08-20  Roland McGrath  <roland@redhat.com>
147
148         * elf/Makefile ($(objpfx)ld.so): Separate commands in rule so errors
149         can be detected by make.  Reported by H.J. Lu <hjl@gnu.org>.
150
151 2002-08-20  Ulrich Drepper  <drepper@redhat.com>
152
153         * include/unistd.h: Don't hide _exit.
154
155         * elf/rtld.c (_dl_start): Pass extra argument 1 to TLS_INIT_TP.
156         (dl_main): Pass extra argument 0 to TLS_INIT_TP.
157         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Pass extra
158         argument 1 to TLS_INIT_TP.
159         * sysdeps/generic/tls.h (TLS_INIT_TP): Describe new parameter.
160
161         * sysdeps/generic/dl-tls.c (allocate_dtv): Optimize a bit.
162
163         * elf/Versions [ld] (GLIBC_PRIVATE): Add _dl_get_tls_static_info.
164         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Move dtv
165         memory allocation to...
166         (allocate_dtv): ...here.  New function.
167         (_dl_allocate_tls): Change to take parameter.  If parameter is non-NULL
168         call allocate_dtv instead of _dl_allocate_tls_storage.
169         (_dl_deallocate_tls): New parameter.  Deallocate TCB only if true.
170         (_dl_get_tls_static_info): New function.
171         * sysdeps/generic/ldsodefs.h: Adjust prototypes of _dl_allocate_tls
172         and _dl_deallocate_tls.  Add prototype for _dl_get_tls_static_info.
173
174 2002-08-19  Ulrich Drepper  <drepper@redhat.com>
175
176         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Return
177         immediately if result == NULL.
178
179 2002-08-16  Jakub Jelinek  <jakub@redhat.com>
180
181         * sysdeps/alpha/fpu/libm-test-ulps: Regenerate.
182
183 2002-08-18  Roland McGrath  <roland@frob.com>
184
185         * sysdeps/mach/hurd/mkdir.c (__mkdir): Use __directory_name_split
186         instead of __file_name_split.
187         * sysdeps/mach/hurd/unlink.c (__unlink): Likewise.
188
189         * sysdeps/mach/hurd/dl-sysdep.c
190         [HP_TIMING_AVAIL] (_dl_cpuclock_offset): New variable.
191         [HP_TIMING_AVAIL] (_dl_sysdep_start): Set it with HP_TIMING_NOW.
192
193 2002-08-16  Jakub Jelinek  <jakub@redhat.com>
194
195         * locale/loadarchive.c (_nl_load_locale_from_archive): Braino fix
196         in change before last: MAX -> MIN.
197
198 2002-08-15  Roland McGrath  <roland@redhat.com>
199
200         * libio/fileops.c (_IO_file_seekoff_mmap): Leave read pointers at EOF
201         if seek would go past it.
202         (mmap_remap_check): If file position is at or past EOF after check,
203         leave read pointers at EOF and don't seek.
204
205         * libio/tst-mmap-offend.c: New file.
206         * libio/Makefile (tests): Add it.
207
208         * locale/loadarchive.c (_nl_load_locale_from_archive): Store strdup of
209         the name as passed, rather than the name in the archive dictionary.
210
211 2002-08-15  Ulrich Drepper  <drepper@redhat.com>
212
213         * csu/Makefile: Define elide-routines.os not static-only-routines.
214
215         * include/sched.h (__clone): Add varargs at the end.
216
217         * elf/rtld.c (_dl_start): Allow TLS_INIT_TP to fail, and stop in that
218         case.
219         (TLS_INIT_HELPER): If defined, use it.
220         * sysdeps/generic/libc-tls.c (TLS_INIT_HELPER): Likewise.
221
222 2002-08-15  Roland McGrath  <roland@redhat.com>
223
224         * elf/dl-load.c (lose): Remove [!SHARED] conditional from null check
225         on L->l_prev; it can happen under rtld --verify too.
226
227         * locale/loadarchive.c (_nl_load_locale_from_archive): Don't read the
228         header separately, just map an initial window of 2MB from the file
229         and remap if that is not large enough to cover the whole header.
230
231 2002-08-15  Andreas Jaeger  <aj@suse.de>
232
233         * sysdeps/unix/sysv/linux/m68k/Versions: Add *xattr syscalls with
234         version 2.3.
235         * sysdeps/unix/sysv/linux/arm/Versions: Likewise.
236         * sysdeps/unix/sysv/linux/alpha/Versions: Likewise.
237         * sysdeps/unix/sysv/linux/ia64/Versions: Likewise.
238         * sysdeps/unix/sysv/linux/x86_64/Versions: Likewise.
239         * sysdeps/unix/sysv/linux/sparc/sparc64/Versions: Likewise.
240         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
241         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
242         * sysdeps/unix/sysv/linux/powerpc/Versions: Likewise.
243         * sysdeps/unix/sysv/linux/mips/Versions: Likewise.
244         Patch by Andreas Gruenbacher <agruen@suse.de>.
245
246         * sysdeps/unix/sysv/linux/syscalls.list: Add *xattr syscalls.
247
248 2002-08-14  Roland McGrath  <roland@redhat.com>
249
250         * locale/locarchive.h (struct locale_category_data): Give this name to
251         the type of locale_data_t's elements.
252         * locale/programs/locarchive.c (cmpcategorysize): New static function.
253         (add_locale): Use that to sort the categories by size and put all
254         those that fit into two pages into the LC_ALL block, instead of
255         hard-coding it to do everything but LC_CTYPE and LC_COLLATE.
256         (show_archive_content): Detect categories inside LC_ALL block
257         directly, instead of hard-coding.
258         (oldlocrecentcmp): Compare just on file locations used.
259
260 2002-08-14  Jakub Jelinek  <jakub@redhat.com>
261
262         * locale/programs/locarchive.c (struct oldlocrecent): New.
263         (oldlocrecentcmp): New.
264         (enlarge_archive): Re-add locales in the order they were added
265         to the archive.
266         (add_locale): Put all the small locale files together, if the small
267         locale file block would occupy less pages if page size aligned, align
268         it.
269         (show_archive_content): Adjust for locale archives optimized for speed.
270
271 2002-08-14  Roland McGrath  <roland@frob.com>
272
273         * configure.in: Use "MISSING" as not-found value for MIG.
274         * sysdeps/mach/configure.in: Fatal if mig not found.
275         * configure, sysdeps/mach/configure: Regenerated.
276
277 2002-08-13  Jakub Jelinek  <jakub@redhat.com>
278
279         * locale/loadarchive.c (archfname): Add missing slash.
280
281         * sysdeps/generic/strtold.c (__strtold_internal): Add libc_hidden_def.
282         * wcsmbs/wcstold.c (__wcstold_internal): Add libc_hidden_def.
283
284 2002-08-12  Roland McGrath  <roland@redhat.com>
285
286         * include/sys/wait.h (__waitpid): Add libc_hidden_proto.
287         * sysdeps/unix/sysv/sco3.2.4/waitpid.S: Add libc_hidden_def.
288         * sysdeps/unix/sysv/sysv4/waitpid.c: Add libc_hidden_weak.
289         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
290         * sysdeps/unix/sysv/aix/waitpid.c: Likewise.
291         * sysdeps/unix/bsd/bsd4.4/waitpid.c: Likewise.
292         * sysdeps/generic/waitpid.c: Likewise.
293
294         * include/net/if.h: New file.  Use libc_hidden_proto
295         for if_nametoindex and if_indextoname.
296         * sysdeps/generic/if_index.c: Add libc_hidden_def.
297         * sysdeps/mach/hurd/if_index.c: Likewise.
298         * sysdeps/unix/sysv/linux/if_index.c: Likewise.
299
300         * include/grp.h (setgroups): Add libc_hidden_proto.
301         * sysdeps/generic/setgroups.c: Add libc_hidden_def.
302         * sysdeps/mach/hurd/setgroups.c: Likewise.
303         * sysdeps/unix/sysv/irix4/setgroups.c: Likewise.
304         * sysdeps/unix/sysv/linux/i386/setgroups.c: Likewise.
305
306 2002-08-13  Jakub Jelinek  <jakub@redhat.com>
307
308         * include/unistd.h (seteuid, setegid): Add libc_hidden_proto.
309         * sysdeps/generic/seteuid.c (seteuid): Add libc_hidden_def.
310         * sysdeps/generic/setegid.c (setegid): Likewise.
311         * sysdeps/mach/hurd/seteuid.c (seteuid): Likewise.
312         * sysdeps/mach/hurd/setegid.c (setegid): Likewise.
313         * sysdeps/unix/bsd/seteuid.c (seteuid): Likewise.
314         * sysdeps/unix/bsd/setegid.c (setegid): Likewise.
315         * sysdeps/unix/sysv/aix/seteuid.c (seteuid): Likewise.
316         * sysdeps/unix/sysv/aix/setegid.c (setegid): Likewise.
317         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Likewise.
318         * sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c (seteuid): Likewise.
319         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c (setegid): Likewise.
320         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Likewise.
321         * sysdeps/unix/sysv/linux/setegid.c (setegid): Likewise.
322         * sysdeps/unix/sysv/linux/i386/seteuid.c (seteuid): Likewise.
323         Remove fallback if __ASSUME_SETRESUID_SYSCALL.
324
325         * include/sys/stat.h (__fxstat_internal, __fxstat64_internal,
326         __lxstat_internal, __lxstat64_internal): Remove.
327         (__fxstat, __fxstat64, __lxstat, __lxstat64, __xstat, __xstat64):
328         Add hidden_proto.
329         * sysdeps/generic/fxstat.c (__fxstat): Add hidden_def.
330         Remove INTDEF where present, remove #undef at the beginning.
331         * sysdeps/generic/fxstat64.c (__fxstat64): Likewise.
332         * sysdeps/generic/lxstat.c (__lxstat): Likewise.
333         * sysdeps/generic/lxstat64.c (__lxstat64): Likewise.
334         * sysdeps/generic/xstat.c (__xstat): Likewise.
335         * sysdeps/generic/xstat64.c (__xstat64): Likewise.
336         * sysdeps/mach/hurd/dl-sysdep.c (__xstat64, __fxstat64): Likewise.
337         * sysdeps/mach/hurd/fxstat.c (__fxstat): Likewise.
338         * sysdeps/mach/hurd/fxstat64.c (__fxstat64): Likewise.
339         * sysdeps/mach/hurd/lxstat.c (__lxstat): Likewise.
340         * sysdeps/mach/hurd/lxstat64.c (__lxstat64): Likewise.
341         * sysdeps/mach/hurd/xstat.c (__xstat): Likewise.
342         * sysdeps/mach/hurd/xstat64.c (__xstat64): Likewise.
343         * sysdeps/unix/fxstat.c (__fxstat): Likewise.
344         * sysdeps/unix/common/lxstat.c (__lxstat): Likewise.
345         * sysdeps/unix/sysv/aix/fxstat.c (__fxstat): Likewise.
346         * sysdeps/unix/sysv/aix/fxstat64.c (__fxstat64): Likewise.
347         * sysdeps/unix/sysv/aix/lxstat.c (__lxstat): Likewise.
348         * sysdeps/unix/sysv/aix/lxstat64.c (__lxstat64): Likewise.
349         * sysdeps/unix/sysv/aix/xstat.c (__xstat): Likewise.
350         * sysdeps/unix/sysv/aix/xstat64.c (__xstat64): Likewise.
351         * sysdeps/unix/sysv/linux/ia64/fxstat.c (__fxstat): Likewise.
352         * sysdeps/unix/sysv/linux/ia64/lxstat.c (__lxstat): Likewise.
353         * sysdeps/unix/sysv/linux/ia64/xstat.c (__xstat): Likewise.
354         * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c (__fxstat): Likewise.
355         * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c (__lxstat): Likewise.
356         * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c (__xstat): Likewise.
357         * sysdeps/unix/sysv/linux/i386/fxstat.c (__fxstat): Likewise.
358         * sysdeps/unix/sysv/linux/i386/lxstat.c (__lxstat): Likewise.
359         * sysdeps/unix/sysv/linux/i386/xstat.c (__xstat): Likewise.
360         * sysdeps/unix/sysv/linux/xstat.c (__xstat): Likewise.
361         * sysdeps/unix/sysv/linux/xstat64.c (__xstat64): Likewise.
362         * sysdeps/unix/sysv/linux/fxstat.c (__fxstat): Likewise.
363         * sysdeps/unix/sysv/linux/fxstat64.c (__fxstat64): Likewise.
364         * sysdeps/unix/sysv/linux/lxstat.c (__lxstat): Likewise.
365         * sysdeps/unix/sysv/linux/lxstat64.c (__lxstat64): Likewise.
366         * sysdeps/unix/xstat.c (__xstat): Likewise.
367
368         * include/sys/statvfs.h (statvfs, fstatvfs): Add libc_hidden_proto.
369         * sysdeps/generic/statvfs.c (statvfs): Add libc_hidden_def.
370         * sysdeps/generic/fstatvfs.c (fstatvfs): Likewise.
371         * sysdeps/mach/hurd/statvfs.c (statvfs): Likewise.
372         * sysdeps/mach/hurd/fstatvfs.c (fstatvfs): Likewise.
373         * sysdeps/unix/sysv/linux/statvfs.c (statvfs): Likewise.
374         * sysdeps/unix/sysv/linux/fstatvfs.c (fstatvfs): Likewise.
375
376         * include/unistd.h (tcgetpgrp): Add libc_hidden_proto.
377         * include/termios.h (tcsetattr, cfsetispeed, cfsetospeed): Likewise.
378         * sysdeps/generic/tcgetpgrp.c (tcgetpgrp): Add libc_hidden_def.
379         * sysdeps/generic/tcsetattr.c (tcsetattr): Likewise.
380         * sysdeps/generic/speed.c (cfsetispeed, cfsetospeed): Likewise.
381         * sysdeps/unix/bsd/bsd4.4/tcsetattr.c (tcgetpgrp): Likewise.
382         * sysdeps/unix/bsd/sun/sunos4/tcsetattr.c (tcsetattr): Likewise.
383         * sysdeps/unix/bsd/sun/sunos4/speed.c (cfsetispeed, cfsetospeed):
384         Likewise.
385         * sysdeps/unix/bsd/tcgetpgrp.c (tcgetpgrp): Likewise.
386         * sysdeps/unix/bsd/tcsetattr.c (tcsetattr): Likewise.
387         * sysdeps/unix/sysv/aix/tcsetattr.c (tcsetattr): Likewise.
388         * sysdeps/unix/sysv/aix/speed.c (cfsetispeed, cfsetospeed): Likewise.
389         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Likewise.
390         * sysdeps/unix/sysv/linux/speed.c (cfsetispeed, cfsetospeed): Likewise.
391         * sysdeps/unix/sysv/tcgetpgrp.c (tcgetpgrp): Likewise.
392         * sysdeps/unix/sysv/tcsetattr.c (tcsetattr): Likewise.
393
394         * include/string.h (strcoll): Add libc_hidden_proto.
395         * string/strcoll.c (strcoll): Add libc_hidden_def.
396
397         * misc/err.c (vwarn): Fix pasto in libc_hidden_def.
398
399 2002-08-11  Philip Blundell  <philb@gnu.org>
400
401         * sysdeps/arm/Makefile: New file.
402
403 2002-08-08  Jakub Jelinek  <jakub@redhat.com>
404
405         * posix/regcomp.c (parse_reg_exp): If '|' is immediately followed
406         by another '|', end of regex or enclosing ')', clear branch.
407         * posix/bug-regex9.c: New test.
408         * posix/Makefile (tests): Add bug-regex9.
409
410 2002-08-12  Roland McGrath  <roland@redhat.com>
411
412         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Fix inner loop
413         start count condition, use TOTAL instead of variable that was never
414         set.  Fix outer loop termination condition to TOTAL >= after update.
415
416         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize
417         dl_tls_static_align and dl_tls_static_nelem.
418
419 2002-08-11  Roland McGrath  <roland@redhat.com>
420
421         * elf/tst-tlsmod4.c (in_dso): Insert a random library call before use
422         of the TLS macros, otherwise the compiler might not have initialized
423         the PIC register yet when we use the PLT via asm.
424         * elf/tst-tlsmod3.c (in_dso2): Likewise.
425         * elf/tst-tlsmod2.c (in_dso): Likewise.
426
427         * sunrpc/svc_authux.c (_svcauth_unix): Remove spurious printf (ugh!).
428
429         * sysdeps/i386/bits/byteswap.h (__bswap_16, __bswap_32, __bswap_64):
430         Evaluate argument exactly once.  Remove __volatile__ from asm's.
431
432         * include/unistd.h: Use libc_hidden_proto for getdomainname
433         and getlogin_r.
434         * sysdeps/generic/getdomain.c: Add libc_hidden_def.
435         * sysdeps/mach/hurd/getdomain.c: Likewise.
436         * sysdeps/unix/getlogin_r.c: Likewise.
437         * sysdeps/mach/hurd/getlogin_r.c: Likewise.
438         * sysdeps/generic/getlogin_r.c: Likewise.
439
440         * include/rpc/auth_des.h: Use libc_hidden_proto for rtime.
441         * sunrpc/rtime.c: Add libc_hidden_def.
442
443         * include/string.h: Use libc_hidden_proto for basename.
444         * string/basename.c [_LIBC]: Add libc_hidden_def.
445
446         * sysdeps/unix/sysv/linux/opensock.c (__opensock): socket -> __socket.
447
448         * locale/loadarchive.c: munmap -> __munmap throughout.
449
450         * include/netdb.h: Use libc_hidden_proto for gai_strerror.
451         * sysdeps/posix/gai_strerror.c: Add libc_hidden_def.
452         * sysdeps/generic/gai_strerror.c: Likewise.
453
454         * include/sys/errno.h: New file.
455
456         * include/signal.h: No libc_hidden_proto for raise,
457         __libc_current_sigrtmin, __libc_current_sigrtmax.
458         These need to be overridden by linuxthreads.
459         * sysdeps/posix/raise.c: Reverted.
460         * sysdeps/generic/raise.c: Reverted.
461         * signal/allocrtsig.c: Reverted.
462
463         * locale/loadarchive.c (LOCALEDIR): Remove debugging defn.  Oops.
464
465 2002-08-10  Roland McGrath  <roland@redhat.com>
466
467         * locale/loadarchive.c (_nl_archive_subfreeres): New function.
468         * locale/localeinfo.h: Declare it.
469         * locale/setlocale.c (free_mem): Don't call _nl_unload_locale on the
470         current locale if it's not in the file list.
471         Call _nl_archive_subfreeres.
472
473 2002-08-10  Andreas Jaeger  <aj@suse.de>
474
475         * sysdeps/i386/strchr.S: Add comment.
476
477 2002-08-10  Roland McGrath  <roland@redhat.com>
478
479         * include/wchar.h (putwc): Use libc_hidden_proto.
480         * include/stdio.h (dprintf, fprintf, vfprintf, sprintf,
481         sscanf, fwrite, perror, remove, rewind, open_memstream): Likewise.
482         * stdio-common/dprintf.c: Add libc_hidden_def.
483         * stdio-common/fprintf.c: Likewise.
484         * stdio-common/sprintf.c: Likewise.
485         * stdio-common/sscanf.c: Likewise.
486         * libio/iofwrite.c: Likewise.
487         * libio/memstream.c: Likewise.
488         * libio/putwc.c: Likewise.
489         * stdio-common/perror.c: Likewise.
490         * sysdeps/posix/remove.c: Likewise.
491         * sysdeps/generic/remove.c: Likewise.
492         * libio/rewind.c: Likewise.  Use <stdio.h> instead of "stdio.h".
493         * stdio-common/vfprintf.c: Add libc_hidden_def.  Include <stdio.h>.
494
495 2002-08-09  Jakub Jelinek  <jakub@redhat.com>
496
497         * include/wctype.h (iswalpha, iswdigit, iswlower, iswspace, iswxdigit,
498         towlower, towupper): Add prototypes here too.  Add libc_hidden_proto.
499         * wctype/wcfuncs.c (iswalpha, iswdigit, iswlower, iswspace, iswxdigit,
500         towlower, towupper): Add libc_hidden_weak.
501
502         * include/bits/dlfcn.h: New file.
503         * elf/dl-profstub.c (_dl_mcount_wrapper_check): Add libc_hidden_def.
504
505         * include/grp.h (_nss_files_parse_grent): Add libc_hidden_proto.
506         * include/netinet/ether.h (_nss_files_parse_etherent): Likewise.
507         * include/rpc/netdb.h (_nss_files_parse_rpcent): Likewise.
508         * include/pwd.h (_nss_files_parse_pwent): Likewise.
509         * include/shadow.h (_nss_files_parse_spent): Likewise.
510         * include/netdb.h (_nss_files_parse_protoent,
511         _nss_files_parse_servent, _nss_files_parse_netent): Likewise.
512         * nss/nss_files/files-parse.c (nss_files_parse_hidden_def): Define.
513         (LINE_PARSER): Use it.
514         * nss/nsswitch.h (__nss_hostname_digits_dots): Add libc_hidden_proto.
515         * nss/digits_dots.c (__nss_hostname_digits_dots): Add libc_hidden_def.
516
517         * libio/oldiopopen.c: Move #if SHLIB_COMPAT after _IO_HAVE_SYS_WAIT
518         #endif.
519
520         * manual/debug.texi (%MENU%): Remove trailing dot.
521         Reported by <hayastan132@hotmail.com>.
522
523         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek): Add lseek
524         aliases.
525         (lseek): Dummy.
526         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, lseek):
527         Likewise.
528
529 2002-08-09  Roland McGrath  <roland@redhat.com>
530
531         * locale/loadarchive.c (_nl_load_locale_from_archive): Parse locale
532         name to find codeset name (if any) and normalize it.  If the
533         normalized name differs, look up only that in the archive.
534         * locale/programs/locarchive.c (add_locale_to_archive): If the name
535         contains a codeset, normalize the codeset store only the normalized
536         name in the archive.  If not, add an alias containing the locale's
537         normalized codeset name.  Apply codeset name normalization when
538         matching entries in the alias file.
539
540         * locale/programs/locarchive.c (delete_locales_from_archive): Don't
541         decrement HEAD->namehash_used here.
542         (add_locale): Only need to insert name string when name_offset != 0.
543
544         * locale/programs/localedef.c (options): Add -A/--alias-file.
545         (alias_file): New variable.
546         (parse_opt): Grok -A, set that.
547         * locale/programs/localedef.h: Declare it.
548
549         * locale/locarchive.h (struct locrecent): Add `refs' member.
550         * locale/programs/locarchive.c (insert_name): New function, broken out
551         of ...
552         (add_locale_to_archive): ... here.  Call that.
553         (add_alias): New function.
554         (add_locale): New static function, add_locale_to_archive renamed.
555         (add_locale_to_archive): Call that and use add_alias to add an alias
556         for the name with codeset if the given name lacks it.
557         (enlarge_archive): Call add_locale instead of add_locale_to_archive.
558
559         * locale/Makefile (routines): Add loadarchive.
560         * locale/loadarchive.c: New file, started from code by Ulrich Drepper.
561         (_nl_load_locale_from_archive): New function.
562         * locale/localeinfo.h: Declare it.
563         * locale/findlocale.c (_nl_find_locale): If using default locale path,
564         try _nl_load_locale_from_archive first.
565
566         * locale/loadlocale.c (_nl_intern_locale_data): New function,
567         broken out of _nl_load_locale.
568         (_nl_load_locale): Call that.
569         * locale/localeinfo.h: Declare it.
570         (struct locale_data): Replace member `mmaped' with `alloc', an enum.
571         (struct locale_data): Remove unused member `options'.
572         * locale/findlocale.c (_nl_remove_locale): Update uses.
573         * locale/loadlocale.c (_nl_load_locale, _nl_unload_locale): Likewise.
574         * locale/C-collate.c: Update initializer.
575         * locale/C-identification.c: Likewise.
576         * locale/C-measurement.c: Likewise.
577         * locale/C-telephone.c: Likewise.
578         * locale/C-address.c: Likewise.
579         * locale/C-name.c: Likewise.
580         * locale/C-paper.c: Likewise.
581         * locale/C-time.c: Likewise.
582         * locale/C-numeric.c: Likewise.
583         * locale/C-monetary.c: Likewise.
584         * locale/C-messages.c : Likewise.
585         * locale/C-ctype.c: Likewise.
586
587         * locale/hashval.h [! LONGBITS]: Include <limits.h> here and
588         use CHAR_BIT instead of BITSPERBYTE.
589
590         * locale/localeinfo.h (_nl_find_locale, _nl_load_locale,
591         _nl_unload_locale): Add `internal_function attribute_hidden' to decls.
592         * locale/findlocale.c (_nl_find_locale): Add internal_function to defn.
593         (_nl_remove_locale): Likewise.
594         * locale/loadlocale.c (_nl_load_locale, _nl_unload_locale): Likewise.
595
596         * locale/findlocale.c (_nl_default_locale_path): New variable.
597         (_nl_find_locale): If LOCALE_PATH is null, default to that.
598         * locale/localeinfo.h: Declare it.
599         * locale/setlocale.c (setlocale): Use _nl_default_locale_path
600         in place of LOCALEDIR.  If no LOCPATH, pass null to _nl_find_locale.
601         * locale/newlocale.c (__newlocale): Likewise.
602
603         * misc/err.c (vwarnx, vwarn): Fix typos in libc_hidden_def uses.
604         * inet/rexec.c (rexec_af): Add libc_hidden_def.
605         * sysdeps/generic/morecore.c: Likewise.
606         * signal/allocrtsig.c (__libc_current_sigrtmin): Likewise.
607         (__libc_current_sigrtmax): Likewise.
608
609 2002-08-08  Roland McGrath  <roland@redhat.com>
610
611         * locale/loadlocale.c (_nl_load_locale): Don't use MAP_INHERIT.
612         * catgets/open_catalog.c (__open_catalog): Likewise.
613
614         * locale/programs/locarchive.c (INITIAL_NUM_NAMES): Renamed
615         from typo INITIAL_NUM_NANES.
616         (create_archive): Update use.
617
618 2002-08-08  Ulrich Drepper  <drepper@redhat.com>
619
620         * sysdeps/unix/sysv/linux/sigwait.c: New file.
621
622 2002-08-08  Roland McGrath  <roland@frob.com>
623
624         * resolv/netdb.h: Don't declare h_errno as a plain global any more.
625
626 2002-08-08  Jakub Jelinek  <jakub@redhat.com>
627
628         * sysdeps/wordsize-64/wcstol_l.c (wcstoll_l): Define to something
629         else and undefine after including wcstol_l.c.
630         * sysdeps/wordsize-64/wcstoul_l.c (wcstoull_l): Similarly.
631
632 2002-08-08  Ulrich Drepper  <drepper@redhat.com>
633
634         * gmon/gmon.c (write_gmon): Use O_NOFOLLOW in open calls if available.
635
636 2002-08-08  Alexandre Oliva  <aoliva@redhat.com>
637
638         * configure.in: Make the test for broken_alias_attribute stricter.
639
640 2002-05-24  Robert Love  <rml@tech9.net>
641
642         * posix/Makefile (routines): Add sched_getaffinity and
643         sched_setaffinity.
644         * posix/sched.h: Add declarations for sched_getaffinity and
645         sched_setaffinity.
646         * sysdeps/generic/sched_getaffinity.c: New file.
647         * sysdeps/generic/sched_setaffinity.c: New file.
648         * sysdeps/unix/sysv/linux/syscalls.list: Add sched_getaffinity and
649         sched_setaffinity.
650
651 2002-08-06  Andreas Schwab  <schwab@suse.de>
652
653         * sysdeps/unix/utime.c: If TIMES is NULL pass it through to utimes.
654
655 2002-08-07  Ulrich Drepper  <drepper@redhat.com>
656
657         * elf/dl-load.c (_dl_map_object_from_fd): Add missing \n in error
658         message.
659
660         * stdlib/isomac.c (get_null_defines): Treat NOT_IN_libc special.
661         It is known to be defined.
662
663         * include/string.h: Define index and rindex only if _ISOMAC is not
664         defined.
665
666         * elf/rtld.c: Include <errno.h>.
667         * sysdeps/generic/libc-tls.c: Likewise.
668
669 2002-08-07  Roland McGrath  <roland@redhat.com>
670
671         * resolv/res_debug.c (latlon2ul): Add const to argument type, and use
672         it internally.
673         (precsize_aton): Likewise.
674
675         * inet/getnetgrent_r.c (endnetgrent, __getnetgrent_r): Actually call
676         the static symbols added in the last change (doofus is me).
677
678         * locale/newlocale.c (__newlocale): Use a bit mask instead of a second
679         loop to notice missing categories in a composite name.
680
681         * locale/locale.h (LC_CTYPE_MASK, LC_NUMERIC_MASK, LC_TIME_MASK,
682         LC_COLLATE_MASK, LC_MONETARY_MASK, LC_MESSAGES_MASK, LC_ALL_MASK,
683         LC_PAPER_MASK, LC_NAME_MASK, LC_ADDRESS_MASK, LC_TELEPHONE_MASK,
684         LC_MEASUREMENT_MASK, LC_IDENTIFICATION_MASK, LC_ALL_MASK): New macros.
685
686 2002-08-07  Ulrich Drepper  <drepper@redhat.com>
687
688         * malloc/tst-calloc.c: Add tests for one or both parameters being zero.
689
690 2002-08-07  Roland McGrath  <roland@redhat.com>
691
692         * sysdeps/i386/dl-machine.h (elf_machine_rel): Add to, don't clobber,
693         unrelocated initial value for DTPOFF32 and TPOFF32 relocs.
694         Reported by Jakub Jelinek  <jakub@redhat.com>.
695
696 2002-08-07  Jakub Jelinek  <jakub@redhat.com>
697
698         * malloc/malloc.c (public_cALLOc): Check ELEM_SIZE != 0 before
699         division.
700
701 2002-08-06  Roland McGrath  <roland@redhat.com>
702
703         * include/getopt.h: Put private decls inside [_GETOPT_H].
704         Use libc_hidden_proto for getopt_long, getopt_long_only.
705         * posix/getopt1.c [_LIBC]: Include <getopt.h> instead of "getopt.h".
706         Add libc_hidden_def.
707
708         * sysdeps/generic/unwind-dw2-fde-glibc.c [_LIBC] (dl_iterate_phdr):
709         Define as a macro for __dl_iterate_phdr.
710
711         * inet/getnetgrent_r.c (internal_setnetgrent): Renamed from __ name,
712         made static.  Add __ name as a strong alias.
713         (internal_endnetgrent): Likewise.
714         (internal_getnetgrent_r): Likewise.
715
716         * locale/Versions (libc: GLIBC_2.3): Add all the *_l functions
717         with no __ prefix.
718         * locale/langinfo.h [__USE_GNU]: Declare nl_langinfo_l.
719         * ctype/ctype.h [__USE_GNU]: Add declarations and macros for
720         all *_l functions with no __ prefix.
721         * wctype/wcfuncs_l.c: Define weak aliases without __ for all fns.
722         * ctype/ctype_l.c: Likewise.
723         * locale/nl_langinfo.c: Likewise.
724         * string/string.h [__USE_GNU]: Add decls for all *_l fns with no __.
725         * stdlib/stdlib.h [__USE_GNU]: Likewise.
726         * wcsmbs/wchar.h [__USE_GNU]: Likewise.
727         * wctype/wctype.h [__USE_GNU]: Likewise.
728         * string/strcoll_l.c (strcoll_l): Define as weak alias.
729         * string/strxfrm_l.c (strxfrm_l): Define as weak alias.
730         * sysdeps/generic/strcasecmp_l.c (strcasecmp_l): Define as weak alias.
731         * sysdeps/generic/strncase_l.c (strncasecmp_l): Define as weak alias.
732         * stdlib/strtod_l.c (strtod_l): Define as weak alias.
733         * stdlib/strtof_l.c (strtof_l): Define as weak alias.
734         * stdlib/strtold_l.c (strtold_l): Define as weak alias.
735         * wcsmbs/wcscasecmp_l.c (wcscasecmp_l): Define as weak alias.
736         (__wcscasecmp_l): Add libc_hidden_def.
737         * wcsmbs/wcsncase_l.c (wcsncasecmp_l): Define as weak alias.
738         (__wcsncasecmp_l): Add libc_hidden_def.
739         * wcsmbs/wcstof_l.c (wcstof_l): Define as weak alias.
740         * wcsmbs/wcstod_l.c (wcstod_l): Define as weak alias.
741         * wcsmbs/wcstold_l.c (wcstold_l): Define as weak alias.
742         * wcsmbs/wcscoll_l.c (wcscoll_l): Define as weak alias.
743         * wcsmbs/wcsxfrm_l.c (wcsxfrm_l): Define as weak alias.
744         * sysdeps/generic/wcstol_l.c (wcstol_l): Define as weak alias.
745         * sysdeps/generic/wcstoll_l.c (wcstoll_l): Define as weak alias.
746         * sysdeps/generic/wcstoul_l.c (wcstoul_l): Define as weak alias.
747         * sysdeps/generic/wcstoull_l.c (wcstoull_l): Define as weak alias.
748         * sysdeps/wordsize-64/wcstol_l.c (wcstoll_l): Define as weak alias.
749         * sysdeps/wordsize-64/wcstoul_l.c (wcstoull_l): Define as weak alias.
750         * wctype/wctrans_l.c (wctrans_l) Define as weak alias.
751         * wctype/towctrans_l.c (towctrans_l) Define as weak alias.
752         * wctype/wctype_l.c (wctype_l) Define as weak alias.
753
754 2002-08-05  Roland McGrath  <roland@redhat.com>
755
756         * include/rpc/auth.h: Use libc_hidden_proto for getnetname,
757         netname2user, host2netname, user2netname, key_gendes.
758         * sunrpc/netname.c: Add libc_hidden_def.
759         * sunrpc/key_call.c: Likewise.
760
761         * include/netdb.h: Use libc_hidden_proto for getaddrinfo, getnameinfo,
762         freeaddrinfo.
763         * inet/getnameinfo.c: Add libc_hidden_def.
764         * sysdeps/generic/getaddrinfo.c: Likewise.
765         * sysdeps/posix/getaddrinfo.c: Likewise.
766
767         * include/wchar.h: Use libc_hidden_proto for wmemchr, wmemset.
768         * wcsmbs/wmemchr.c: Add libc_hidden_def.
769         * wcsmbs/wmemset.c: Add libc_hidden_def.
770
771         * include/string.h: Move libc_hidden_proto's inside #ifndef _STRING_H.
772         (index, rindex): Define as macros for strchr, strrchr.
773
774         * string/envz.c (envz_strip): index -> strchr
775
776         * include/rpc/rpc_msg.h: Use libc_hidden_proto for _seterr_reply.
777         * sunrpc/rpc_prot.c: Add libc_hidden_def.
778
779         * include/wchar.h: Use libc_hidden_proto for mbrtowc.
780         * wcsmbs/mbrtowc.c: Add libc_hidden_weak.
781
782         * include/stdlib.h: Use libc_hidden_proto for wctomb.
783         * stdlib/wctomb.c: Add libc_hidden_def.
784
785         * include/netdb.h: Use libc_hidden_proto for innetgr, rcmd_af,
786         rexec_af, rresvport_af, ruserok_af, iruserok_af, ruserpass, hstrerror.
787         * resolv/herror.c: Likewise.
788         * inet/rcmd.c: Add libc_hidden_def.
789         * inet/ruserpass.c: Likewise.
790         * inet/getnetgrent_r.c: Likewise.
791
792         * include/rpc/svc.h: Use libc_hidden_proto for svc_register,
793         svc_unregister, remove *_internal decls.  Use libc_hidden_proto
794         for svcerr_auth, svcerr_noprog, svcerr_progvers.
795         * sunrpc/svc.c (svc_register, svc_unregister): Change INTDEF to
796         libc_hidden_def.
797         (svcerr_auth, svcerr_noprog, svcerr_progvers): Add libc_hidden_def.
798         * sunrpc/svc_simple.c (registerrpc): Nix INTUSE for svc_register.
799
800         * sysdeps/posix/system.c (do_system): New function, guts broken out of
801         __libc_system.
802         (__libc_system): Call it, putting just the line == NULL test here.
803
804         * include/libc-symbols.h (__hidden_proto): Add extern keywords so
805         variables work right.
806
807         * elf/dl-open.c (dl_open_worker): Use _ macro instead of gettext.
808         * elf/dl-close.c (_dl_close): Likewise.
809
810         * include/netinet/in.h: Use libc_hidden_proto for bindresvport,
811         in6addr_any, in6addr_loopback.  Remove decls for
812         bindresvport_internal, in6addr_any_internal, in6addr_loopback_internal.
813         * sunrpc/svc_udp.c (svcudp_bufcreate): Nix INTUSE for bindresvport.
814         * sunrpc/svc_tcp.c (svctcp_create): Likewise.
815         * sunrpc/clnt_udp.c (clntudp_bufcreate): Likewise.
816         * sunrpc/bindrsvprt.c: Change INTDEF to libc_hidden_def.
817         * inet/in6_addr.c: Change INTVARDEF to libc_hidden_def.
818         * sysdeps/posix/getaddrinfo.c (gaih_inet): Nix INTUSE for
819         in6addr_loopback.
820         * inet/gethstbyad_r.c (PREPROCESS): Nix INTUSE for in6addr_any.
821
822         * include/netinet/ether.h: Use libc_hidden_proto for ether_ntoa_r,
823         ether_aton_r.
824         * inet/ether_aton_r.c: Add libc_hidden_def.
825         * inet/ether_ntoa_r.c: Likewise.
826
827         * include/rpc/svc.h: Use libc_hidden_proto for xprt_register,
828         xprt_unregister.
829         * sunrpc/svc.c: Add libc_hidden_def.
830         * include/rpc/pmap_clnt.h: Use libc_hidden_proto for pmap_getport,
831         pmap_set, pmap_unset.
832         * sunrpc/pmap_clnt.c: Add libc_hidden_def.
833         * sunrpc/pm_getport.c: Likewise.
834         * include/rpc/auth_des.h: Use libc_hidden_proto for getpublickey.
835         * sunrpc/publickey.c: Add libc_hidden_def.
836
837 2002-08-05  Ulrich Drepper  <drepper@redhat.com>
838
839         * elf/rtld.c (_dl_start): Don't use memset.  Use same tricks as for
840         the other memset call in this function.
841
842         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Store dtv pointer
843         at correct index.  Clear BSS region now that memalign is used.
844
845 2002-08-05  Roland McGrath  <roland@redhat.com>
846
847         * include/sys/utsname.h: Use libc_hidden_proto for uname, __uname.
848         * sysdeps/generic/uname.c: Add libc_hidden_def.
849         * sysdeps/mach/hurd/uname.c: Likewise.
850
851 2002-08-05  Jakub Jelinek  <jakub@redhat.com>
852
853         * include/wchar.h (wcrtomb, wcscmp, wcsftime, wcsspn, wcschr, wcscoll,
854         wcspbrk): Add libc_hidden_proto.
855         * time/strftime.c (my_strftime): Add libc_hidden_def.
856         (strftime): Remove libc_hidden_def.
857         * wcsmbs/wcschr.c (wcschr): Add libc_hidden_def.
858         * wcsmbs/wcspbrk.c (wcspbrk): Likewise.
859         * wcsmbs/wcsspn.c (wcsspn): Likewise.
860         * wcsmbs/wcscmp.c (wcscmp): Likewise.
861         * wcsmbs/wcrtomb.c (wcrtomb): Add libc_hidden_weak.
862         * wcsmbs/wcscoll.c (wcscoll): Likewise.
863
864         * include/rpc/rpc.h (__rpc_thread_svc_max_pollfd,
865         __rpc_thread_svc_pollfd, __rpc_thread_svc_fdset,
866         __rpc_thread_createerr): Add libc_hidden_proto.
867         * sunrpc/rpc_thread.c (__rpc_thread_svc_max_pollfd,
868         __rpc_thread_svc_pollfd, __rpc_thread_svc_fdset,
869         __rpc_thread_createerr): Add libc_hidden_def.
870
871         * include/rpc/clnt.h (clnt_sperrno, clnt_spcreateerror,
872         clnt_perror, clnt_sperror, _rpc_dtablesize): Add libc_hidden_proto.
873         * sunrpc/clnt_perr.c (clnt_sperrno, clnt_spcreateerror,
874         clnt_perror, clnt_sperror): Add libc_hidden_def.
875         * sunrpc/rpc_dtable.c (_rpc_dtablesize): Likewise.
876
877         * include/rpc/des_crypt.h (des_setparity, ecb_crypt, cbc_crypt): Add
878         libc_hidden_proto.
879         * sunrpc/des_crypt.c (ecb_crypt, cbc_crypt): Add libc_hidden_proto.
880         * sunrpc/des_soft.c (des_setparity): Likewise.
881
882         * include/rpc/auth.h (key_encryptsession_pk, key_decryptsession_pk):
883         Add libc_hidden_proto.
884         * sunrpc/key_call.c (key_encryptsession_pk, key_decryptsession_pk):
885         Add libc_hidden_def.
886
887 2002-08-05  Roland McGrath  <roland@redhat.com>
888
889         * sysdeps/generic/ldsodefs.h (struct rtld_global): Replace member
890         `bool _dl_initial_dtv_malloced' with `void *_dl_initial_dtv'.
891         * elf/rtld.c (dl_main): Set it to the new dtv for the main thread.
892         * sysdeps/generic/dl-tls.c (__tls_get_addr): When reallocating the
893         dtv, check if it matches _dl_initial_dtv; if so, malloc and copy the
894         old data, abandoning the original memory allocated by rtld at startup,
895         instead of calling realloc normally.
896
897 2002-08-05  Ulrich Drepper  <drepper@redhat.com>
898
899         * po/fr.po: Update from translation team.
900
901 2002-08-04  Roland McGrath  <roland@redhat.com>
902
903         * sysdeps/unix/make-syscalls.sh: If the syscall name field is -
904         then generate a dummy module under the given name, obeying the
905         normal rules for the "caller" field.
906
907         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Make the phdr loop
908         actually iterate over the elements.  Fix typo p_type -> p_vaddr.
909
910         * include/pthread.h: Don't declare __pthread_initialize_minimal as
911         weak here; we declare it weak or strong in the one place we use it.
912         * sysdeps/generic/libc-start.c: ... which is here.
913         Don't make the decl weak if [USE_TLS], since static programs need TLS
914         setup even when single-threaded.
915
916         * stdlib/isomac.c (fmt): Add -DNOT_IN_libc to the compiler command.
917
918         * elf/Makefile (test-srcs): Add $(modules-names) to it.
919         (CFLAGS-vismod2.c, CFLAGS-failobj.c, CFLAGS-constload2.c,
920         CFLAGS-reldepmod3.c, CFLAGS-reldepmod4.c, CFLAGS-ltglobmod2.c): Remove
921         all these variables.
922
923 2002-08-04  Ulrich Drepper  <drepper@redhat.com>
924
925         * include/stdio.h: Don't define macro magic to redirect function
926         calls if _ISOMAC is defined.
927
928         * sysdeps/i386/fpu/libm-test-ulps: Add epsilons for inlined
929         ldouble asin tests.
930
931 2002-08-04  Roland McGrath  <roland@redhat.com>
932
933         * stdlib/lrand48_r.c: Add libc_hidden_def.
934
935         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Allocate the
936         TCB with __libc_memalign instead of mmap.
937         (_dl_deallocate_tls): Free it with free instead of munmap.
938
939         * Makerules (cpp-srcs-left): When setting this to run
940         cppflags-iterator.mk, must append .c to $(tests) and $(xtests)
941         words.  Combine the two loops into one on the concatenated list,
942         including those as well as $(test-srcs).
943
944         * elf/dl-minimal.c (__libc_memalign): Guts of malloc moved here,
945         since we align here with optimally minimal waste anyway.
946         (malloc): Just call that.
947
948         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Set l_tls_offset to
949         the right variable.
950
951         * elf/dl-load.c (_dl_map_object_from_fd): Use p_vaddr, not p_offset,
952         to compute memory location for l_tls_initimage.
953         * elf/rtld.c (_dl_start): Likewise.
954         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
955
956         * libio/oldiopopen.c: Move #include's before #if SHLIB_COMPAT,
957         because the .d file is generated in the non-shared case and
958         so fails to catch them otherwise.
959
960         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): New function,
961         split out of _dl_allocate_tls.
962         (_dl_allocate_tls_init): Likewise.
963         (_dl_allocate_tls): Call those.
964         * sysdeps/generic/ldsodefs.h: Declare them with attribute_hidden.
965         * elf/rtld.c (dl_main): Call them separately instead of calling
966         _dl_allocate_tls.  Delay _dl_allocate_tls_init until after relocation
967         is finished, so that the initializer data has been relocated before we
968         copy it into the main thread's TLS block.
969
970         * sysdeps/generic/dl-tls.c (_dl_allocate_tls): Fix off-by-one error in
971         loop conditions, prevented the last used module from being initialized.
972
973 2002-08-04  Jakub Jelinek  <jakub@redhat.com>
974
975         * sysdeps/generic/glob.c (glob, globfree): Only use libc_hidden_def
976         if glob resp. globfree are not macros.
977         * sysdeps/gnu/glob64.c (globfree64): Add libc_hidden_def.
978         * sysdeps/unix/sysv/linux/alpha/glob.c (glob, globfree, globfree64):
979         Add libc_hidden_ver.
980         * sysdeps/unix/sysv/linux/i386/glob64.c (globfree64): Add
981         libc_hidden_def.
982         * sysdeps/wordsize-64/glob.c (globfree64): Use libc_hidden_ver
983         instead of libc_hidden_weak.
984         * sysdeps/wordsize-64/strtol.c (__strtoll_internal): Use
985         libc_hidden_ver instead of libc_hidden_def.
986         * sysdeps/wordsize-64/wcstol.c (__wcstoll_internal): Use
987         libc_hidden_ver instead of libc_hidden_def.
988         (wcstoll, wcstoq): Remove libc_hidden_weak.
989         * sysdeps/wordsize-64/strtol_l.c (____strtoll_l_internal): Add
990         libc_hidden_ver.
991         * sysdeps/wordsize-64/strtoul.c (__strtoull_internal): Add
992         libc_hidden_ver.
993         * sysdeps/wordsize-64/strtoul_l.c (____strtoull_l_internal): Add
994         libc_hidden_ver.
995         * sysdeps/wordsize-64/wcstoul.c (__wcstoull_internal): Add
996         libc_hidden_ver.
997
998 2002-08-04  Ulrich Drepper  <drepper@redhat.com>
999
1000         * stdio-common/psignal.c: Declare _sys_siglist_internal.  Use USEINT
1001         to access _sys_siglist.
1002         * string/strsignal.c: Likewise.
1003         * sysdeps/generic/siglist.c: Add _sys_siglist_internal alias.
1004         * sysdeps/gnu/siglist.c: Likewise.
1005         * sysdeps/unix/siglist.c: Likewise.
1006         * sysdeps/unix/sysv/linux/arm/siglist.c: Likewise.
1007
1008         * libio/fileops.c: Add missing INTUSEs for _IO_file_jumps.
1009
1010         * libio/wfileops.c: Add missing INTUSE for _IO_file_close.
1011
1012         * intl/dcigettext.c: Define _nl_default_dirname_internal as hidden
1013         alias and use it.
1014         * intl/bindtextdom.c: Use _nl_default_dirname_internal.
1015
1016         * include/netinet/in.h: Add declaration of in6addr_loopback_internal.
1017         * inet/in6_addr.c: Add INTVARDEF for in6addr_loopback.
1018         * sysdeps/posix/getaddrinfo.c: Use INTUSE for in6addr_loopback access.
1019
1020         * include/time.h: Add libc_hidden_proto for __gmtime_r.
1021         * time/gmtime.c (__gmtime_r): Add libc_hidden_def.
1022
1023         * iconv/Versions: Replace __gconv_alias_db, __gconv_modules_db,
1024         and __gconv_cache with __gconv_get_alias_db, __gconv_get_modules_db,
1025         and __gconv_get_cache respectively.
1026         * iconv/gconv_cache.c (gconv_cache): Renamed for __gconv_cache and
1027         defined static.  Change all users.
1028         (__gconv_get_cache): New function.
1029         * iconv/gconv_db.c (__gconv_get_modules_db): New function.
1030         (__gconv_get_alias_db): New function.
1031         * iconv/gconv_int.h (__gconv_alias_db): Declare as hidden.
1032         (__conv_modules_db): Likewise.
1033         Add prototypes for __gconv_get_cache, __gconv_get_modules_db,
1034         and __gconv_get_alias_db.
1035         * iconv/iconv_prog.c: Use the new functions instead of accessing the
1036         variables.
1037
1038         * include/stdlib.h: Add prototype and libc_hidden_proto for
1039         __default_morecore.
1040         * sysdeps/generic/morecore.c: Include <stdlib.h>.
1041
1042         * malloc/obstack.c: Remove fputs macro.
1043
1044         * malloc/mtrace.c: Remove fopen macro.
1045
1046 2002-08-04  Jakub Jelinek  <jakub@redhat.com>
1047
1048         * manual/debug.texi: Fix spelling to programmatically.
1049         Reported by <hayastan132@hotmail.com>.
1050
1051 2002-08-04  Ulrich Drepper  <drepper@redhat.com>
1052
1053         * include/libio.h: Add libc_hidden_proto for __uflow.
1054         * include/stdio.h: Map fopen, fdopen, fclose, fputs, fsetpos, and
1055         fgetpos to _IO_* names.
1056         Add libc_hidden_proto for fileno, fwrite, fseek, fflush_unlocked,
1057         fread_unlocked, fwrite_unlocked, fgets_unlocked, fputs_unlocked.
1058         * include/wchar.h: Add libc_hidden_proto for fputws_unlocked,
1059         putwc_unlocked, vswscanf.
1060         * libio/iolibio.h: Add libc_hidden_proto for _IO_fputs.
1061         * libio/fileno.c: Use <stdio.h> and libc_hidden_def.
1062         * libio/fseek.c: Likewise.
1063         * libio/fmemopen.c: Include "libioP.h".  Call _IO_fopencookie and
1064         not fopencookie.
1065         * libio/genops.c (__uflow): Add libc_hidden_def.
1066         * libio/iofflush_u.c (fflush_unlocked): Likewise.
1067         * libio/iofgets_u.c (fgets_unlocked): Likewise.
1068         * libio/iofputs_u.c (fputs_unlocked): Likewise.
1069         * libio/iofputws_u.c (fputws_unlocked): Likewise.
1070         * libio/iofread_u.c (fread_unlocked): Likewise.
1071         * libio/iofwrite_u.c (fwrite_unlocked): Likewise.
1072         * libio/iovswscanf.c (vswscanf): Likewise.
1073         * libio/putwc_u.c (putwc_unlocked): Likewise.
1074         * libio/iofputs.c: Use libc_hidden_def instead of INTDEF.
1075         * malloc/malloc.c: Redirect fwrite calls to _IO_fwrite.
1076         * malloc/mtrace.c: Likewise.
1077
1078         * sunrpc/clnt_perr.c: Remove fputs macro.
1079         * sunrpc/svc_simple.c: Likewise.
1080         * sunrpc/svc_tcp.c: Likewise.
1081         * sunrpc/svc_udp.c: Likewise.
1082         * sunrpc/xdr_rec.c: Likewise.
1083         * sunrpc/xdr_ref.c: Likewise.
1084
1085         * iconv/Makefile: Add CPPFLAGS definitions with -DNOT_in_libc for
1086         iconv_prog, linereader, and charmap-dir.
1087         * locale/Makefile: Likewise for locale and charmap-dir.
1088         * malloc/Makefile: Likewise for memusagestat.
1089         * nscd/Makefile: Likewise for nscd, nscd_conf, and dbg_log.
1090         * sunrpc/Makefile: Likewise for rpc_main.
1091         * sysdeps/unix/sysv/linux/Makefile: Likewise for lddlibc4.
1092         * timezone/Makefile: Likewise for zic.
1093
1094         * stdio-common/perror.c: Avoid multiple calls to fileno_unlocked.
1095
1096         * elf/dl-addr.c (_dl_addr): Add libc_hidden_def.
1097         * elf/dl-close.c (_dl_close): Add libc_hidden_def.
1098         * elf/dl-open.c (_dl_open): Add libc_hidden_def.
1099         * include/dlfcn.h: Add libc_hidden_proto for _dl_addr, _dl_open,
1100         _dl_close.
1101
1102         * include/libio.h: Add libc_hidden_proto for __underflow, __wuflow,
1103         __wunderflow.
1104         * libio/genops.c (__underflow): Add libc_hidden_def.
1105         * libio/wgenops.c (__wuflow): Likewise.
1106         (__wunderflow): Likewise.
1107
1108         * include/obstack.h: Add libc_hidden_proto for _obstack_newchunk.
1109         * malloc/obstack.c (_obstack_newchunk): Add libc_hidden_def.
1110
1111         * include/stdio.h: Add libc_hidden_proto for __vfscanf.
1112         * stdio-common/vfscanf.c (__vfscanf): Add libc_hidden_def.
1113
1114         * include/string.h: Add libc_hidden_proto for __strverscmp.
1115         * string/strverscmp.c (__strverscmp): Add libc_hidden_def.
1116
1117         * include/unistd.h: Add libc_hidden_proto for __sysconf.
1118         * sysdeps/generic/sysconf.c (__sysconf): Add libc_hidden_def.
1119         * sysdeps/posix/sysconf.c: Likewise.
1120         * sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
1121         * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
1122
1123         * include/wctype.h: Use libc_hidden_proto for __iswctype, __iswalnum_l,
1124         __iswalpha_l, __iswblank_l, __iswcntrl_l, __iswdigit_l, __iswlower_l,
1125         __iswgraph_l, __iswprint_l, __iswpunct_l, __iswspace_l, __iswupper_l,
1126         __iswxdigit_l, __towlower_l, __towupper_l.
1127         * wcsmbs/wcstype.c (__iswctype): Use libc_hidden_def.
1128         * wcsmbs/wcfuncs_l.c: Use libc_hidden_def for all functions.
1129
1130         * include/sys/wait.h: Add libc_hidden_proto for __xmknod.
1131         * sysdeps/generic/xmknod.c (__xmknod): Add libc_hidden_def.
1132         * sysdeps/mach/hurd/xmknod.c: Likewise.
1133         * sysdeps/unix/xmknod.c: Likewise.
1134         * sysdeps/unix/sysv/linux/xmknod.c: Likewise.
1135         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Likewise.
1136         * sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise.
1137
1138         * sunrpc/svc.c: Add missing INTUSE for _authenticate.
1139
1140 2002-08-03  Roland McGrath  <roland@redhat.com>
1141
1142         * include/sys/resource.h: Use libc_hidden_proto for getpriority,
1143         setpriority.
1144         * sysdeps/unix/sysv/linux/getpriority.c: Add libc_hidden_def.
1145         * sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
1146         * sysdeps/unix/sysv/irix4/setpriority.c: Likewise.
1147         * sysdeps/mach/hurd/setpriority.c: Likewise.
1148         * sysdeps/mach/hurd/getpriority.c: Likewise.
1149         * sysdeps/generic/setpriority.c: Likewise.
1150         * sysdeps/generic/getpriority.c: Likewise.
1151
1152         * include/mcheck.h: Use libc_hidden_proto for mcheck_check_all.
1153         * malloc/mcheck.c: Add libc_hidden_def.
1154
1155         * include/search.h: Use libc_hidden_proto for hcreate_r, hdestroy_r.
1156         * misc/hsearch_r.c: Add libc_hidden_def.
1157
1158         * include/fnmatch.h: Use libc_hidden_proto for fnmatch.
1159         * posix/fnmatch.c: Add libc_hidden_weak.
1160
1161         * include/unistd.h: Use libc_hidden_proto for _exit, alarm, confstr,
1162         execl, execle, execlp, execvp, getpid, getsid.
1163         * sysdeps/generic/alarm.c: Add libc_hidden_def.
1164         * sysdeps/unix/alarm.c: Likewise.
1165         * posix/confstr.c: Likewise.
1166         * posix/execvp.c: Likewise.
1167         * posix/execlp.c: Likewise.
1168         * posix/execle.c: Likewise.
1169         * posix/execl.c: Likewise.
1170         * sysdeps/generic/getsid.c: Likewise.
1171         * sysdeps/mach/hurd/getsid.c: Likewise.
1172         * sysdeps/generic/getpid.c: Add libc_hidden_weak.
1173         * sysdeps/mach/hurd/getpid.c: Likewise.
1174
1175         * include/stdlib.h: Use libc_hidden_proto for ecvt_r, fcvt_r,
1176         qecvt_r, qfcvt_r, lrand48_r.
1177         * misc/efgcvt_r.c: Add libc_hidden_def.
1178
1179         * include/wordexp.h: Use libc_hidden_proto for wordfree.
1180         * sysdeps/generic/wordexp.c: Add libc_hidden_def.
1181
1182         * include/langinfo.h: Use libc_hidden_proto for nl_langinfo.
1183         * locale/nl_langinfo.c: Add libc_hidden_def.
1184
1185         * include/glob.h: Use libc_hidden_proto for glob, globfree, globfree64.
1186         * sysdeps/generic/glob.c: Add libc_hidden_def.
1187         * sysdeps/generic/glob64.c: Likewise.
1188         * sysdeps/wordsize-64/glob.c (globfree64): Add libc_hidden_weak.
1189
1190         * locale/nl_langinfo.c: Use _NL_CURRENT_DATA.
1191
1192         * elf/Makefile (CFLAGS-vismod2.c): New variable.
1193
1194         * locale/setlocale.c (_nl_current_names): Variable moved ...
1195         * locale/localename.c (_nl_current_names): ... here, new file.
1196         Make it global, with attribute_hidden.
1197         * locale/localeinfo.h: Declare it.
1198         * locale/Makefile (aux): Add localename.
1199         * locale/localename.c (__current_locale_name): New function.
1200         * include/locale.h (__current_locale_name): Declare it.
1201         * intl/dcigettext.c (guess_category_value): Use that instead of
1202         calling setlocale.
1203
1204         * locale/locale.h [__USE_GNU] (locale_t): New type alias of __locale_t.
1205         [__USE_GNU] (newlocale, duplocale, freelocale, uselocale): New decls.
1206         [__USE_GNU] (LC_GLOBAL_LOCALE): New macro.
1207         * locale/newlocale.c: Add alias to __ name.
1208         * locale/duplocale.c: Likewise.
1209         * locale/freelocale.c: Likewise.
1210         * locale/uselocale.c: New file.
1211         * locale/Makefile (routines): Add it.
1212         * locale/Versions (libc: GLIBC_2.3): New set.
1213         Add newlocale, duplocale, freelocale, uselocale.
1214         (libc: GLIBC_PRIVATE): Add __uselocale.
1215
1216         * locale/localeinfo.h [SHARED]
1217         (_NL_CURRENT_LOCALE): New macro, defined to fetch a tsd value.
1218         (_NL_CURRENT_DATA): Define using that.
1219         (_NL_CURRENT, _NL_CURRENT_WSTR, _NL_CURRENT_WORD): Define using that.
1220         (_NL_CURRENT_DEFINE): Define to empty.
1221         [! SHARED]: Decls of _nl_current_CATEGORY and _nl_current
1222         conditionalized on this.
1223         * locale/xlocale.c (NL_C_INTIIALIZER): New macro,
1224         taking initializer of _nl_C_locobj.
1225         [SHARED] (_nl_global_locale): New variable, using that initializer.
1226         (_nl_C_locobj): Use new macro for initialzier.
1227         * locale/setlocale.c [! SHARED] (_nl_current): Conditionalize on this.
1228         [! SHARED] (CATEGORY_USED): New macro.
1229         [SHARED] (CATEGORY_USED, _nl_C): New macros.
1230         (setdata, setlocale): Use that macro instead of examining _nl_current.
1231         (setdata): Set the slot in _nl_global_locale.
1232         Conditionalize setting of _nl_current on [! SHARED].
1233         * locale/findlocale.c [SHARED] (_nl_C): Define as a macro instead of
1234         declaration as an extern.
1235         * locale/newlocale.c (__newlocale): Use _nl_C_locobj instead of _nl_C.
1236
1237         * include/locale.h: Use libc_hidden_proto for setlocale.
1238         * locale/setlocale.c: Add libc_hidden_def.
1239
1240         * locale/setlocale.c (free_mem): Use _NL_CURRENT_DATA.
1241
1242         * include/search.h: Use libc_hidden_proto for hsearch_r, lfind.
1243         * misc/hsearch_r.c: Add libc_hidden_def.
1244         * misc/lsearch.c: Likewise.
1245
1246         * include/ttyent.h: Use libc_hidden_proto for getttyent, setttyent,
1247         endttyent.
1248         * misc/getttyent.c: Add libc_hidden_def.
1249
1250         * include/mcheck.h: Use libc_hidden_proto for mcheck.
1251         * malloc/mcheck.c: Add libc_hidden_def.
1252
1253         * include/envz.h: Use libc_hidden_proto for envz_entry, enz_remove.
1254         * include/argz.h: Use libc_hidden_proto for argz_delete.
1255         * string/argz-delete.c: Add libc_hidden_def.
1256         * string/envz.c: Likewise.  Use <envz.h>, not "envz.h".
1257
1258         * sysdeps/unix/sysv/linux/x86_64/clone.S (thread_start): Use
1259         HIDDEN_JUMPTARGET for _exit.
1260         * sysdeps/unix/sysv/linux/m68k/clone.S (thread_start): Likewise.
1261         * sysdeps/unix/sysv/linux/i386/clone.S (thread_start): Likewise.
1262         * sysdeps/unix/sysv/linux/powerpc/clone.S: Likewise.
1263         * sysdeps/unix/_exit.S (_exit): Add libc_hidden_def.
1264
1265         * include/libc-symbols.h: Fix [__ASSEMBLY__] -> [__ASSEMBLER__].
1266         [__ASSEMBLER__] (hidden_weak): Define using hidden_def, or to empty.
1267         [__ASSEMBLER__] (HIDDEN_JUMPTARGET): New macro.
1268         * sysdeps/unix/sysv/linux/i386/makecontext.S: Use it for exit.
1269
1270         * include/stdlib.h: Use libc_hidden_proto for abort,
1271         __strtof_internal, __strtod_internal, __strtold_internal,
1272         __strtol_internal, __strtoll_internal, __strtoul_internal,
1273         __strtoull_internal. __strtof_l_internal, __strtod_l_internal,
1274         __strtold_l_internal, __strtol_l_internal, __strtoll_l_internal,
1275         __strtoul_l_internal, __strtoull_l_internal.
1276         * include/wchar.h: Use libc_hidden_proto for __wcstof_internal,
1277         __wcstod_internal, __wcstold_internal, __wcstol_internal,
1278         __wcstoll_internal, __wcstoul_internal, ____wcstof_l_internal,
1279         ____wcstod_l_internal, ____wcstold_l_internal, ____wcstol_l_internal,
1280         ____wcstoll_l_internal, ____wcstoul_l_internal, __wcscasecmp_l,
1281         __wcsncasecmp_l.
1282         * sysdeps/generic/abort.c: Add libc_hidden_def.
1283         * stdlib/strtod.c: Likewise.
1284         * sysdeps/generic/strtol.c: Likewise.
1285         * sysdeps/wordsize-64/strtol.c: Likewise.
1286         * sysdeps/wordsize-64/wcstol.c: Likewise.
1287         * sysdeps/wordsize-64/wcstol_l.c: Likewise.
1288
1289         * include/stdlib.h: Use libc_hidden_proto for qsort.
1290         * stdlib/msort.c: Add libc_hidden_def.
1291
1292         * include/utime.h: Use libc_hidden_proto for utime.
1293         * sysdeps/generic/utime.c: Add libc_hidden_def.
1294         * sysdeps/unix/utime.c: Likewise.
1295
1296         * sysdeps/generic/utmp_file.c (LOCK_FILE): sigemptyset -> __sigemptyset
1297         * sysdeps/posix/profil.c (__profil): sigfillset -> __sigfillset
1298         * sysdeps/posix/sprofil.c (__sprofil): Likewise.
1299         * shadow/lckpwdf.c (__lckpwdf): Likewise (both).
1300         * sysdeps/posix/spawni.c (__spawni): sigismember -> __sigismember
1301
1302         * include/signal.h: Use libc_hidden_proto for raise, sigemptyset,
1303         sigfillset, sigismember, __sigpause, __libc_current_sigrtmin,
1304         and __libc_current_sigrtmax.
1305         * signal/sigismem.c: Add libc_hidden_def.
1306         * signal/sigfillset.c: Likewise.
1307         * signal/sigempty.c: Likewise.
1308         * sysdeps/generic/sigpause.c (__sigpause): Likewise.
1309         * sysdeps/posix/sigpause.c (__sigpause): Likewise.
1310         * sysdeps/unix/bsd/osf/alpha/sigpause.S: Likewise.
1311         * sysdeps/posix/raise.c: Likewise.
1312         * sysdeps/generic/raise.c: Likewise.
1313
1314 2002-08-03  Ulrich Drepper  <drepper@redhat.com>
1315
1316         * include/string.h: Use libc_hidden_proto for __stpcpy.
1317         * sysdeps/alpha/stpcpy.S (__stpcpy): Add libc_hidden_def.
1318         * sysdeps/alpha/alphaev67/stpcpy.S: Likewise.
1319         * sysdeps/generic/stpcpy.c: Likewise.
1320         * sysdeps/i386/stpcpy.S: Likewise.
1321         * sysdeps/i386/i586/stpcpy.S: Likewise.
1322         * sysdeps/powerpc/stpcpy.S: Likewise.
1323         * sysdeps/sparc/sparc32/stpcpy.S: Likewise.
1324         * sysdeps/sparc/sparc64/stpcpy.S: Likewise.
1325
1326         * include/string.h: Use libc_hidden_proto for __strcasecmp_l,
1327         __strncasecmp_l, __strdup, __strndup, __strerror_r.
1328         * sysdeps/generic/strcasecmp_l.c (__strcasecmp_l): Add
1329         libc_hidden_def.
1330         * string/strdup.c (__strdup): Likewise.
1331         * string/strndup.c (__strndup): Likewise.
1332         * sysdeps/generic/_strerror.c (__strerror_r): Likewise.
1333         * sysdeps/generic/strncase_l.c (__strncasecmp_l): Likewise.
1334
1335 2002-08-03  Jakub Jelinek  <jakub@redhat.com>
1336
1337         * include/libio.h: New file.
1338         * libio/libioP.h (__overflow, __woverflow): Remove libc_hidden_proto.
1339         * libio/iolibio.h: #include <libio.h>, not "libio.h".
1340         * sysdeps/generic/morecore.c (__sbrk): Add libc_hidden_proto.
1341         * sysdeps/unix/bsd/syscalls.list: Remove all __GI_* aliases.
1342         * sysdeps/unix/common/syscalls.list: Likewise.
1343         * sysdeps/unix/inet/syscalls.list: Likewise.
1344         * sysdeps/unix/sysv/irix4/syscalls.list: Likewise.
1345         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise.
1346         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
1347         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
1348         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
1349         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
1350         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
1351         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
1352         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
1353         * sysdeps/unix/sysv/sysv4/solaris2/syscalls.list: Likewise.
1354         * sysdeps/unix/syscalls.list: Likewise.
1355
1356 2002-08-03  Jakub Jelinek  <jakub@redhat.com>
1357             Ulrich Drepper  <drepper@redhat.com>
1358
1359         * malloc/malloc.c (public_cALLOc): Only divide if at least one of
1360         the arguments is big enough to cause an overflow.
1361
1362 2002-08-03  Ulrich Drepper  <drepper@redhat.com>
1363
1364         * assert/assert.c: Use hidden_def not INTDEF.
1365
1366 2002-08-03  Jakub Jelinek  <jakub@redhat.com>
1367
1368         * include/libc-symbols.h: Optimize if HAVE_BROKEN_ALIAS_ATTRIBUTE is
1369         not defined.
1370
1371 2002-08-03  Roland McGrath  <roland@redhat.com>
1372
1373         * include/sys/syslog.h: Use libc_hidden_proto for syslog, vsyslog.
1374         * include/err.h: Use libc_hidden_proto for warn, warnx, vwarn, vwarn,
1375         verr, verrx.
1376         * include/stdlib.h: Use libc_hidden_proto for exit, getenv, bsearch.
1377         * misc/syslog.c: Add libc_hidden_def.
1378         * misc/err.c: Likewise.
1379         * stdlib/exit.c: Likewise.
1380         * stdlib/bsearch.c: Likewise.
1381         * sysdeps/generic/getenv.c: Likewise.
1382
1383         * include/libc-symbols.h (hidden_weak): Define it for [__ASSEMBLER__].
1384
1385         * sysdeps/unix/make-syscalls.sh: Generate libc_hidden_def or
1386         libc_hidden_weak for every system call symbol defined.
1387
1388         * include/time.h: Use libc_hidden_proto for time, asctime, mktime,
1389         timelocal, localtime, strftime.
1390         * time/asctime.c: Add libc_hidden_def.
1391         * time/mktime.c: Likewise.
1392         * time/localtime.c: Likewise.
1393         * time/strftime.c: Likewise.
1394         * time/strptime.c: Likewise.
1395         * sysdeps/generic/time.c: Likewise.
1396         * sysdeps/unix/time.c: Likewise.
1397         * sysdeps/unix/sysv/i386/time.S: Likewise.
1398         * sysdeps/unix/sysv/linux/x86_64/time.S: Likewise.
1399
1400         * include/arpa/inet.h: Use libc_hidden_proto for inet_ntop, inet_pton.
1401         inet_makeaddr, inet_netof, inet_addr, __inet_addr.
1402         * resolv/inet_ntop.c: Likewise.
1403         * resolv/inet_pton.c: Likewise.
1404         * inet/inet_mkadr.c: Add libc_hidden_def.
1405         * inet/inet_netof.c: Likewise.
1406         * resolv/inet_addr.c: Likewise.
1407
1408         * include/libc-symbols.h: Remove `defined HAVE_BROKEN_ALIAS_ATTRIBUTE'
1409         clauses from conditionals for now.  Will have to be fixed later
1410         for older compilers.
1411
1412         * sysdeps/generic/mempcpy.c (__mempcpy): #undef it before defn.
1413
1414 2002-08-02  Ulrich Drepper  <drepper@redhat.com>
1415
1416         * configure.in (HAVE_BROKEN_ALIAS_ATTRIBUTE): Add check for
1417         broken alias attribute handling.
1418         * config.h.in (HAVE_BROKEN_ALIAS_ATTRIBUTE): Add.
1419
1420 2002-08-02  Roland McGrath  <roland@frob.com>
1421
1422         * elf/Makefile ($(objpfx)interp.os): Depend on config.make,
1423         since it sets the variables we use in a -D switch.
1424
1425 2002-08-02  Roland McGrath  <roland@redhat.com>
1426
1427         * posix/bits/posix1_lim.h (SSIZE_MAX): Define to LONG_MAX, not INT_MAX.
1428         On 32-bit platforms they are the same; on 64-bit platforms ssize_t
1429         matches long int, not int.
1430
1431         * locale/localeinfo.h (_NL_CURRENT_DATA): New macro.
1432         * wcsmbs/wcsmbsload.h (update_conversion_ptrs): Use it.
1433         * locale/lc-ctype.c (_nl_postload_ctype): Likewise.
1434         * wctype/wctrans.c (wctrans): Likewise.
1435         * wctype/wctype.c (__wctype): Likewise.
1436         * intl/loadmsgcat.c (_nl_init_domain_conv): Use _NL_CURRENT.
1437
1438 2002-08-02  Ulrich Drepper  <drepper@redhat.com>
1439
1440         * assert/assert.c (__assert_fail): Fix typo in comment.
1441
1442         * include/rpc/rpc.h: Declare RPC_VARS tsd as extern.
1443         * sunrpc/rpc_thread.c: Define it without static.
1444         * sunrpc/Versions [libc] (GLIBC_PRIVATE): Export __libc_tsd_RPC_VARS.
1445
1446 2002-08-02  Jakub Jelinek  <jakub@redhat.com>
1447
1448         * assert/assert.c (__assert_fail): Remove undef.
1449         Replace INTDEF with libc_hidden_def.
1450         * assert/__assert.c (__assert): Remove INTUSE.
1451         * elf/dl-minimal.c (__assert_fail): Replace INTDEF with
1452         libc_hidden_weak.
1453         * include/libc-symbols.h (hidden_proto, hidden_def, hidden_weak,
1454         hidden_ver, libc_hidden_proto, libc_hidden_def, libc_hidden_weak,
1455         libc_hidden_ver, rtld_hidden_proto, rtld_hidden_def, rtld_hidden_weak,
1456         rltd_hidden_ver, libm_hidden_proto, libm_hidden_def, libm_hidden_weak,
1457         libm_hiden_ver): Define.
1458         * include/assert.h (__assert_fail_internal): Remove.
1459         (__assert_fail): Add prototype.  Add hidden_proto.
1460         * include/libc-internal.h (__libc_freeres, __profile_frequency): Add
1461         libc_hidden_proto.
1462         * include/wchar.h (__mbrtowc_internal, __mbrlen_internal): Remove.
1463         (__mbrtowc, __mbrlen): Use libc_hidden_proto.  Remove macros.
1464         * include/string.h (__mempcpy, __stpncpy, __rawmemchr, __strcasecmp):
1465         Add libc_hidden_proto.
1466         * include/fcntl.h (__open64, __libc_open, __libc_fcntl, __open,
1467         __fcntl): Add libc_hidden_proto.  Remove macros.
1468         (__open_internal, __fcntl_internal): Remove.
1469         * libio/iofdopen.c (_IO_fcntl): Remove INTUSE from __fcntl.
1470         * malloc/set-freeres.c (__libc_freeres): Add libc_hidden_def.
1471         * nss/nsswitch.h (__nss_database_lookup, __nss_next): Add
1472         libc_hiden_proto.
1473         * nss/nsswitch.c (__nss_database_lookup, __nss_next): Add
1474         libc_hidden_def.
1475         * sysdeps/generic/mempcpy.c (__mempcpy): Remove undef.
1476         Add libc_hidden_def.
1477         * sysdeps/generic/open64.c (__open64): Add libc_hidden_def.
1478         * sysdeps/generic/open.c (__open): Remove undef.
1479         Add libc_hidden_def.  Remove INTDEF.
1480         * sysdeps/generic/fcntl.c (__fcntl): Remove undef.
1481         Add libc_hidden_def.
1482         * sysdeps/mach/hurd/fcntl.c (__fcntl): Likewise.
1483         * sysdeps/i386/i586/mempcpy.S (__mempcpy): Add libc_hidden_def.
1484         * sysdeps/i386/i686/mempcpy.S (__mempcpy): Likewise.
1485         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl, __fcntl): Remove undef.
1486         (__fcntl): Remove INTDEF2.  Add libc_hidden_weak.
1487         (__libc_fcntl): Add libc_hidden_def.
1488         * sysdeps/mach/hurd/open.c (__libc_open, __open): Remove undef.
1489         (__open): Remove INTDEF2.  Add libc_hidden_weak.
1490         (__libc_open): Add libc_hidden_def.
1491         * sysdeps/posix/open64.c (__open64): Add libc_hidden_weak.
1492         * sysdeps/standalone/open.c (__open): Add libc_hidden_def.
1493         * sysdeps/unix/sysv/aix/fcntl.c (__libc_fcntl, __fcntl): Remove undef.
1494         Add libc_hidden_def.
1495         * sysdeps/unix/sysv/aix/open.c (__libc_open, __open): Remove undef.
1496         Add libc_hidden_def.
1497         * sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl, __fcntl): Remove
1498         undef.
1499         (__fcntl): Remove INTDEF2.  Add libc_hidden_weak.
1500         (__libc_fcntl): Add libc_hidden_def.
1501         * sysdeps/unix/sysv/linux/syscalls.list (__fcntl_internal,
1502         __getpgid_internal, __chown_internal): Remove.
1503         (__GI___fcntl, __GI___libc_fcntl, __GI___getpgid, __GI___pipe,
1504         __GI___sched_setscheduler, __GI___select, __GI___setpgid,
1505         __GI___chown): Add.
1506         * sysdeps/unix/syscalls.list (__close_internal, __dup2_internal,
1507         __getpid_internal, __open_internal, __write_internal): Remove.
1508         (__GI___fcntl, __GI___libc_fcntl, __GI___open, __GI___libc_open,
1509         __GI___chown, __GI___close, __GI___dup2, __GI___getpid,
1510         __GI___libc_open, __GI___open, __GI___read, __GI___libc_read,
1511         __GI___select, __GI___statfs, __GI___write, __GI___libc_write): Add.
1512         * wcsmbs/mbrlen.c (__mbrlen): Remove undef.
1513         Replace INTDEF with libc_hidden_def.
1514         * wcsmbs/mbrtowc.c (__mbrtowc): Likewise.
1515         * catgets/catgetsinfo.h (__open_catalog): Add libc_hidden_proto.
1516         * catgets/open_catalog.c (__open_catalog): Add libc_hidden_def.
1517         * elf/dl-profile.c (__profile_frequency): Add libc_hidden_proto.
1518         * include/rpc/rpc.h (__rpc_thread_svc_fdset, __rpc_thread_createerr):
1519         Add libc_hidden_proto.
1520         * include/sys/poll.h (__poll): Add libc_hidden_proto.
1521         * include/sys/select.h (__select): Likewise.
1522         * include/sys/socket.h (__send): Likewise.
1523         * include/sys/statfs.h (__statfs): Likewise.
1524         * include/unistd.h (__pwrite64, __libc_read, __pipe, __chown, __dup2,
1525         __getpid, __getpgid, __setpgid, __close, __read, __write,
1526         __getpagesize, __sbrk): Likewise.
1527         (__chown_internal, __dup2_internal, __getpid_internal,
1528         __getpgid_internal, __close_internal, __write_internal,
1529         __getpagesize_internal): Remove.
1530         (__close, __dup2, __getpagesize, __getpgid, __getpid, __libc_write):
1531         Remove macros.
1532         * include/printf.h (__printf_fp): Add libc_hidden_proto.
1533         * include/sched.h (__sched_setscheduler): Likewise.
1534         * include/resolv.h (__res_ninit, __res_randomid): Likewise.
1535         * include/stdlib.h (__secure_getenv): Likewise.
1536         * include/signal.h (__sigaction, __sigsuspend): Likewise.
1537         * inet/getaliasent_r.c (NSS_attribute_hidden): Remove.
1538         * inet/getaliasname_r.c (NSS_attribute_hidden): Remove.
1539         * inet/getnetbyad_r.c (NSS_attribute_hidden): Remove.
1540         * inet/getnetbynm_r.c (NSS_attribute_hidden): Remove.
1541         * inet/getnetent_r.c (NSS_attribute_hidden): Remove.
1542         * inet/getproto_r.c (NSS_attribute_hidden): Remove.
1543         * inet/getprtent_r.c (NSS_attribute_hidden): Remove.
1544         * inet/getprtname_r.c (NSS_attribute_hidden): Remove.
1545         * inet/getrpcbyname_r.c (NSS_attribute_hidden): Remove.
1546         * inet/getrpcbynumber_r.c (NSS_attribute_hidden): Remove.
1547         * inet/getrpcent_r.c (NSS_attribute_hidden): Remove.
1548         * inet/getservent_r.c (NSS_attribute_hidden): Remove.
1549         * inet/getsrvbynm_r.c (NSS_attribute_hidden): Remove.
1550         * inet/getsrvbypt_r.c (NSS_attribute_hidden): Remove.
1551         * inet/gethstbyad_r.c (DB_LOOKUP_FCT): Remove INTUSE.
1552         * inet/gethstbynm2_r.c (DB_LOOKUP_FCT): Likewise.
1553         * inet/gethstbynm_r.c (DB_LOOKUP_FCT): Likewise.
1554         * inet/gethstent_r.c (DB_LOOKUP_FCT): Likewise.
1555         * libio/genops.c (__overflow): Add libc_hidden_def.
1556         * libio/iovdprintf.c: Remove libio.h include.
1557         * libio/libioP.h (libc_hidden_proto, libc_hidden_def,
1558         libc_hidden_weak): Define to nothing if not defined.
1559         (__overflow, __woverflow): Add libc_hidden_proto.
1560         * libio/wgenops.c (__woverflow): Add libc_hidden_def.
1561         * nss/getXXent_r.c (NSS_attribute_hidden): Remove.
1562         (DB_LOOKUP_FCT): Add libc_hidden_proto.
1563         * nss/getXXbyYY_r.c (NSS_attribute_hidden): Remove.
1564         (DB_LOOKUP_FCT): Add libc_hidden_proto.
1565         * nss/XXX-lookup.c (DB_LOOKUP_FCT): Add libc_hidden_proto
1566         and libc_hidden_def.
1567         * nss/hosts-lookup.c (__nss_hosts_lookup): Remove INTDEF.
1568         * posix/bsd-getpgrp.c (__getpgid_internal): Remove.
1569         (__getpgid): Add libc_hidden_proto.
1570         (__bsd_getpgrp): Remove INTUSE.
1571         * resolv/res_init.c (__res_ninit, __res_randomid): Add
1572         libc_hidden_def.
1573         * shadow/getspent_r.c (NSS_attribute_hidden): Remove.
1574         * shadow/getspnam_r.c (NSS_attribute_hidden): Remove.
1575         * stdio-common/printf_fp.c (__printf_fp): Add libc_hidden_def.
1576         * stdlib/strfmon.c (__printf_fp): Add libc_hidden_proto.
1577         * stdlib/secure-getenv.c (__secure_getenv): Add libc_hidden_def.
1578         * sunrpc/rpc_thread.c (__rpc_thread_svc_fdset,
1579         __rpc_thread_createerr): Add libc_hidden_def.
1580         * sysdeps/alpha/alphaev67/rawmemchr.S (__rawmemchr): Add
1581         libc_hidden_def.
1582         * sysdeps/alpha/alphaev67/stpncpy.S (__stpncpy): Likewise.
1583         * sysdeps/alpha/rawmemchr.S (__rawmemchr): Likewise.
1584         * sysdeps/alpha/stpncpy.S (__stpncpy): Likewise.
1585         * sysdeps/generic/chown.c (__chown): Likewise.
1586         * sysdeps/generic/close.c (__close): Likewise.
1587         * sysdeps/generic/dup2.c (__dup2): Likewise.
1588         * sysdeps/generic/pipe.c (__pipe): Likewise.
1589         * sysdeps/generic/prof-freq.c (__profile_frequency): Likewise.
1590         * sysdeps/generic/pwrite64.c (__pwrite64): Likewise.
1591         * sysdeps/generic/rawmemchr.c (__rawmemchr): Likewise.
1592         * sysdeps/generic/read.c (__libc_read): Likewise.
1593         (__read): Add libc_hidden_weak.
1594         * sysdeps/generic/sbrk.c (__sbrk): Add libc_hidden_def.
1595         * sysdeps/generic/sched_sets.c (__sched_setscheduler): Likewise.
1596         * sysdeps/generic/select.c (__select): Likewise.
1597         * sysdeps/generic/send.c (__send): Likewise.
1598         * sysdeps/generic/setpgid.c (__setpgid): Likewise.
1599         * sysdeps/generic/sigaction.c (__sigaction): Likewise.
1600         * sysdeps/generic/sigsuspend.c (__sigsuspend): Likewise.
1601         * sysdeps/generic/statfs.c (__statfs): Likewise.
1602         * sysdeps/generic/stpncpy.c (__stpncpy): Likewise.
1603         * sysdeps/generic/strcasecmp.c (__strcasecmp): Likewise.
1604         * sysdeps/generic/getpagesize.c (__getpagesize): Likewise.
1605         Remove undef and INTDEF.
1606         * sysdeps/generic/getpgid.c (__getpgid): Likewise.
1607         * sysdeps/generic/getpid.c (__getpid): Likewise.
1608         * sysdeps/generic/write.c (__libc_write): Likewise.
1609         (__write): Add libc_hidden_weak.  Remove undef and INTDEF.
1610         * sysdeps/i386/rawmemchr.S (__rawmemchr): Add libc_hidden_def.
1611         * sysdeps/i386/stpncpy.S (__stpncpy): Likewise.
1612         * sysdeps/m68k/rawmemchr.S (__rawmemchr): Likewise.
1613         * sysdeps/mach/hurd/chown.c (__chown): Likewise.  Remove INTDEF.
1614         * sysdeps/mach/hurd/close.c (__close): Add libc_hidden_def.
1615         Remove undef and INTDEF.
1616         * sysdeps/mach/hurd/dup2.c (__dup2): Likewise.
1617         * sysdeps/mach/hurd/getpgid.c (__getpgid): Likewise.
1618         * sysdeps/mach/hurd/getpid.c (__getpid): Likewise.
1619         * sysdeps/mach/getpagesize.c (__getpagesize): Likewise.
1620         * sysdeps/mach/hurd/write.c (__libc_write): Likewise.
1621         (__write): Add libc_hidden_weak.  Remove undef and INTDEF.
1622         * sysdeps/mach/hurd/pipe.c: Include unistd.h.
1623         (__pipe): Add libc_hidden_def.
1624         * sysdeps/mach/hurd/dl-sysdep.c (__libc_read, __libc_write): Add
1625         libc_hidden_weak.
1626         * sysdeps/mach/hurd/poll.c (__poll): Add libc_hidden_def.
1627         * sysdeps/mach/hurd/profil.c (__profile_frequency): Likewise.
1628         * sysdeps/mach/hurd/read.c (__libc_read): Likewise.
1629         (__read): Add libc_hidden_weak.
1630         * sysdeps/mach/hurd/pwrite64.c (__pwrite64): Likewise.
1631         (__libc_pwrite64): Add libc_hidden_def.
1632         * sysdeps/mach/hurd/sbrk.c (__sbrk): Likewise.
1633         * sysdeps/mach/hurd/select.c (__select): Likewise.
1634         * sysdeps/mach/hurd/send.c (__send): Likewise.
1635         * sysdeps/mach/hurd/setpgid.c (__setpgid): Likewise.
1636         * sysdeps/mach/hurd/sigaction.c (__sigaction): Likewise.
1637         * sysdeps/mach/hurd/sigsuspend.c (__sigsuspend): Likewise.
1638         * sysdeps/mach/hurd/statfs.c (__statfs): Likewise.
1639         * sysdeps/posix/dup2.c: Likewise.
1640         Remove undef and INTDEF.
1641         * sysdeps/posix/getpagesize.c (__getpagesize): Likewise.
1642         * sysdeps/posix/pwrite64.c (__libc_pwrite64): Add libc_hidden_def.
1643         (__pwrite64): Add libc_hidden_weak.
1644         * sysdeps/posix/sigsuspend.c (__sigsuspend): Add libc_hidden_def.
1645         * sysdeps/sparc/sparc64/rawmemchr.S (__rawmemchr): Likewise.
1646         * sysdeps/sparc/sparc64/stpncpy.S (__stpncpy): Likewise.
1647         * sysdeps/standalone/close.c (__close): Likewise.
1648         * sysdeps/standalone/write.c (__libc_write): Likewise.
1649         (__write): Add libc_hidden_weak.
1650         * sysdeps/standalone/read.c (__read): Likewise.
1651         (__libc_read): Add libc_hidden_def.
1652         * sysdeps/unix/grantpt.c (grantpt): Remove INTUSE.
1653         * sysdeps/unix/bsd/m68k/pipe.S (__pipe): Add libc_hidden_def.
1654         * sysdeps/unix/bsd/osf/alpha/pipe.S (__pipe): Likewise.
1655         * sysdeps/unix/bsd/vax/pipe.S (__pipe): Likewise.
1656         * sysdeps/unix/bsd/syscalls.list (__GI___getpagesize): Likewise.
1657         * sysdeps/unix/bsd/poll.c (__poll): Likewise.
1658         * sysdeps/unix/bsd/sigaction.c (__sigaction): Likewise.
1659         * sysdeps/unix/bsd/sigsuspend.c (__sigsuspend): Likewise.
1660         * sysdeps/unix/common/syscalls.list (__GI___getpgid, __GI___setpgid,
1661         __GI___sigaction): Add.
1662         * sysdeps/unix/i386/pipe.S (__pipe): Add libc_hidden_def.
1663         * sysdeps/unix/inet/syscalls.list (__GI___send): Add.
1664         * sysdeps/unix/mips/pipe.S (__pipe): Add libc_hidden_def.
1665         * sysdeps/unix/sparc/pipe.S (__pipe): Likewise.
1666         * sysdeps/unix/sysv/irix4/syscalls.list (__GI___getpgid,
1667         __GI___setpgid): Add.
1668         * sysdeps/unix/sysv/aix/chown.c (__chown): Add libc_hidden_def.
1669         Remove undef and INTDEF.
1670         * sysdeps/unix/sysv/aix/getpgid.c (__getpgid): Likewise.
1671         * sysdeps/unix/sysv/aix/write.c (__write, __libc_write): Likewise.
1672         * sysdeps/unix/sysv/aix/close.c (__close): Add libc_hidden_def.
1673         * sysdeps/unix/sysv/aix/getpid.c (__getpid): Likewise.
1674         * sysdeps/unix/sysv/aix/pipe.c (__pipe): Likewise.
1675         * sysdeps/unix/sysv/aix/read.c (__read, __libc_read): Likewise.
1676         * sysdeps/unix/sysv/aix/poll.c (__poll): Likewise.
1677         * sysdeps/unix/sysv/aix/sbrk.c (__sbrk): Likewise.
1678         * sysdeps/unix/sysv/aix/sigaction.c (__sigaction): Likewise.
1679         * sysdeps/unix/sysv/aix/sigsuspend.c (__sigsuspend): Likewise.
1680         * sysdeps/unix/sysv/aix/statfs.c (__statfs): Likewise.
1681         * sysdeps/unix/sysv/aix/select.c (__select): Likewise.
1682         * sysdeps/unix/sysv/aix/setpgid.c (__setpgid): Likewise.
1683         * sysdeps/unix/sysv/linux/alpha/pipe.S (__pipe): Likewise.
1684         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI___pwrite64,
1685         __GI___statfs, __GI___send): Add.
1686         * sysdeps/unix/sysv/linux/alpha/select.S (__select): Add
1687         libc_hidden_ver resp. libc_hidden_def.
1688         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__sigsuspend): Add
1689         libc_hidden_def.
1690         * sysdeps/unix/sysv/linux/ia64/getpagesize.c (__getpagesize):
1691         Likewise.  Remove undef and INTDEF.
1692         * sysdeps/unix/sysv/linux/ia64/pipe.S (__pipe): Add libc_hidden_def.
1693         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___pwrite64,
1694         __GI___statfs, __GI___send): Add.
1695         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction): Add
1696         libc_hidden_def.
1697         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend):
1698         Likewise.
1699         * sysdeps/unix/sysv/linux/sh/pipe.S (__pipe): Likewise.
1700         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__chown): Add
1701         libc_hidden_ver resp. libc_hidden_def.
1702         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___pwrite64,
1703         __GI___send): Add.
1704         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction):
1705         Add libc_hidden_weak.
1706         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c (__sigsuspend):
1707         Add libc_hidden_def.
1708         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI___send): Add.
1709         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction): Add
1710         libc_hidden_weak.
1711         * sysdeps/unix/sysv/linux/i386/chown.c (__chown): Add libc_hidden_ver
1712         resp. libc_hidden_def.
1713         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction): Add
1714         libc_hidden_weak.
1715         * sysdeps/unix/sysv/linux/m68k/chown.c (__chown): Likewise.  Remove
1716         INTDEF.
1717         * sysdeps/unix/sysv/linux/m68k/getpagesize.c (__getpagesize):
1718         Likewise.  Remove undef.
1719         * sysdeps/unix/sysv/linux/mips/pwrite64.c (__pwrite64): Add
1720         libc_hidden_weak.
1721         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI___send): Add.
1722         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction): Add
1723         libc_hidden_weak.
1724         * sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): Add
1725         libc_hidden_def.
1726         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c (__pwrite64): Likewise.
1727         * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c (__getpagesize):
1728         Likewise.  Remove undef and INTDEF.
1729         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__pipe): Add
1730         libc_hidden_def.
1731         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction): Add
1732         libc_hidden_weak.
1733         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__pipe): Add
1734         libc_hidden_def.
1735         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
1736         (__GI___pwrite64, __GI___statfs, __GI___select, __GI___send): Add.
1737         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction): Add
1738         libc_hidden_weak.
1739         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c (__sigsuspend):
1740         Add libc_hidden_def.
1741         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI___pwrite64,
1742         __GI___statfs): Add.
1743         * sysdeps/unix/sysv/linux/x86_64/send.c (__send): Add
1744         libc_hidden_weak.
1745         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction): Likewise.
1746         * sysdeps/unix/sysv/linux/getpagesize.c: Add libc_hidden_def.
1747         Remove undef and INTDEF.
1748         * sysdeps/unix/sysv/linux/poll.c (__poll): Add libc_hidden_def.
1749         * sysdeps/unix/sysv/linux/pwrite64.c (__pwrite64): Add
1750         libc_hidden_def.
1751         * sysdeps/unix/sysv/linux/send.S (__send): Likewise.
1752         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction): Add
1753         libc_hidden_weak.
1754         * sysdeps/unix/sysv/linux/sigsuspend.c (__sigsuspend): Add
1755         libc_hidden_def.
1756         * sysdeps/unix/sysv/sco3.2.4/__setpgid.c (__setpgid): Likewise.
1757         * sysdeps/unix/sysv/sco3.2.4/sigaction.S (__sigaction): Likewise.
1758         * sysdeps/unix/sysv/sysv4/solaris2/syscalls.list (__GI___sigaction):
1759         Add.
1760         * sysdeps/unix/sysv/sysv4/__getpgid.c (__getpgid): Add
1761         libc_hidden_def.  Remove undef and INTDEF.
1762         * sysdeps/unix/sysv/sysv4/getpgid.c (__getpgid): Likewise.
1763         * sysdeps/unix/sysv/sysv4/__setpgid.c (__setpgid): Add
1764         libc_hidden_def.
1765         * sysdeps/unix/sysv/sysv4/setpgid.c (__setpgid): Likewise.
1766         * sysdeps/unix/sysv/sysv4/sigaction.c (__sigaction): Likewise.
1767         * sysdeps/unix/sysv/sigaction.c (__sigaction): Likewise.
1768         * sysdeps/unix/getpagesize.c (__getpagesize): Add libc_hidden_def.
1769         Remove undef and INTDEF.
1770         * configure.in (HAVE_BROKEN_VISIBILITY_ATTRIBUTE): Add check for
1771         broken visibility attribute handling.
1772         * config.h.in (HAVE_BROKEN_VISIBILITY_ATTRIBUTE): Add.
1773
1774 2002-08-02  Ulrich Drepper  <drepper@redhat.com>
1775
1776         * locale/iso-639.def: Add entries for Venda and Nothern Sotho.
1777         Reported by Dwayne Bailey <dwayne@obsidian.co.za>.
1778
1779         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Adapt
1780         previous patch.
1781
1782 2002-06-29  Todd Fries  <todd@openbsd.org>
1783
1784         * resolv/gethnamaddr.c (gethostbyaddr): Try ip6.int if ip6.arpa fails.
1785
1786 2002-08-02  Jakub Jelinek  <jakub@redhat.com>
1787
1788         * include/errno.h: Don't include tls.h if _ISOMAC is defined.
1789
1790 2002-07-30  Roland McGrath  <roland@redhat.com>
1791
1792         * resolv/resolv.h (_res): Define macro unconditionally.
1793         [! _LIBC_REENTRANT] (_res): Move this conditional decl to ...
1794         * include/resolv.h: ... here.
1795         [USE_TLS && HAVE___THREAD] (_res): #undef it and declare
1796         as a __thread variable.
1797         * resolv/res_libc.c [USE_TLS && HAVE___THREAD] (_res): Define it as
1798         a __thread variable instead of a global.
1799         * resolv/res_data.c [_LIBC]: Don't #undef _res.
1800
1801         * include/errno.h: Include <tls.h> to make sure USE_TLS defined by the
1802         time we test it.
1803
1804         * intl/loadmsgcat.c [__GNUC__]: #undef alloca before defining it.
1805
1806         * malloc/malloc.c [_LIBC]: Include <string.h> instead of using local
1807         decls of memset and memcpy.
1808
1809         * sysdeps/generic/sysdep.h (END): Conditionalize on [__ASSEMBLER__].
1810         * sysdeps/unix/sysv/linux/i386/sysdep.h (L): Likewise.
1811
1812         * elf/dl-load.c (_dl_map_object_from_fd): Comment fix.
1813
1814         * sysdeps/generic/bits/libc-tsd.h [USE_TLS && HAVE___THREAD]
1815         (__libc_tsd_define): Define using __thread.
1816
1817         * sunrpc/rpc_thread.c: Use __libc_tsd_define.
1818         (__rpc_thread_variables): Use __libc_tsd_get.
1819         (__rpc_thread_destroy): Use __libc_tsd_get instead of calling
1820         __rpc_thread_variables, which might allocate what we're about to free.
1821
1822         * inet/herrno.c [USE_TLS && HAVE___THREAD] (h_errno): Define as a
1823         thread-local variable.
1824         * resolv/netdb.h (h_errno): Define macro unconditionally.
1825         [_LIBC] (__set_h_errno): Macro moved to ...
1826         * include/netdb.h: ... here.
1827         [USE_TLS && HAVE___THREAD] (h_errno): Declare __thread variable.
1828         [USE_TLS && HAVE___THREAD] (__set_h_errno): Define using that.
1829         [! _LIBC_REENTRANT]: #undef h_errno here.
1830
1831         * include/errno.h: Protect from multiple inclusion.
1832
1833         * misc/sys/select.h (__NFDBITS, __FDELT, __FDMASK): #undef these
1834         before defining them, since Linux's <linux/posix_types.h> might have
1835         defined them.
1836
1837 2002-08-02  Jakub Jelinek  <jakub@redhat.com>
1838
1839         * malloc/malloc.c (public_cALLOc): Check for overflow on
1840         multiplication.
1841         * sunrpc/xdr_array.c (xdr_array): Likewise.
1842         * sunrpc/rpc/types.h (mem_free): Add comment.
1843         Patch by Solar Designer <solar@openwall.com>.
1844
1845 2002-08-02  Jakub Jelinek  <jakub@redhat.com>
1846
1847         * sysdeps/unix/sysv/linux/kernel-features.h
1848         (__ASSUME_SET_THREAD_AREA_SYSCALL): Define.
1849
1850 2002-08-01  Roland McGrath  <roland@redhat.com>
1851
1852         * libio/fileops.c (_IO_file_sync_mmap): New function.
1853         (_IO_file_jumps_mmap): Use it.
1854         (_IO_file_underflow_mmap): Rewritten.  If after EOF or fflush,
1855         repeat the stat check and resize the mapped buffer as necessary.
1856
1857 2002-07-31  Roland McGrath  <roland@redhat.com>
1858
1859         * libio/fileops.c (decide_maybe_mmap): New static function.
1860         Code taken from libio/iofopen.c:__fopen_maybe_mmap to try to
1861         mmap the file contents.  Then switch the jump tables to the mmap
1862         tables if it worked, or the vanilla file tables if not.
1863         (_IO_file_underflow_maybe_mmap): New function.
1864         (_IO_file_seekoff_maybe_mmap): New function.
1865         (_IO_file_xsgetn_maybe_mmap): New function.
1866         (_IO_file_jumps_maybe_mmap): New variable, jump table using those.
1867         * libio/libioP.h: Declare those.
1868         * libio/wfileops.c (_IO_wfile_underflow_maybe_mmap): New function.
1869         (_IO_wfile_jumps_maybe_mmap): New variable, jump table using that.
1870         * libio/iofopen.c (__fopen_maybe_mmap): Don't try to mmap here.
1871         If the stream is read-only, set its jump tables to those new ones.
1872         * libio/iofdopen.c (_IO_new_fdopen) [_G_HAVE_MMAP]: Set the initial
1873         jump tables to the maybe_mmap ones, and don't call __fopen_maybe_mmap.
1874         We need the tables set before _IO_file_attach.
1875
1876         * libio/tst-mmap-eofsync.c: New file.
1877         * libio/tst-mmap-fflushsync.c: New file.
1878         * libio/bug-mmap-fflush.c: New file.
1879         * libio/tst-mmap2-eofsync.c: New file.
1880         * libio/Makefile (tests): Add them.
1881
1882         * libio/wfileops.c (_IO_wfile_underflow_mmap): Don't set EOF bit when
1883         _IO_file_underflow_mmap fails, it already set the appropriate bit.
1884
1885 2002-07-31  Jeff Bailey  <jbailey@gnu.org>
1886
1887         * libio/stdio.h (sys_errlist, sys_nerr, _sys_errlist, _sys_nerr):
1888         Declarations moved to <bits/sys_errlist.h>.  Include that file.
1889         * libio/Makefile (headers): Add bits/sys_errlist.h to the list.
1890         * sysdeps/generic/bits/sys_errlist.h: New file.  This does *not*
1891         declare sys_errlist and sys_nerr.
1892         * sysdeps/unix/sysv/linux/bits/sys_errlist.h: New file.  Does
1893         provide declarations.
1894
1895 2002-07-31  Roland McGrath  <roland@redhat.com>
1896
1897         * elf/rtld.c (dl_main): Fix typo in error message.
1898
1899 2002-07-31  Roland McGrath  <roland@frob.com>
1900
1901         * sysdeps/mach/hurd/Versions (ld: GLIBC_2.0): __fxstat -> __fxstat64,
1902         __xstat -> __xstat64, __lseek -> __libc_lseek64.  Completes 2002-06-09
1903         sysdeps/mach/hurd/dl-sysdep.c change.
1904
1905 2002-07-28  Ulrich Drepper  <drepper@redhat.com>
1906
1907         * sysdeps/unix/sysv/linux/configure.in: Check /lib/modules/`uname
1908         -r`/build/include for kernel headers.
1909
1910         * po/fi.po: New file.
1911
1912 2002-07-15  Alexandre Oliva  <aoliva@redhat.com>
1913
1914         * configure.in (static_nss): Set to `yes' if --disable-shared.
1915
1916 2002-07-23  Bruno Haible  <bruno@clisp.org>
1917
1918         * intl/loadmsgcat.c (PRI*): Redefine the macros if PRI_MACROS_BROKEN
1919         is set.
1920
1921 2002-07-25  Jakub Jelinek  <jakub@redhat.com>
1922
1923         * sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h: New file.
1924         * sysdeps/unix/sysv/linux/ia64/profil-counter.h: Fix profil_counter
1925         arguments.
1926
1927 2002-07-25  Jakub Jelinek  <jakub@redhat.com>
1928
1929         * sysdeps/unix/sysv/linux/alpha/adjtime.c (__adjtimex_internal): Add
1930         alias.
1931
1932 2002-07-21  Bruno Haible  <bruno@clisp.org>
1933
1934         * intl/libintl.h (__GNU_GETTEXT_SUPPORTED_REVISION): New macro.
1935         * intl/gettext.h (struct mo_file_header): New fields n_sysdep_segments,
1936         sysdep_segments_offset, n_sysdep_strings, orig_sysdep_tab_offset,
1937         trans_sysdep_tab_offset.
1938         (struct sysdep_segment): New type.
1939         (struct sysdep_string): New type.
1940         (SEGMENTS_END): New macro.
1941         * intl/gettextP.h (struct sysdep_string_desc): New type.
1942         (struct loaded_domain): New fields malloced, n_sysdep_strings,
1943         orig_sysdep_tab, trans_sysdep_tab, must_swap_hash_tab. Make fields
1944         orig_tab, trans_tab, hash_tab to const pointers because they point
1945         into read-only memory.
1946         * intl/loadmsgcat.c: Include stdint.h, inttypes.h, hash-string.h.
1947         (PRI*): Define fallback values.
1948         (get_sysdep_segment_value): New function.
1949         (_nl_load_domain): Distinguish major and minor revision parts. Add
1950         support for minor revision 1 with system dependent strings.
1951         (_nl_unload_domain): Also free the 'malloced' field.
1952         * intl/dcigettext.c (_nl_find_msg): Remove test for domain->hash_size,
1953         now done in loadmsgcat.c. Add support for system dependent strings.
1954
1955 2002-07-16  Stepan Kasal  <kasal@math.cas.cz>
1956
1957         * posix/bug-regex7.c: New file.
1958         * posix/bug-regex8.c: New file.
1959         * posix/Makefile (tests): Add bug-regex7 and bug-regex8.
1960
1961 2002-07-16  Stepan Kasal  <kasal@math.cas.cz>
1962
1963         * posix/bug-regex4.c (main): Fix typos.
1964         * posix/bug-regex6.c (main): Likewise.
1965
1966 2002-07-27  Ulrich Drepper  <drepper@redhat.com>
1967
1968         * posix/bug-regex6.c (main): Fix warnings.
1969
1970         * iconvdata/Makefile (CPPFLAGS): Add NOT_IN_libc.
1971
1972         * iconv/iconv_prog.c (main): Improve error message for the cases
1973         where -t and/or -f parameter are missing.
1974
1975 2002-07-10  Stepan Kasal  <kasal@math.cas.cz>
1976
1977         * posix/regexec.c (re_match): Reorganize to remove duplicate code.
1978         (re_search): Likewise.
1979         (re_match_2): Likewise.
1980         (re_search_2): Likewise.
1981         (re_search_stub): New function.
1982         (re_search_2_stub): New function.
1983         * regcomp.c (re_compile_pattern): Typo in a comment fixed.
1984
1985 2002-07-10  Isamu Hasegawa  <isamu@yamato.ibm.com>
1986
1987         * posix/regex_internal.h: Add new member STOP to struct re_string_t.
1988         (re_string_eoi): Use STOP instead of LEN.
1989         * posix/regex_internal.c (re_string_allocate): Initialize pstr->len.
1990         (re_string_construct): Likewise.
1991         (re_string_reconstruct): Adjust pstr->stop like pstr->len.
1992         * posix/regexec.c (re_search_internal): Add a new argument STOP
1993         so that it can handle the argument STOP of re_search_2 and re_match_2
1994         correctly.
1995         (regexec): Adapt to new I/F of re_search_internal.
1996         (re_search_stub): Likewise.
1997
1998 2002-07-25  Ulrich Drepper  <drepper@redhat.com>
1999
2000         * sunrpc/clnt_gen.c: Don't include <sys/errno.h>.
2001
2002         * elf/dl-minimal.c: Remove definition of __assert_perror_fail.
2003
2004         * sysdeps/wordsize-32/divdi3.c: Define __divdi3_internal.
2005         * sysdeps/wordsize-32/lldiv.c: Make gcc use __divdi3_internal instead
2006         of __divdi3.
2007
2008         * sysdeps/unix/sysv/linux/adjtime.c: Use __adjtimex_internal.
2009         * sysdeps/unix/sysv/linux/ntp_gettime.c: Likewise.
2010         * sysdeps/unix/sysv/linux/syscalls.list: Add __adjtimex_internal
2011         alias for adjtimex syscall.
2012
2013         * elf/dl-minimal.c: Define __assert_fail_internal.
2014         * assert/assert.c: Likewise.
2015         * include/assert.h: Define __assert_file macro if !SHARED and not
2016         NOT_IN_libc.
2017
2018         * iconv/Makefile: Define NOT_IN_libc for objects in standalone
2019         programs.
2020         * locale/Makefile: Likewise.
2021         * nscd/Makefile: Likewise.
2022         * catgets/Makefile: Likewise.
2023
2024 2002-07-24  Ulrich Drepper  <drepper@redhat.com>
2025
2026         * libio/fileops.c (_IO_file_seekoff_mmap): Do use fp->_offset to
2027         compute current position.
2028
2029         * stdio-common/tst-fseek.c (main): Improve error messages.
2030
2031         * libio/tst-freopen.c (main): Remove unused variable.
2032
2033         * libio/fileops.c (_IO_file_seekoff_mmap): Set fp->_offset after
2034         succesful seek call.  Simplify error checking.
2035
2036 2002-07-25  Jakub Jelinek  <jakub@redhat.com>
2037
2038         * config.h.in: Use __ASSEMBLER__ test macro not ASSEMBLER.
2039         * sysdeps/ia64/fpu/libm_support.h: Likewise.
2040
2041 2002-07-19  Roland McGrath  <roland@frob.com>
2042
2043         * hurd/hurdsig.c (_hurdsig_getenv): Always return null if
2044         __libc_enable_secure is set.
2045
2046 2002-07-24  Roland McGrath  <roland@frob.com>
2047
2048         Added <ifaddrs.h> interface with functions `getifaddrs', `freeifaddrs'.
2049         This implementation supports only IPv4.
2050         * inet/ifaddrs.h: New file.
2051         * sysdeps/generic/ifaddrs.c: New file.
2052         * sysdeps/gnu/ifaddrs.c: New file.
2053         * inet/test-ifaddrs.c: New file.
2054         * inet/Makefile (routines): Add ifaddrs.
2055         (headers): Add ifaddrs.h here.
2056         (tests): Add test-ifaddrs.
2057         * inet/Versions (GLIBC_2.3): New set, add getifaddrs and freeifaddrs.
2058
2059         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Use an explicit
2060         socket call to get an AF_INET socket, instead of using __opensock.
2061         The SIOCGIFNETMASK ioctl will work only with a PF_INET socket.
2062
2063         * sysdeps/generic/ifreq.h (__ifreq): Take third argument SOCKFD,
2064         if not -1 use it instead of calling __opensock.
2065         * sysdeps/unix/sysv/linux/ifreq.h (__ifreq): Likewise.
2066         * sysdeps/mach/hurd/ifreq.h (__ifreq): Take new argument and ignore it.
2067         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Pass new argument.
2068
2069         * sysdeps/mach/hurd/ifreq.h: New file.
2070         * sysdeps/generic/ifreq.h (__if_freereq): Take second argument NUM_IFS.
2071         * sysdeps/unix/sysv/linux/ifreq.h (__if_freereq): Likewise.
2072         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Update caller.
2073
2074         * libio/fileops.c (_IO_file_seekoff_mmap): Don't rely on FP->_offset,
2075         which gets moved around.  Calculate size of mmap'd buffer instead.
2076
2077 2002-07-24  Philip Blundell  <philb@gnu.org>
2078
2079         * sysdeps/unix/arm/brk.S: Improve schedule.
2080         * sysdeps/unix/sysv/linux/arm/socket.S (PUSHARGS_1): Use more
2081         efficient instruction.
2082         (__socket): Optimize return sequence.
2083
2084 2002-07-24  Ulrich Drepper  <drepper@redhat.com>
2085
2086         * sysdeps/unix/sysv/linux/opensock.c (__opensock): Prefer inet
2087         sockets on old kernels.
2088
2089 2002-07-22  Philip Blundell  <philb@gnu.org>
2090
2091         * sysdeps/unix/sysv/linux/arm/errlist.c: Remove extra weak alias
2092         definiton of _old_sys_nerr.  Define _old_sys_errlist as strong
2093         alias.
2094
2095 2002-07-24  Ulrich Drepper  <drepper@redhat.com>
2096
2097         * locale/hashval.h: Make more self-contained by defining LONG_BITS.
2098         * locale/programs/simple-hash.c: Remove LONG_BITS definition.
2099
2100         * locale/programs/locarchive.c (add_locale_to_archive): Correct
2101         test to detect duplicate locales.
2102
2103         * libio/fileops.c (_IO_new_file_seekoff): Fail if relative
2104         position would be before beginning of file.
2105         (_IO_file_seekoff_mmap): Likewise.
2106         * libio/Makefile (tests): Add bug-fseek.
2107         * libio/bug-fseek.c: New file.
2108
2109         * intl/explodename.c: Remove support for CEN-style locale variables.
2110         It was never used and shouldn't be since it's not portable.
2111         * intl/finddomain.c: Likewise.
2112         * intl/l10nflist.c: Likewise.
2113         * intl/loadinfo.h: Likewise.
2114         * locale/findlocale.c: Likewise.
2115
2116 2002-07-24  Roland McGrath  <roland@frob.com>
2117
2118         * libio/fileops.c (_IO_file_seekoff_mmap): When just examining the
2119         position, calculate it to take into account an active pushback buffer.
2120
2121         * libio/Makefile (tests): Add bug-ungetc.
2122         * libio/bug-ungetc.c: New file.
2123
2124 2002-07-23  Ulrich Drepper  <drepper@redhat.com>
2125
2126         * sysdeps/generic/libc-tls.c: New file.
2127         * csu/Makefile (routines): Add libc-tls.
2128         (static-only-routines): Add libc-tls.
2129         * elf/dl-support.c (_dl_phdr): New variable.
2130         (_dl_phnum): New variable.
2131         (_dl_aux_init): Initialize _dl_phdr and _dl_phnum from aux vector.
2132         * sysdeps/generic/libc-start.c (__libc_start_main): Reorganize code
2133         for !SHARED.  First look through auxiliary vector.  If TLS always
2134         call __pthread_initialize_minimal.
2135
2136         * sysdeps/generic/dl-tls.c (_dl_allocate_tls): Make sure size argument
2137         in mmap call is never zero.
2138
2139 2002-07-23  Andreas Jaeger  <aj@suse.de>
2140
2141         * sysdeps/x86_64/fpu/s_copysign.S: Use optimized version.
2142         * sysdeps/x86_64/fpu/s_copysignf.S: Likewise.
2143
2144 2002-07-22  Ulrich Drepper  <drepper@redhat.com>
2145
2146         * libio/tst-eof.c: Rewrite to let test-skeleton.c deal with
2147         creation and removal of the temp file.
2148
2149         * libio/bug-rewind.c: Use test skeleton.  Use create_temp_file for
2150         file creation.
2151         * test-skeleton.c (create_temp_file): New function.
2152
2153 2002-07-22  Andreas Jaeger  <aj@suse.de>
2154
2155         * sysdeps/x86_64/dl-machine.h (elf_machine_load_address): Use
2156         local label.
2157
2158 2002-07-21  Roland McGrath  <roland@frob.com>
2159
2160         * wcsmbs/Makefile (strtox-CFLAGS): New variable,
2161         put -I../include before -I../stdlib so we get the right errno.h et al.
2162         (CFLAGS-wcstod.c): Use that variable instead of -I../stdlib.
2163         (CFLAGS-wcstof.c): Likewise.
2164         (CFLAGS-wcstold.c): Likewise.
2165         (CFLAGS-wcstod_l.c): Likewise.
2166         (CFLAGS-wcstof_l.c): Likewise.
2167         (CFLAGS-wcstold_l.c): Likewise.
2168
2169 2002-07-19  Roland McGrath  <roland@frob.com>
2170
2171         * sysdeps/mach/hurd/errnos.awk: Remove __set_errno defn from output.
2172
2173 2002-07-20  Ulrich Drepper  <drepper@redhat.com>
2174
2175         * sysdeps/unix/sysv/linux/ldsodefs.h (HAVE_AUX_XID): Define if
2176         __ASSUME_AT_XID is defined.
2177         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_AT_XID): Define
2178         for 2.4.1 and up.
2179         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Optimize handling
2180         of AT_UID, AT_EUID, AT_GID, and AT_EGID.
2181
2182         * wcsmbs/Makefile (CFLAGS-wcstod.c): Add -I../stdlib.
2183         (CFLAGS-wcstof.c): Likewise.
2184         (CFLAGS-wcstold.c): Likewise.
2185         (CFLAGS-wcstod_l.c): Likewise.
2186         (CFLAGS-wcstof_l.c): Likewise.
2187         (CFLAGS-wcstold_l.c): Likewise.
2188
2189 2002-07-18  Jakub Jelinek  <jakub@redhat.com>
2190
2191         * resource/sys/resource.h (__rlimit_resource_t, __rusage_who_t,
2192         __priority_which_t): Always typedef to int for C++.
2193
2194 2002-07-19  Ulrich Drepper  <drepper@redhat.com>
2195
2196         * configure.in: Add test for __thread support in compiler.
2197         * config.h.in: Add HAVE___THREAD.
2198         * Makefile (headers): Remove errno.h, sys/errno.h, and bits/errno.h.
2199         * include/sys/errno.h: Moved to...
2200         * stdlib/sys/errno.h: ...here.  New file.
2201         * stdlib/errno.h: New file.  Moved from...
2202         * include/errno.h: ...here.  Changed into an internal header defining
2203         libc-local things like __set_errno.
2204         * stdlib/Makefile (headers): Add errno.h, sys/errno.h, and
2205         bits/errno.h.
2206         * elf/dl-minimal.c: Include <tls.h>.  Define errno as thread-local
2207         variable if USE_TLS && HAVE___THREAD.  Don't define __errno_location
2208         either.
2209         * elf/rtld.c (_dl_start): Add code to initialize TLS for ld.so
2210         from...
2211         (_dl_start_final): ...here.  Add code to initialize tls elements from
2212         bootstrap_map.
2213         * sysdeps/generic/errno-loc.c: Define errno as thread-local variable
2214         if USE_TLS && HAVE___THREAD.
2215         * sysdeps/generic/bits/errno.h: Remove __set_errno definition.
2216         * sysdeps/mach/hurd/bits/errno.h: Likewise.
2217         * sysdeps/standalone/arm/bits/errno.h: Likewise.
2218         * sysdeps/standalone/bits/errno.h: Likewise.
2219         * sysdeps/unix/bsd/bsd4.4/bits/errno.h: Likewise.
2220         * sysdeps/unix/sysv/aix/bits/errno.h: Likewise.
2221         * sysdeps/unix/sysv/hpux/bits/errno.h: Likewise.
2222         * sysdeps/unix/sysv/linux/bits/errno.h: Likewise.
2223         * sysdeps/unix/sysv/linux/hppa/bits/errno.h: Likewise.
2224         * sysdeps/unix/sysv/linux/mips/bits/errno.h: Likewise.
2225         * sysdeps/unix/sysv/sysv4/solaris2/bits/errno.h: Likewise.
2226         * sysdeps/i386/dl-machine.c (elf_machine_rel) [RTLD_BOOTSTRAP]: Don't
2227         use GL(dl_rtld_map), use map parameter.
2228         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
2229         * sysdeps/unix/sysv/linux/i386/sysdep.S: Define errno in .tbss if
2230         USE_TLS && HAVE___THREAD.
2231         * sysdeps/unix/sysv/linux/i386/sysdep.h: Unify SETUP_PIC_REG
2232         definitions.  If USE_TLS && HAVE___THREAD store errooor value using
2233         TLS code sequence.
2234         * sysdeps/unix/sysv/linux/i386/i686/sysdep.h: Likewise.
2235
2236         * sysdeps/unix/sysv/linux/getcwd.c: No real need to restore errno.
2237         * sysdeps/unix/sysv/linux/grantpt.c: Likewise.
2238         * sysdeps/unix/sysv/linux/internal_statvfs.c: Likewise.
2239         * sysdeps/unix/sysv/linux/msgctl.c: Likewise.
2240         * sysdeps/unix/sysv/linux/readv.c: Likewise.
2241         * sysdeps/unix/sysv/linux/writev.c: Likewise.
2242
2243 2002-07-17  Ulrich Drepper  <drepper@redhat.com>
2244
2245         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Fix MS_SYNC and
2246         MS_INVALIDATE values.
2247
2248 2002-07-17  Andreas Schwab  <schwab@suse.de>
2249             Ulrich Drepper  <drepper@redhat.com>
2250
2251         * sysdeps/unix/sysv/linux/pread.c: Sign extend offset.
2252         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
2253         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
2254         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
2255
2256 2002-07-01  H.J. Lu  <hjl@gnu.org>
2257
2258         * elf/circleload1.c (load_dso): Call "circlemod1" and check
2259         return value.
2260
2261         * elf/circlemod1.c (circlemod1): Return int.
2262         * elf/circlemod2.c (circlemod2): Likewise.
2263         * elf/circlemod2a.c (circlemod2): Likewise.
2264         * elf/circlemod3.c (circlemod3): Likewise.
2265         (circlemod3a): A new function.
2266
2267 2002-07-16  Ulrich Drepper  <drepper@redhat.com>
2268
2269         * catgets/tst-catgets.c (main): Don't expect results for
2270         untranslated messages.
2271
2272         * glibcbug.in: Fix little typo.  Remove STDIO.
2273
2274         * config.h.in: Fail if __FAST_MATH__ is defined.
2275         * math/Makefile (CPPFLAGS-test-ifloat.c): Also define TEST_FAST_MATH.
2276         (CPPFLAGS-test-idouble.c): Likewise.
2277         (CPPFLAGS-test-ildouble.c): Likewise.
2278
2279 2002-07-15  Ulrich Drepper  <drepper@redhat.com>
2280
2281         * intl/tst-gettext.sh: Pass -f option to msgfmt.
2282         * intl/tst-gettext.c: Correctly handle untranslated messages in
2283         positive tests.
2284
2285         * po/de.po: Update from translation team.
2286
2287 2002-07-02  H.J. Lu  <hjl@gnu.org>
2288
2289         * sysdeps/mips/atomicity.h: Don't include <sgidefs.h>.  Always
2290         use ll/sc.
2291         * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
2292
2293         * sysdeps/unix/sysv/linux/configure.in: Set arch_minimum_kernel
2294         to 2.4.0 for mips.
2295
2296 2002-07-15  Ulrich Drepper  <drepper@redhat.com>
2297
2298         * elf/dl-load.c (_dl_map_object_from_fd): If loaded object uses
2299         TLS fail if USE_TLS is not defined.
2300
2301         * libio/wfileops.c (_IO_wfile_seekoff): Reposition wide pointers
2302         and adjust state for seek position.  [PR libc/4070]
2303         * libio/Makefile (tests): Add bug-rewind.
2304         * libio/bug-rewind.c: New file.
2305
2306 2002-07-12  Philip Blundell  <philb@gnu.org>
2307
2308         * sysdeps/generic/backtrace.c (FIRST_FRAME_POINTER): New macro.
2309         (__backtrace): Use it.
2310         * sysdeps/arm/frame.h (FIRST_FRAME_POINTER): Define.  [PR libc/2632]
2311
2312 2002-07-12  Philip Blundell  <philb@gnu.org>
2313
2314         * sysdeps/arm/dl-machine.h (elf_machine_rel): Don't handle
2315         R_ARM_RELATIVE if RTLD_BOOTSTRAP and HAVE_Z_COMBRELOC.  Only check
2316         for rtld map if neither RTLD_BOOTSTRAP nor HAVE_Z_COMBRELOC is defined.
2317         (elf_machine_rela): Remove unused variable.
2318
2319         * sysdeps/unix/sysv/linux/arm/Makefile [subdir=elf]
2320         (sysdep-rtld-routines, sysdep_routines, sysdep-dl-routines): Don't
2321         define.
2322
2323 2002-07-12  Ulrich Drepper  <drepper@redhat.com>
2324
2325         * iconvdata/gconv-modules: Add aliases for ISO-8859-11.
2326
2327 2002-07-14  Andreas Jaeger  <aj@suse.de>
2328
2329         * sysdeps/x86_64/bits/link.h: Add biarch support.
2330
2331 2002-07-13  Andreas Jaeger  <aj@suse.de>
2332
2333         * sysdeps/unix/sysv/linux/mips/register-dump.h (register_dump):
2334         Use correct indices.
2335         Patch by Eliot Dresselhaus <eliot@ayrnetworks.com>.
2336
2337 2002-07-09  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2338
2339         * sysdeps/s390/bits/byteswap.h: Unified 31/64 bit byteswap.h.
2340         * sysdeps/s390/s390-32/bits/byteswap.h: Remove.
2341         * sysdeps/s390/s390-64/bits/byteswap.h: Remove.
2342         * sysdeps/s390/bits/link.h: Unified 31/64 bit link.h.
2343         * sysdeps/s390/s390-32/bits/link.h: Remove.
2344         * sysdeps/s390/s390-64/bits/link.h: Remove.
2345         * sysdeps/s390/bits/setjmp.h: Unified 31/64 bit setjmp.h.
2346         * sysdeps/s390/s390-32/bits/setjmp.h: Remove.
2347         * sysdeps/s390/s390-64/bits/setjmp.h: Remove.
2348         * sysdeps/s390/bits/wordsize.h: New file.
2349         * sysdeps/unix/sysv/linux/s390/bits/elfclass.h: Unified 31/64 bit
2350         elfclass.h.
2351         * sysdeps/unix/sysv/linux/s390/s390-64/bits/elfclass.h: Remove.
2352         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Unified 31/64 bit fcntl.h.
2353         * sysdeps/unix/sysv/linux/s390/s390-32/bits/fcntl.h: Remove.
2354         * sysdeps/unix/sysv/linux/s390/s390-64/bits/fcntl.h: Remove.
2355         * sysdeps/unix/sysv/linux/s390/bits/ipc.h: Unified 31/64 bit ipc.h.
2356         * sysdeps/unix/sysv/linux/s390/s390-64/bits/ipc.h: Remove.
2357         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Unified 31/64 bit mman.h.
2358         * sysdeps/unix/sysv/linux/s390/s390-32/bits/mman.h: Remove.
2359         * sysdeps/unix/sysv/linux/s390/s390-64/bits/mman.h: Remove.
2360         * sysdeps/unix/sysv/linux/s390/bits/msq.h: Unified 31/64 bit msq.h.
2361         * ysdeps/unix/sysv/linux/s390/s390-64/bits/msq.h: Remove.
2362         * sysdeps/unix/sysv/linux/s390/bits/resource.h: Unified 31/64 bit
2363         resource.h.
2364         * sysdeps/unix/sysv/linux/s390/s390-32/bits/resource.h: Remove.
2365         * sysdeps/unix/sysv/linux/s390/s390-64/bits/resource.h: Remove.
2366         * sysdeps/unix/sysv/linux/s390/bits/sem.h: Unified 31/64 bit sem.h.
2367         * sysdeps/unix/sysv/linux/s390/s390-64/bits/sem.h: Remove.
2368         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Unified 31/64 bit shm.h.
2369         * sysdeps/unix/sysv/linux/s390/s390-64/bits/shm.h: Remove.
2370         * sysdeps/unix/sysv/linux/s390/bits/sigaction.h: Unified 31/64 bit
2371         sigaction.h.
2372         * sysdeps/unix/sysv/linux/s390/s390-64/bits/sigaction.h: Remove.
2373         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Unified 31/64 bit
2374         siginfo.h.
2375         * sysdeps/unix/sysv/linux/s390/s390-64/bits/siginfo.h: Remove.
2376         * sysdeps/unix/sysv/linux/s390/s390-64/bits/sigstack.h: Remove.
2377         * sysdeps/unix/sysv/linux/s390/bits/socket.h: Unified 31/64 bit
2378         socket.h.
2379         * sysdeps/unix/sysv/linux/s390/s390-64/bits/socket.h: Remove.
2380         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Unified 31/64 bit stat.h.
2381         * sysdeps/unix/sysv/linux/s390/s390-32/bits/stat.h: Remove.
2382         * sysdeps/unix/sysv/linux/s390/s390-64/bits/stat.h: Remove.
2383         * sysdeps/unix/sysv/linux/s390/bits/types.h: Unified 31/64 bit types.h.
2384         * sysdeps/unix/sysv/linux/s390/s390-64/bits/types.h: Remove.
2385         * sysdeps/unix/sysv/linux/s390/net/route.h: New file.
2386         * sysdeps/unix/sysv/linux/s390/sys/procfs.h: Unified 31/64 bit
2387         procfs.h.
2388         * sysdeps/unix/sysv/linux/s390/s390-32/sys/procfs.h: Remove.
2389         * sysdeps/unix/sysv/linux/s390/s390-64/sys/procfs.h: Remove.
2390         * sysdeps/unix/sysv/linux/s390/sys/ucontext.h: Unified 31/64 bit
2391         ucontext.h.
2392         * sysdeps/unix/sysv/linux/s390/s390-32/sys/ucontext.h: Remove.
2393         * sysdeps/unix/sysv/linux/s390/s390-64/sys/ucontext.h: Remove.
2394
2395 2002-07-11  Ulrich Drepper  <drepper@redhat.com>
2396
2397         * Versions.def (libc): Add GLIBC_2.3.
2398         * stdlib/Versions [libc] (GLIBC_2.3): Add realpath.
2399         * stdlib/canonicalize.c: Add compatibility version for realpath
2400         and make new code available in GLIBC_2.3.
2401
2402 2002-07-06  Bruno Haible  <bruno@clisp.org>
2403
2404         * malloc/hooks.c (public_gET_STATe): Access max_total_mem in mp_.
2405
2406 2002-07-11  Ulrich Drepper  <drepper@redhat.com>
2407
2408         * resolv/res_hconf.c (_res_hconf_init): Move code into new
2409         function do_init.  Use __libc_once.
2410         (do_init): New function.
2411
2412         * iconvdata/iso8859-11.h: Removed.
2413         * iconvdata/Makefile (gen-8bit-gap-modules): Add iso8859-11.
2414         (distribute): Remove iso8859-11.h.
2415         * iconvdata/tst-tables.sh: Add ISO-8859-11.
2416
2417         * stdio-common/vfscanf.c (inchar): Restore errno from previous
2418         underflow operation if c == (W)EOF.
2419
2420 2002-07-03  Jakub Jelinek  <jakub@redhat.com>
2421
2422         * stdio-common/printf_fp.c (__printf_fp): If _FPIO_CONST_SHIFT is
2423         non-zero, adjust exponent.
2424         * sysdeps/ieee754/ldbl-128/s_erfl.c (__erfl, erfl, __erfcl, erfcl):
2425         Remove NO_LONG_DOUBLE aliases.
2426         * sysdeps/ieee754/ldbl-128/s_expm1l.c (__expm1l, expm1l): Likewise.
2427         * sysdeps/ieee754/ldbl-128/s_log1pl.c (__log1pl, log1pl): Likewise.
2428         (__log1pl): Raise divide by zero and invalid exceptions when needed.
2429         * sysdeps/ieee754/ldbl-128/e_powl.c (__ieee754_powl): Special case
2430         1**y and -1**+-Inf.
2431         * sysdeps/ieee754/ldbl-128/ldbl2mpn.c (__mpn_extract_long_double):
2432         Fix BITS_PER_MP_LIMB 32 extraction.
2433         * sysdeps/ieee754/ldbl-128/e_log2l.c (__ieee754_log2l): Don't raise
2434         exceptions for qNaNs.
2435         * sysdeps/ieee754/ldbl-128/e_log10l.c (__ieee754_log10l): Likewise.
2436         * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (__ieee754_lgamma_r):
2437         Raise exceptions when needed.  Don't recurse unnecessarily.
2438         Special case 1.0L and 2.0L arguments to avoid -0.0L as result.
2439         * sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee754_y0l): Don't raise
2440         exceptions for qNaNs.
2441         * sysdeps/ieee754/ldbl-128/s_remquol.c (__remquol): Make qs 64-bit
2442         to fix *quo return value sign.
2443         * sysdeps/ieee754/ldbl-128/e_gammal_r.c (__ieee754_gamma_r): Special
2444         case -Inf argument.
2445         * soft-fp/op-4.h (_FP_FRAC_CLZ_4): Fix a pasto.
2446
2447 2002-07-01  Jakub Jelinek  <jakub@redhat.com>
2448
2449         * libio/tst-eof.c (do_test): Remove unused ch and tm variables.
2450         * iconvdata/iso-2022-jp-3.c (EMIT_SHIFT_TO_INIT): Kill warnings if
2451         -DNDEBUG.
2452
2453 2002-07-10  Ulrich Drepper  <drepper@redhat.com>
2454
2455         * malloc/hooks.c (realloc_check): If mremap succeeds actually use
2456         the result.
2457
2458         * sysdeps/i386/i486/bits/string.h: Add early clobber for "a"
2459         output parameter.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
2460
2461         * Versions.def (libthread_db): Add GLIBC_2.3.
2462
2463 2002-07-09  Jakub Jelinek  <jakub@redhat.com>
2464
2465         * libio/freopen.c (freopen): Reset jump tables, use mmap stdio for the
2466         new stream if possible.
2467         * libio/freopen64.c (freopen64): Likewise.
2468         * libio/Makefile (tests): Add tst-freopen.
2469         * libio/tst-freopen.c: New file.
2470
2471 2002-07-03  Jakub Jelinek  <jakub@redhat.com>
2472
2473         * libio/stdio.h (obstack_printf): Add format attribute.
2474         (obstack_vprintf): Likewise.
2475
2476 2002-07-04  Jakub Jelinek  <jakub@redhat.com>
2477
2478         * posix/regex_internal.h (re_token_t): Shrink the structure to 8
2479         resp. 16 bytes on 32-bit resp. 64-bit platforms.
2480         (re_charset_t, re_string_t): Reorder structure members for 64-bit
2481         architectures.
2482
2483 2002-07-04  Jakub Jelinek  <jakub@redhat.com>
2484
2485         * posix/regcomp.c (re_compile_internal): Move clearing of dfa...
2486         (init_dfa): ...here.
2487
2488 2002-07-05  Isamu Hasegawa  <isamu@yamato.ibm.com>
2489
2490         * posix/regcomp.c (parse_sub_exp): Add nodes OP_OPEN_SUBEXP and
2491         OP_CLOSE_SUBEXP at both ends of sub expressions instead of SUBEXP
2492         nodes in parse trees.
2493         (calc_first): Fix the Definition of `firsts' of OP_OPEN_SUBEXP
2494         and OP_CLOSE_SUBEXP, and remove the definition of SUBEXP.
2495         (calc_epsdest): Treat OP_OPEN_SUBEXP and OP_CLOSE_SUBEXP as the
2496         nodes which can epsilon transit.
2497         * posix/regex_internal.h: Add OP_OPEN_SUBEXP and OP_CLOSE_SUBEXP
2498         to IS_EPSILON_NODE macro.
2499         * posix/regexec.c (update_regs): New function to update registers
2500         by refering OP_OPEN_SUBEXP and OP_CLOSE_SUBEXP nodes.
2501         (proceed_next_node): Use the entities of the nodes to determine
2502         whether the node can transit to.
2503         (set_regs): Use update_regs function to update registers.
2504
2505 2002-07-03  Jakub Jelinek  <jakub@redhat.com>
2506
2507         * posix/bug-regex4.c (main): Remove duplicate setlocale.
2508         * posix/bug-regex6.c: New file.
2509         * posix/Makefile (tests): Add bug-regex6.
2510         (bug-regex6-ENV): Set LOCPATH.
2511
2512 2002-07-10  Ulrich Drepper  <drepper@redhat.com>
2513
2514         * Versions.def [libpthread]: Add GLIBC_2.2.6.
2515         * posix/Versions [libc] (GLIBC_2.2.6): Add __nanosleep.
2516
2517 2002-07-06  Bruno Haible  <bruno@clisp.org>
2518
2519         * sysdeps/unix/sysv/sysv4/bits/sigset.h (__NSSBITS): Correct value.
2520
2521 2002-07-06  Bruno Haible  <bruno@clisp.org>
2522
2523         * include/sys/socket.h (__libc_sendto, __libc_recvfrom): New
2524         declarations.
2525
2526         * sysdeps/i386/fpu/libm-test-ulps: Add some ulps for AMD K7.
2527
2528         * rt/Makefile (tests): Don't add tst-aio* in a single-threaded build.
2529
2530         * sysdeps/unix/bsd/sun/sunos4/bits/utsname.h: Test for _SYS_UTSNAME_H,
2531         not _UTSNAME_H.
2532         * sysdeps/unix/bsd/ultrix4/bits/utsname.h: Likewise.
2533
2534         * sysdeps/generic/bits/stropts.h: Protect against direct inclusion.
2535         * sysdeps/generic/bits/ustat.h: Likewise.
2536
2537         * sysdeps/unix/sysv/linux/bits/statvfs.h (ST_NODIRATIME): Set to 2048.
2538
2539 2002-07-08  Andreas Jaeger  <aj@suse.de>
2540
2541         * sysdeps/x86_64/elf/initfini.c (__asm__): Call call_gmon_start.
2542
2543 2002-07-08  Andreas Jaeger  <aj@suse.de>
2544
2545         * sysdeps/x86_64/fpu/s_fdiml.S: Fix wrong register name.
2546
2547 2002-07-06  Andreas Jaeger  <aj@suse.de>
2548
2549         * sysdeps/x86_64/fpu/bits/mathinline.h: New.
2550         * sysdeps/x86_64/fpu/s_copysign.S: New.
2551         * sysdeps/x86_64/fpu/s_copysignf.S: New.
2552         * sysdeps/x86_64/fpu/s_copysignl.S: New.
2553         * sysdeps/x86_64/fpu/s_finitel.S: New.
2554         * sysdeps/x86_64/fpu/s_fmax.S: New.
2555         * sysdeps/x86_64/fpu/s_fmaxf.S: New.
2556         * sysdeps/x86_64/fpu/s_fmaxl.S: New.
2557         * sysdeps/x86_64/fpu/s_fmin.S: New.
2558         * sysdeps/x86_64/fpu/s_fminf.S: New.
2559         * sysdeps/x86_64/fpu/s_fminl.S: New.
2560
2561 2002-06-05  Brian Youmans <3diff@gnu.org>
2562
2563         * sysdeps/ia64/fpu/e_acos.S: Added text of Intel license.
2564         * sysdeps/ia64/fpu/e_acosf.S: Likewise.
2565         * sysdeps/ia64/fpu/e_acosl.S: Likewise.
2566         * sysdeps/ia64/fpu/e_asin.S: Likewise.
2567         * sysdeps/ia64/fpu/e_asinf.S: Likewise.
2568         * sysdeps/ia64/fpu/e_asinl.S: Likewise.
2569         * sysdeps/ia64/fpu/e_atan2.S: Likewise.
2570         * sysdeps/ia64/fpu/e_atan2f.S: Likewise.
2571         * sysdeps/ia64/fpu/e_cosh.S: Likewise.
2572         * sysdeps/ia64/fpu/e_coshf.S: Likewise.
2573         * sysdeps/ia64/fpu/e_coshl.S: Likewise.
2574         * sysdeps/ia64/fpu/e_exp.S: Likewise.
2575         * sysdeps/ia64/fpu/e_expf.S: Likewise.
2576         * sysdeps/ia64/fpu/e_fmod.S: Likewise.
2577         * sysdeps/ia64/fpu/e_fmodf.S: Likewise.
2578         * sysdeps/ia64/fpu/e_fmodl.S: Likewise.
2579         * sysdeps/ia64/fpu/e_hypot.S: Likewise.
2580         * sysdeps/ia64/fpu/e_hypotf.S: Likewise.
2581         * sysdeps/ia64/fpu/e_hypotl.S: Likewise.
2582         * sysdeps/ia64/fpu/e_log.S: Likewise.
2583         * sysdeps/ia64/fpu/e_logf.S: Likewise.
2584         * sysdeps/ia64/fpu/e_pow.S: Likewise.
2585         * sysdeps/ia64/fpu/e_powf.S: Likewise.
2586         * sysdeps/ia64/fpu/e_powl.S: Likewise.
2587         * sysdeps/ia64/fpu/e_remainder.S: Likewise.
2588         * sysdeps/ia64/fpu/e_remainderf.S: Likewise.
2589         * sysdeps/ia64/fpu/e_remainderl.S: Likewise.
2590         * sysdeps/ia64/fpu/e_scalb.S: Likewise.
2591         * sysdeps/ia64/fpu/e_scalbf.S: Likewise.
2592         * sysdeps/ia64/fpu/e_scalbl.S: Likewise.
2593         * sysdeps/ia64/fpu/e_sinh.S: Likewise.
2594         * sysdeps/ia64/fpu/e_sinhf.S: Likewise.
2595         * sysdeps/ia64/fpu/e_sinhl.S: Likewise.
2596         * sysdeps/ia64/fpu/e_sqrt.S: Likewise.
2597         * sysdeps/ia64/fpu/e_sqrtf.S: Likewise.
2598         * sysdeps/ia64/fpu/e_sqrtl.S: Likewise.
2599         * sysdeps/ia64/fpu/libm_atan2_req.S: Likewise.
2600         * sysdeps/ia64/fpu/libm_error.c: Likewise.
2601         * sysdeps/ia64/fpu/libm_frexp4.S: Likewise.
2602         * sysdeps/ia64/fpu/libm_frexp4f.S: Likewise.
2603         * sysdeps/ia64/fpu/s_frexpl.c: Likewise.
2604         * sysdeps/ia64/fpu/s_ilogb.S: Likewise.
2605         * sysdeps/ia64/fpu/s_ilogbf.S: Likewise.
2606         * sysdeps/ia64/fpu/s_ilogbl.S: Likewise.
2607         * sysdeps/ia64/fpu/s_ldexp.S: Likewise.
2608         * sysdeps/ia64/fpu/s_ldexpf.S: Likewise.
2609         * sysdeps/ia64/fpu/s_ldexpl.S: Likewise.
2610         * sysdeps/ia64/fpu/s_log1p.S: Likewise.
2611         * sysdeps/ia64/fpu/s_log1pf.S: Likewise.
2612         * sysdeps/ia64/fpu/s_log1pl.S: Likewise.
2613         * sysdeps/ia64/fpu/s_logb.S: Likewise.
2614         * sysdeps/ia64/fpu/s_logbf.S: Likewise.
2615         * sysdeps/ia64/fpu/s_logbl.S: Likewise.
2616         * sysdeps/ia64/fpu/s_modf.S: Likewise.
2617         * sysdeps/ia64/fpu/s_modff.S: Likewise.
2618         * sysdeps/ia64/fpu/s_modfl.S: Likewise.
2619         * sysdeps/ia64/fpu/s_nearbyint.S: Likewise.
2620         * sysdeps/ia64/fpu/s_nearbyintf.S: Likewise.
2621         * sysdeps/ia64/fpu/s_nearbyintl.S: Likewise.
2622         * sysdeps/ia64/fpu/s_rint.S: Likewise.
2623         * sysdeps/ia64/fpu/s_rintf.S: Likewise.
2624         * sysdeps/ia64/fpu/s_rintl.S: Likewise.
2625         * sysdeps/ia64/fpu/s_round.S: Likewise.
2626         * sysdeps/ia64/fpu/s_roundf.S: Likewise.
2627         * sysdeps/ia64/fpu/s_roundl.S: Likewise.
2628         * sysdeps/ia64/fpu/s_scalbn.S: Likewise.
2629         * sysdeps/ia64/fpu/s_scalbnf.S: Likewise.
2630         * sysdeps/ia64/fpu/s_scalbnl.S: Likewise.
2631         * sysdeps/ia64/fpu/s_significand.S: Likewise.
2632         * sysdeps/ia64/fpu/s_significandf.S: Likewise.
2633         * sysdeps/ia64/fpu/s_significandl.S: Likewise.
2634         * sysdeps/ia64/fpu/s_tan.S: Likewise.
2635         * sysdeps/ia64/fpu/s_tanf.S: Likewise.
2636         * sysdeps/ia64/fpu/s_tanl.S: Likewise.
2637         * sysdeps/ia64/fpu/s_trunc.S: Likewise.
2638         * sysdeps/ia64/fpu/s_truncf.S: Likewise.
2639         * sysdeps/ia64/fpu/s_truncl.S: Likewise.
2640         * sysdeps/ieee754/dbl-64/doasin.c: Changed copyright notice to
2641         reflect IBM donation of math library to FSF
2642         * sysdeps/ieee754/dbl-64/dosincos.c: Likewise.
2643         * sysdeps/ieee754/dbl-64/e_asin.c: Likewise.
2644         * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise.
2645         * sysdeps/ieee754/dbl-64/e_exp.c: Likewise.
2646         * sysdeps/ieee754/dbl-64/e_log.c: Likewise.
2647         * sysdeps/ieee754/dbl-64/e_pow.c: Likewise.
2648         * sysdeps/ieee754/dbl-64/e_remainder.c: Likewise.
2649         * sysdeps/ieee754/dbl-64/e_sqrt.c: Likewise.
2650         * sysdeps/ieee754/dbl-64/halfulp.c: Likewise.
2651         * sysdeps/ieee754/dbl-64/mpa.c: Likewise.
2652         * sysdeps/ieee754/dbl-64/mpatan.c: Likewise.
2653         * sysdeps/ieee754/dbl-64/mpatan2.c: Likewise.
2654         * sysdeps/ieee754/dbl-64/mpexp.c: Likewise.
2655         * sysdeps/ieee754/dbl-64/mplog.c: Likewise.
2656         * sysdeps/ieee754/dbl-64/mpsqrt.c: Likewise.
2657         * sysdeps/ieee754/dbl-64/mptan.c: Likewise.
2658         * sysdeps/ieee754/dbl-64/s_atan.c: Likewise.
2659         * sysdeps/ieee754/dbl-64/s_sin.c: Likewise.
2660         * sysdeps/ieee754/dbl-64/s_tan.c: Likewise.
2661         * sysdeps/ieee754/dbl-64/sincos32.c: Likewise.
2662         * sysdeps/ieee754/dbl-64/slowexp.c: Likewise.
2663         * sysdeps/ieee754/dbl-64/slowpow.c: Likewise.
2664         * sysdeps/gnu/netinet/udp.h: Added BSD copying permission notice
2665         * sysdeps/vax/__longjmp.c: Likewise.
2666         * sysdeps/vax/setjmp.c: Likewise.
2667         * libio/filedoalloc.c: Fixed BSD copying permission notice to
2668         remove advertising clause
2669         * sysdeps/vax/htonl.s: Likewise.
2670         * sysdeps/vax/htons.s: Likewise.
2671         * libio/wfiledoalloc.c: Likewise.
2672         * stdlib/random.c: Likewise.
2673         * stdlib/random_r.c: Likewise.
2674         * sysdeps/mach/sys/reboot.h: Likewise.
2675         * inet/getnameinfo.c: Deleted advertising clause from Inner Net License
2676         * sysdeps/posix/getaddrinfo.c: Likewise.
2677         * sunrpc/des_impl.c: Updated license permission notice to Lesser
2678         GPL and corrected pointer to point to the correct license.
2679
2680 2002-07-04  Andreas Jaeger  <aj@suse.de>
2681
2682         * scripts/config.guess: New upstream version.
2683         * scripts/config.sub: Likewise.
2684
2685 2002-07-02  Andreas Schwab  <schwab@suse.de>
2686
2687         * resolv/nss_dns/dns-network.c (getanswer_r): Reduce linebuflen
2688         in parallel to bumping up the buffer pointer.
2689
2690 2002-07-01  Jakub Jelinek  <jakub@redhat.com>
2691
2692         * math/libm-test.inc (acos_test): Add missing L suffix for
2693         expected result.
2694         (cpow_test): Likewise.
2695         * sysdeps/i386/fpu/libm-test-ulps: Adjust errors for cpow, remove
2696         error for acos (0.0625).
2697
2698 2002-06-30  Ulrich Drepper  <drepper@redhat.com>
2699
2700         * locale/iso-639.def: Add entry for Ganda.
2701         * locale/programs/ld-address.c (DEFINE_LANGUAGE_CODE3): New
2702         definition.
2703         (address_finish): Handle entries with two letter ISO 639 code.
2704
2705         * iconvdata/Makefile: Recreate gconv-modules.cache file in target
2706         directory if it existed before.
2707         * iconv/iconvconfig.c: Implement --prefix option.
2708
2709         * math/libm-test.inc (cexp_test): Add missing L suffix for
2710         expected result.  Reported by Stephen L Moshier <steve@moshier.net>.
2711         * sysdeps/i386/fpu/libm-test-ulps: Adjust error for cexp (0.75 +
2712         1.25 i).
2713
2714 2002-05-29  H.J. Lu  <hjl@gnu.org>
2715
2716         * elf/dl-error.c (_dl_signal_cerror): Report error if ld.so debug
2717         is turned on.
2718
2719 2002-05-28  H.J. Lu  <hjl@gnu.org>
2720
2721         * elf/dl-deps.c (_dl_map_object_deps): Don't add objects which
2722         are not dlopened on the dependency list of a dlopened object.
2723
2724 2002-06-30  Ulrich Drepper  <drepper@redhat.com>
2725
2726         * elf/dl-lookup.c (add_dependency): It is not necessary to add
2727         dependencies if they are created between objects which are created
2728         while processing RTLD_NOW for objects loaded as part of the same
2729         dlopen call.
2730
2731 2002-06-14  H.J. Lu  <hjl@gnu.org>
2732
2733         * elf/Makefile (tests): Add circleload1.
2734         (modules-names): Add circlemod1, circlemod2, circlemod3,
2735         circlemod1a, circlemod2a and circlemod3a.
2736         ($(objpfx)circleload1): New target.
2737         ($(objpfx)circleload1.out): Likewise.
2738         ($(objpfx)circlemod1.so): Likewise.
2739         ($(objpfx)circlemod2.so): Likewise.
2740         ($(objpfx)circlemod1a.so): Likewise.
2741         ($(objpfx)circlemod2a.so): Likewise.
2742         * elf/circleload1.c: New file.
2743         * elf/circlemod1.c: New file.
2744         * elf/circlemod1a.c: New file.
2745         * elf/circlemod2.c: New file.
2746         * elf/circlemod2a.c: New file.
2747         * elf/circlemod3.c: New file.
2748         * elf/circlemod3a.c: New file.
2749
2750 2002-06-18  Amos Waterland  <apw@us.ibm.com>
2751
2752         * sysdeps/pthread/aio_cancel.c (aio_cancel): Add check for invalid
2753         file descriptor.
2754         * sysdeps/pthread/aio_fsync.c (aio_fsync): Add check for invalid fd;
2755         add check for fd not open for writing.
2756
2757         * sysdeps/pthread/aio_suspend.c (aio_suspend): Add check for
2758         completed element(s) and do not suspend thread if so.  Patch
2759         heavily modified by drepper.
2760
2761         * rt/tst-aio7.c: New file.  Regression test for problems which the
2762         above three changes fix.
2763         * rt/Makefile (tests): Add tst-aio7.
2764
2765 2002-06-29  Ulrich Drepper  <drepper@redhat.com>
2766
2767         * rt/tst-aio6.c: Fix comment.
2768
2769         * catgets/gencat.c (read_input_file): Handle more than one slash
2770         at end of line correctly [PR libc/3926].
2771         Based on a patch by Steven Kim <steven.kim@peregrine.com>.
2772
2773         * catgets/sample.SJIS: Add test case for above bug.
2774         * catgets/test-gencat.c: Adjust test code.
2775         * catgets/test-gencat.sh: Adjust expected results.
2776
2777         * elf/do-rel.h (elf_dynamic_do_rel): Avoid overflow in computation
2778         to skip relative relocations.
2779         Patch by Geoff Keating <geoffk@redhat.com>.
2780
2781 2002-05-26  Bruno Haible  <bruno@clisp.org>
2782
2783         * iconv/loop.c (STANDARD_FROM_LOOP_ERR_HANDLER): New macro.
2784         (STANDARD_TO_LOOP_ERR_HANDLER): Renamed from STANDARD_ERR_HANDLER.
2785         All callers changed.
2786         * iconv/gconv_simple.c (ascii_internal_loop): For error handling use
2787         STANDARD_FROM_LOOP_ERR_HANDLER.
2788         (utf8_internal_loop): Likewise.
2789         (ucs2_internal_loop): Likewise.
2790         (internal_ucs2_loop): Perform error handling like in
2791         STANDARD_FROM_LOOP_ERR_HANDLER.
2792         * iconvdata/unicode.c (BODY for TO_LOOP): Perform error handling like
2793         in STANDARD_FROM_LOOP_ERR_HANDLER.
2794         (BODY for FROM_LOOP): Use STANDARD_FROM_LOOP_ERR_HANDLER for error
2795         handling.
2796         * iconvdata/utf-16.c (BODY for TO_LOOP): Perform error handling like
2797         in STANDARD_FROM_LOOP_ERR_HANDLER.
2798         (BODY for FROM_LOOP): Use STANDARD_FROM_LOOP_ERR_HANDLER for error
2799         handling.
2800         * iconvdata/utf-32.c (BODY for TO_LOOP): Perform error handling like
2801         in STANDARD_FROM_LOOP_ERR_HANDLER.
2802         (BODY for FROM_LOOP): Use STANDARD_FROM_LOOP_ERR_HANDLER for error
2803         handling.
2804         * iconvdata/big5.c (BODY for FROM_LOOP): For error handling use
2805         STANDARD_FROM_LOOP_ERR_HANDLER.
2806         * iconvdata/iso-2022-jp.c (BODY for FROM_LOOP): Likewise.
2807         * iconvdata/8bit-gap.c (BODY for FROM_LOOP): Likewise.
2808         * iconvdata/8bit-generic.c (BODY for FROM_LOOP): Likewise.
2809         * iconvdata/ansi_x3.110.c (BODY for FROM_LOOP): Likewise.
2810         * iconvdata/armscii-8.c (BODY for FROM_LOOP): Likewise.
2811         * iconvdata/cp1255.c (BODY for FROM_LOOP): Likewise.
2812         * iconvdata/cp1258.c (BODY for FROM_LOOP): Likewise.
2813         * iconvdata/euc-cn.c (BODY for FROM_LOOP): Likewise.
2814         * iconvdata/euc-jisx0213.c (BODY for FROM_LOOP): Likewise.
2815         * iconvdata/euc-jp.c (BODY for FROM_LOOP): Likewise.
2816         * iconvdata/euc-kr.c (BODY for FROM_LOOP): Likewise.
2817         * iconvdata/euc-tw.c (BODY for FROM_LOOP): Likewise.
2818         * iconvdata/big5hkscs.c (BODY for FROM_LOOP): Likewise.
2819         * iconvdata/gb18030.c (BODY for FROM_LOOP): Likewise.
2820         * iconvdata/gbk.c (BODY for FROM_LOOP): Likewise.
2821         * iconvdata/iso-2022-cn-ext.c (BODY for FROM_LOOP): Likewise.
2822         * iconvdata/iso-2022-cn.c (BODY for FROM_LOOP): Likewise.
2823         * iconvdata/iso-2022-jp-3.c (BODY for FROM_LOOP): Likewise.
2824         * iconvdata/iso-2022-kr.c (BODY for FROM_LOOP): Likewise.
2825         * iconvdata/iso646.c (BODY for FROM_LOOP): Likewise.
2826         * iconvdata/iso_6937-2.c (BODY for FROM_LOOP): Likewise.
2827         * iconvdata/iso_6937.c (BODY for FROM_LOOP): Likewise.
2828         * iconvdata/johab.c (BODY for FROM_LOOP): Likewise.
2829         * iconvdata/shift_jisx0213.c (BODY for FROM_LOOP): Likewise.
2830         * iconvdata/sjis.c (BODY for FROM_LOOP): Likewise.
2831         * iconvdata/t.61.c (BODY for FROM_LOOP): Likewise.
2832         * iconvdata/uhc.c (BODY for FROM_LOOP): Likewise.
2833         * iconvdata/utf-7.c (BODY for FROM_LOOP): Likewise.
2834         * iconvdata/gbbig5.c (BODY for FROM_LOOP): Likewise.  When ignoring
2835         an error, still set result = __GCONV_ILLEGAL_INPUT.
2836         (BODY for TO_LOOP): Likewise.
2837         * iconvdata/ibm930.c (BODY for FROM_LOOP): For error handling use
2838         STANDARD_FROM_LOOP_ERR_HANDLER.
2839         (BODY for TO_LOOP): Here use STANDARD_TO_LOOP_ERR_HANDLER.
2840         * iconvdata/ibm932.c: Include <dlfcn.h> and <stdint.h>.
2841         (BODY for FROM_LOOP): Use STANDARD_FROM_LOOP_ERR_HANDLER for error
2842         handling.
2843         (BODY for TO_LOOP): Here use STANDARD_TO_LOOP_ERR_HANDLER.
2844         * iconvdata/ibm933.c (BODY for FROM_LOOP): For error handling use
2845         STANDARD_FROM_LOOP_ERR_HANDLER.
2846         (BODY for TO_LOOP): Here use STANDARD_TO_LOOP_ERR_HANDLER.
2847         * iconvdata/ibm935.c (BODY for FROM_LOOP): For error handling use
2848         STANDARD_FROM_LOOP_ERR_HANDLER.
2849         (BODY for TO_LOOP): Here use STANDARD_TO_LOOP_ERR_HANDLER.
2850         * iconvdata/ibm937.c (BODY for FROM_LOOP): For error handling use
2851         STANDARD_FROM_LOOP_ERR_HANDLER.
2852         (BODY for TO_LOOP): Here use STANDARD_TO_LOOP_ERR_HANDLER.
2853         * iconvdata/ibm939.c (BODY for FROM_LOOP): For error handling use
2854         STANDARD_FROM_LOOP_ERR_HANDLER.
2855         (BODY for TO_LOOP): Here use STANDARD_TO_LOOP_ERR_HANDLER.
2856         * iconvdata/ibm943.c: Include <dlfcn.h> and <stdint.h>.
2857         (BODY for FROM_LOOP): Use STANDARD_FROM_LOOP_ERR_HANDLER for error
2858         handling.
2859         (BODY for TO_LOOP): Here use STANDARD_TO_LOOP_ERR_HANDLER.
2860         * iconvdata/gbgbk.c (BODY for FROM_LOOP): Update.
2861         * iconvdata/iso8859-1.c (BODY for TO_LOOP): Update.
2862         * iconvdata/tcvn5712-1.c (BODY for TO_LOOP): Update.
2863
2864 2002-06-28  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2865
2866         * sysdeps/sh/dl-machine.h (elf_machine_load_address): Use local
2867         labels in assembler instructions.
2868
2869 2002-06-25  Ulrich Drepper  <drepper@redhat.com>
2870
2871         * libio/fileops.c (_IO_file_xsgetn_mmap): Always set EOF flag if
2872         not enough content is available.
2873         * libio/tst-eof.c: New file.
2874         * libio/Makefile (tests): Add tst-eof.
2875
2876         * libio/fileops.c (_IO_file_underflow_mmap): Read a single byte to
2877         update atime.
2878         * libio/tst-atime.c: New file.
2879         * libio/Makefile (tests): Add tst-atime.
2880
2881         * argp/argp-fmtstream.c (__argp_fmtstream_update): Avoid crash in
2882         handling of overly long words.
2883
2884 2002-06-25  Andreas Jaeger  <aj@suse.de>
2885
2886         * sysdeps/x86-64/dl-machine.h (elf_machine_load_address): Rewrite
2887         to not use 32-bit pc relative relocations.
2888         (elf_machine_dynamic): Likewise.
2889
2890 2002-06-21  Ulrich Drepper  <drepper@redhat.com>
2891
2892         * sysdeps/unix/sysv/linux/getdents.c [__ASSUME_GETDENTS64_SYSCALL]
2893         (__GETDENTS): Check for failed getdents64 syscall.
2894         * dirent/Makefile (tests): Add bug-readdir1.
2895         * dirent/bug-readdir1.c: New file.
2896
2897 2002-06-17  Jakub Jelinek  <jakub@redhat.com>
2898
2899         * elf/dl-lookup.c (_dl_debug_bindings): Use type_class 4 for TLS
2900         lookups.
2901         * elf/rtld.c (dl_main): Move TLS setup code before LD_TRACE_PRELINKING
2902         code.  Print TLS modid and offset for modules containing PT_TLS
2903         segments.
2904
2905 2002-06-09  Jakub Jelinek  <jakub@redhat.com>
2906
2907         * sysdeps/unix/sysv/linux/i386/dl-brk.c: Move...
2908         * sysdeps/unix/sysv/linux/dl-brk.c: ...here.
2909         * sysdeps/unix/sysv/linux/i386/dl-sbrk.c: Move...
2910         * sysdeps/unix/sysv/linux/dl-sbrk.c: ...here.
2911
2912 2002-06-07  Jakub Jelinek  <jakub@redhat.com>
2913
2914         * nss/getXXbyYY_r.c (NEW, NEW1): Define.
2915         (NEW (REENTRANT_NAME)): Strong alias to INTERNAL (REENTRANT_NAME).
2916         (REENTRANT_NAME@@GLIBC_2.1.2): Use NEW (REENTRANT_NAME).
2917         * nss/getXXent_r.c (NEW, NEW1): Define.
2918         (NEW (REENTRANT_GETNAME)): Strong alias to
2919         INTERNAL (REENTRANT_GETNAME).
2920         (REENTRANT_GETNAME@@GLIBC_2.1.2): Use NEW (REENTRANT_GETNAME).
2921
2922 2002-06-21  Ulrich Drepper  <drepper@redhat.com>
2923
2924         * libio/fileops.c (_IO_file_setbuf_mmap): New function.
2925         (_IO_file_jumps_mmap): Use it.
2926         * libio/iosetvbuf.c: Don't call _IO_WSETBUF.
2927         * libio/libioP.h: Remove _IO_wdefault_setbuf and
2928         _IO_wdefault_setbuf_internal prorotypes.  Add _IO_file_setbuf_mmap
2929         prototype.
2930         * libio/wfileops.c (_IO_wfile_setbuf): Removed.
2931         (_IO_wfile_jumps_mmap): Don't use it anymore.
2932         * libio/wgenops.c (_IO_wdefault_setbuf): Removed.
2933         * libio/memstream.c (_IO_wmem_jumps): Use _IO_default_setbuf not
2934         _IO_wdefault_setbuf.
2935         * libio/vswprintf.c (_IO_wstrn_jumps): Likewise.
2936         * libio/wstrops.c (_IO_wstr_jumps): Likewise.
2937         * stdio-common/vfprintf.c (_IO_helper_jumps): Likewise.
2938
2939 2002-06-05  Jakub Jelinek  <jakub@redhat.com>
2940
2941         * libio/Makefile (tests): Add tst-mmap-setvbuf.
2942         * libio/tst-mmap-setvbuf.c: New test.
2943
2944 2002-06-21  Andreas Jaeger  <aj@suse.de>
2945
2946         * sysdeps/i386/fpu/libm-test-ulps: Add some ulps from my P3.
2947
2948 2002-06-18  Jakub Jelinek  <jakub@redhat.com>
2949
2950         * include/unistd.h (__fork_internal): Remove.
2951         (__fork): Don't define to __fork_internal.
2952         * sysdeps/mach/hurd/fork.c (__fork): Remove INTDEF.
2953         * sysdeps/unix/sysv/aix/fork.c (__fork): Likewise.
2954         * sysdeps/unix/sysv/linux/ia64/fork.S (__fork_internal): Remove alias.
2955         * sysdeps/unix/sysv/linux/sparc/fork.S (__fork_internal): Likewise.
2956         * sysdeps/unix/sysv/linux/syscalls.list (__fork_internal): Likewise.
2957
2958 2002-06-20  Ulrich Drepper  <drepper@redhat.com>
2959
2960         * po/hr.po: New file.
2961
2962 2002-06-11  Wolfram Gloger  <wg@malloc.de>
2963
2964         * malloc/malloc.c: Fix error path when new_heap() returns NULL.
2965         Reported by Michael Meissner <meissner@redhat.com>.
2966
2967 2002-06-20  Ulrich Drepper  <drepper@redhat.com>
2968
2969         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Fix typo.
2970         Patch by Hans Boehm <hans_boehm@hp.com>.
2971
2972 2002-06-20  Andreas Jaeger  <aj@suse.de>
2973
2974         * math/libm-test.inc: Use exact values as input parameters,
2975         compute output parameters with 36 digits for 128-bit long doubles.
2976         * sysdeps/i386/fpu/libm-test-ulps: Regenerated.
2977         * sysdeps/x86-64/fpu/libm-test-ulps: Regenerated.
2978         * sysdeps/ia64/fpu/libm-test-ulps: Regenerated.
2979
2980 2002-06-13  Stephen L Moshier  <steve@moshier.net>
2981
2982         * sysdeps/ieee754/ldbl-96/s_scalbnl.c: Fix cases in which
2983         argument or result is subnormal.
2984
2985 2002-06-19  Ulrich Drepper  <drepper@redhat.com>
2986
2987         * sysdeps/i386/fpu/s_remquo.S: Fix three mistakes in computing the
2988         quotient.
2989         * sysdeps/i386/fpu/s_remquof.S: Likewise.
2990         * sysdeps/i386/fpu/s_remquol.S: Likewise.
2991
2992         * sysdeps/hppa/dl-machine.h: Don't use multi-line string literals.
2993
2994 2002-06-17  David Mosberger  <davidm@hpl.hp.com>
2995
2996         * sysdeps/unix/sysv/linux/ia64/sys/ucontext.h (uc_sigmask): Fix
2997         typo: corresponding sigcontext field is called sc_mask, not sc_sigmask.
2998         Reported by Peter A. Buhr.
2999
3000 2002-06-15  Roland McGrath  <roland@frob.com>
3001
3002         * sysdeps/mach/hurd/mmap.c (__mmap): Add a dead case that quiets a
3003         warning.
3004
3005         * sysdeps/mach/hurd/getcwd.c
3006         (_hurd_canonicalize_directory_name_internal): unsigned int -> size_t
3007
3008         * sysdeps/unix/sysv/linux/bits/ustat.h: Moved to ...
3009         * sysdeps/generic/bits/ustat.h: ... here (was almost identical).
3010
3011         * sysdeps/alpha/divrem.h: Use local label instead of global one for
3012         jump to local subroutine.
3013
3014 2002-06-14  Roland McGrath  <roland@frob.com>
3015
3016         * sysdeps/mach/hurd/i386/Makeconfig: File moved to ...
3017         * sysdeps/mach/hurd/Makeconfig: ... here.
3018
3019 2002-06-13  Andreas Schwab  <schwab@suse.de>
3020
3021         * sysdeps/m68k/fpu/s_finite.c: Remove INTDEF.
3022         * sysdeps/m68k/fpu/s_finitef.c: Likewise.
3023         * sysdeps/m68k/fpu/s_finitel.c: Likewise.
3024
3025 2002-06-13  Roland McGrath  <roland@frob.com>
3026
3027         * hurd/hurdstartup.h (_hurd_startup): int -> intptr_t in MAIN arg type.
3028         * hurd/hurdstartup.c (_hurd_startup): Likewise.
3029         Use intptr_t instead of int for argc in stack layout.
3030         * sysdeps/mach/hurd/alpha/init-first.c (init): Fix argument type.
3031         (_dl_init_first): Likewise.
3032         (_hurd_stack_setup): Likewise.
3033         (init1): Add a cast.
3034         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start: go): Fix arg type.
3035
3036         * sysdeps/mach/hurd/if_index.c (if_nameindex): Use size_t for AMOUNT
3037         argument to pfinet_siocgifconf RPC.
3038
3039 2002-06-13  Andreas Schwab  <schwab@suse.de>
3040
3041         * sysdeps/m68k/fpu/s_isinf.c (INTDEFX): Define to get correct
3042         expansion order.
3043
3044 2002-06-12  Roland McGrath  <roland@frob.com>
3045
3046         * sysdeps/generic/tmpfile.c [USE_IN_LIBIO] (tmpfile): Don't #define
3047         if already defined.
3048         [USE_IN_LIBIO]: Conditionalize versioned_symbol use on
3049         [GEN_THIS == __GT_FILE] so that tmpfile64.c's inclusion doesn't get it.
3050
3051 2002-06-11  Roland McGrath  <roland@frob.com>
3052
3053         * sysdeps/mach/hurd/xstat64.c: Conditionalize entire contents of the
3054         file on [!RTLD_STAT64].
3055         * sysdeps/mach/hurd/fxstat64.c: Likewise.
3056
3057         * sysdeps/mach/hurd/tmpfile.c (tmpfile64): Define as alias of tmpfile.
3058         (__fdopen): Use INTUSE.
3059         * sysdeps/mach/hurd/tmpfile64.c: New file, empty placeholder.
3060
3061         * stdio-common/tmpfile64.c: File removed.
3062         * sysdeps/generic/tmpfile64.c: New file.
3063         * sysdeps/generic/tmpfile.c (GEN_THIS): New macro, define to __GT_FILE
3064         if not already defined.
3065         (tmpfile): Use it in place of __GT_FILE.
3066
3067         * include/unistd.h: Declare __chown_internal.
3068
3069         * sysdeps/mach/hurd/sendfile64.c (sendfile64): Do real work here.
3070         * sysdeps/mach/hurd/sendfile.c (sendfile): Call that.
3071
3072 2002-06-09  Roland McGrath  <roland@frob.com>
3073
3074         Update to new Hurd RPC interfaces supporting 64-bit file sizes.
3075         * sysdeps/mach/hurd/configure.in: Check for <hurd/version.h> with
3076         value of HURD_INTERFACE_VERSION >= 20020609.
3077         * sysdeps/mach/hurd/configure: Regenerated.
3078         * shlib-versions (.*-.*-gnu-gnu.*): Set libhurduser=0.3.
3079         * sysdeps/mach/hurd/xstatconv.c (xstat64_conv): Rewritten to
3080         convert a struct stat64 into a struct stat and return 0 or -1
3081         with errno set to EOVERFLOW.
3082         * sysdeps/mach/hurd/statfsconv.c (statfs64_conv): Likewise
3083         for struct statfs64 to struct statfs.
3084         * sysdeps/mach/hurd/xstat.c (__xstat): Use converter and call ...
3085         * sysdeps/mach/hurd/xstat64.c (__xstat64): ... this, real work here.
3086         * sysdeps/mach/hurd/fxstat.c (__fxstat): Likewise.
3087         * sysdeps/mach/hurd/fxstat64.c (__fxstat64): Likewise.
3088         * sysdeps/mach/hurd/lxstat.c (__lxstat): Likewise.
3089         * sysdeps/mach/hurd/lxstat64.c (__lxstat64): Likewise.
3090         * sysdeps/mach/hurd/statfs.c (__statfs): Likewise.
3091         * sysdeps/mach/hurd/statfs64.c (__statfs64): Likewise.
3092         * sysdeps/mach/hurd/fstatfs.c (__fstatfs): Likewise.
3093         * sysdeps/mach/hurd/fstatfs64.c (__fstatfs64): Likewise.
3094         * sysdeps/mach/hurd/pwrite64.c (__libc_pwrite64): Do real work here.
3095         * sysdeps/mach/hurd/pwrite.c (__libc_pwrite): Call that.
3096         * sysdeps/mach/hurd/pread64.c (__libc_pread64): Do real work here.
3097         * sysdeps/mach/hurd/pread.c (__libc_pread): Call that.
3098         * sysdeps/mach/hurd/lseek64.c (__libc_lseek64): Do real work here.
3099         * sysdeps/mach/hurd/lseek.c (__libc_lseek): Call that.
3100         * sysdeps/mach/hurd/readdir64.c (__readdir64): Do real work here.
3101         * sysdeps/mach/hurd/readdir.c (__readdir): Call that.
3102         * sysdeps/mach/hurd/readdir64_r.c (__readdir64_r): Do real work here.
3103         * sysdeps/mach/hurd/readdir_r.c (__readdir64_r): Call that.
3104         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry):
3105         Use struct stat64 for io_stat argument.
3106         * sysdeps/mach/hurd/readlink.c (__readlink): Likewise.
3107         * hurd/fopenport.c (seekio): Remove EOVERFLOW check, pass POS directly
3108         to io_seek.
3109         * hurd/fd-read.c (_hurd_fd_read): Use loff_t for OFFSET argument.
3110         * hurd/fd-write.c (_hurd_fd_write): Likewise.
3111         * hurd/hurd/fd.h: Update decls.
3112         * sysdeps/mach/hurd/getcwd.c
3113         (_hurd_canonicalize_directory_name_internal): Use ino64_t
3114         and struct dirent64.
3115         * sysdeps/mach/hurd/dl-sysdep.c (open_file): Use struct stat64.
3116         (__xstat): Renamed to __xstat64, use struct stat64 for argument.
3117         (__fxstat): Renamed to __fxstat64, use struct stat64 for argument.
3118         (__lseek): Renamed to __libc_lseek64, use off64_t for argument.
3119
3120 2002-06-08  Roland McGrath  <roland@frob.com>
3121
3122         * sysdeps/mach/hurd/dirstream.h (struct __dirstream): Use size_t
3123         instead of unsigned long int for __allocation and __size members.
3124
3125 2002-06-09  Jakub Jelinek  <jakub@redhat.com>
3126
3127         * sysdeps/unix/sysv/linux/i386/dl-brk.c: Move...
3128         * sysdeps/unix/sysv/linux/dl-brk.c: ...here.
3129         * sysdeps/unix/sysv/linux/i386/dl-sbrk.c: Move...
3130         * sysdeps/unix/sysv/linux/dl-sbrk.c: ...here.
3131
3132 2002-06-07  Roland McGrath  <roland@frob.com>
3133
3134         * sysdeps/mach/hurd/bits/environments.h: File removed.
3135
3136 2002-06-07  Jakub Jelinek  <jakub@redhat.com>
3137
3138         * sysdeps/unix/sysv/linux/alpha/sendfile64.c: New file.
3139         * sysdeps/unix/sysv/linux/ia64/sendfile64.c: New file.
3140         * sysdeps/unix/sysv/linux/sparc/sparc64/sendfile64.c: New file.
3141         * sysdeps/unix/sysv/linux/x86_64/sendfile64.c: New file.
3142         * sysdeps/unix/sysv/linux/syscalls.list (sendfile): Remove EXTRA.
3143         (sendfile64): Likewise.
3144         * sysdeps/unix/sysv/linux/alpha/syscalls.list (sendfile): Likewise.
3145         * sysdeps/unix/sysv/linux/ia64/syscalls.list (sendfile): Likewise.
3146         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (sendfile):
3147         Likewise.
3148         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Likewise.
3149
3150         * include/sys/stat.h (__fxstat64, __lxstat64): Only define if not
3151         already defined.
3152
3153 2002-06-04  Bruno Haible  <bruno@clisp.org>
3154
3155         * sysdeps/cris/stackinfo.h: New file.
3156
3157         * sysdeps/hppa/dl-machine.h (elf_machine_rela): Cast reloc_addr
3158         to an integer type before performing bit operations on it.
3159
3160 2002-06-05  Roland McGrath  <roland@frob.com>
3161
3162         * sysdeps/generic/sendfile.c: Include <errno.h>.
3163         * sysdeps/generic/sendfile64.c: Likewise.
3164
3165         * io/Makefile (routines): Add sendfile and sendfile64.
3166         (headers): Add sys/sendfile.h to the list.
3167         * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Don't add it here.
3168         * sysdeps/unix/sysv/linux/sys/sendfile.h: Moved to ...
3169         * io/sys/sendfile.h: ... here.
3170         * sysdeps/generic/sendfile.c: New file.
3171         * sysdeps/generic/sendfile64.c: New file.
3172
3173         * sysdeps/unix/sysv/linux/Versions (GLIBC_2.1, GLIBC_2.3):
3174         Move sendfile, sendfile64 to ...
3175         * io/Versions (GLIBC_2.1, GLIBC_2.3): ... here.
3176         * sysdeps/mach/hurd/sendfile.c: New file.
3177         * sysdeps/mach/hurd/sendfile64.c: New file.
3178
3179         * sysdeps/mach/nanosleep.c: New file.
3180
3181 2002-06-04  Roland McGrath  <roland@frob.com>
3182
3183         * sysdeps/alpha/elf/configure.in: New file.  Check for TLS support.
3184         * sysdeps/alpha/elf/configure: New file (generated).
3185
3186 2002-06-02  Roland McGrath  <roland@frob.com>
3187
3188         * include/link.h: Include <tls.h> to make sure USE_TLS is defined.
3189
3190 2002-06-01  Roland McGrath  <roland@frob.com>
3191
3192         * sysdeps/mach/hurd/alpha/init-first.c: New file, modified from
3193         i386/init-first.c by Andrew M. Miklic <miklic@attglobal.net>.
3194
3195 2002-05-19  Ulrich Drepper  <drepper@redhat.com>
3196
3197         * resolv/resolv.h (struct __res_state): Remove unused nstimes.
3198         Add nsmap.
3199         * resolv/res_init.c (__res_vinit): Initialize nsmap array.
3200         Remove nstimes setting.
3201         (res_nclose): Check all MAXNS nameservers with non-NULL nsaddrs.
3202         * resolv/res_send.c (res_nsend): Don't close unconditionally if
3203         there is mix of IPv6 and IPv4 nameservers.
3204         Use nsmap array to find free slots and preserve nameserver ordering.
3205         Fix RES_ROTATE.
3206
3207 2002-05-30  Ulrich Drepper  <drepper@redhat.com>
3208
3209         * sysdeps/unix/sysv/linux/sys/sendfile.h: It is now possible to
3210         use this header with LFS.
3211
3212         * po/sk.po: Update from translation team.
3213
3214 2002-05-28  Andreas Schwab  <schwab@suse.de>
3215
3216         * sysdeps/generic/readelflib.c (process_elf_file): Give correct
3217         message when finding object of wrong class.
3218
3219 2002-05-28  Jakub Jelinek  <jakub@redhat.com>
3220
3221         * sysdeps/wordsize-32/divdi3.c (__moddi3): Fix pasto.
3222         Patch by <radu@netsoft.ro>.
3223
3224 2002-05-30  Ulrich Drepper  <drepper@redhat.com>
3225
3226         * sysdeps/unix/sysv/linux/Makefile [$(subdir)==misc] (sysdep_routines):
3227         Add readahead.
3228         * sysdeps/unix/sysv/linux/readahead.c: New file.
3229         * sysdeps/unix/sysv/linux/syscalls.list: Add sendfile64 syscall.
3230         * sysdeps/unix/sysv/linux/Versions: Export readahead and sendfile64.
3231         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Add readahead syscall.
3232         Add sendfile64 alias to sendfile syscall.
3233         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
3234         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
3235         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
3236         * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Add s_readahead
3237         syscall.
3238
3239         * sysdeps/unix/sysv/linux/i386/sysdep.h: Use __i686.get_pc_thunk.XX
3240         special section for PIC register loading.
3241         * sysdeps/unix/sysv/linux/i386/i686/sysdep.h: Likewise.
3242
3243         * config.h.in: Define HAVE_HIDDEN.
3244         * configure.in: Also define HAVE_HIDDEN if HAVE_PROTECTED is defined.
3245
3246         * elf/elf.h: Correct Alpha TLS relocations according to last spec.
3247
3248 2002-05-28  Roland McGrath  <roland@frob.com>
3249
3250         * sysdeps/mach/alpha/setfpucw.c: New file.
3251
3252 2002-05-26  Roland McGrath  <roland@frob.com>
3253
3254         * sysdeps/mach/hurd/ioctl.c (__ioctl): Don't use sizeof in _IOTS.
3255         Use integer_t instead of int for IOC_VOID case.
3256
3257 2002-05-27  Alexandre Oliva  <aoliva@redhat.com>
3258
3259         * configure.in (DO_STATIC_NSS): Define if --disable-shared.
3260
3261 2002-05-26  Bruno Haible  <bruno@clisp.org>
3262
3263         * iconvdata/iso-2022-jp.c (BODY for TO_LOOP): Avoid running off the
3264         end of the ISO-8859-7 from idx table.
3265
3266 2002-05-27  Ulrich Drepper  <drepper@redhat.com>
3267
3268         * manual/lang.texi: Fix FLT_EPSILON description [PR libc/3649].
3269
3270 2002-05-24  David S. Miller  <davem@redhat.com>
3271
3272         * string/bits/string2.h (memset): Do not try to optimize when
3273         not _STRING_ARCH_unaligned if GCC will do the right thing.
3274
3275 2002-05-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
3276
3277         * posix/regex.c: Define `inline' as a macro into nothing for the
3278         compilers which lack the keyword.
3279         * posix/regex.h: (RE_SYNTAX_GNU_AWK): Remove RE_CONTEXT_INVALID_OPS
3280         for the compatibility of gawk.
3281         * posix/regcomp.c: Add fake implementation of isblank() for the
3282         environments which lack the function.
3283         Don't use free_charset() in case of non-i18n envs.
3284         (build_range_exp): Don't use i18n related code in case of non-i18n
3285         envs.
3286         (build_collating_symbol): Likewise.
3287         (build_equiv_class): Likewise.
3288         (build_charclass): Likewise.
3289         (re_compile_fastmap_iter): Likewise.
3290         (parse_bracket_exp): Likewise.
3291         (build_word_op): Likewise.
3292         (regfree): Don't use free_charset() in case of non-i18n envs.
3293         * posix/regex_internal.h: Remove COMPLEX_BRACKET from
3294         re_token_type_t in case of non-i18n envs.
3295         Don't define re_charset_t in case of non-i18n envs.
3296         Change the type of wcs of re_string_t from wchar_t to wint_t,
3297         since we store also WEOF.
3298         * posix/regex_internal.c: (re_string_realloc_buffers): Change
3299         the type of wcs of re_string_t from wchar_t to wint_t.
3300         (re_string_reconstruct): Likewise.
3301         (create_ci_newstate): Don't use i18n related code in case of
3302         non-i18n envs.
3303         (create_cd_newstate): Likewise.
3304
3305 2002-05-24  Ulrich Drepper  <drepper@redhat.com>
3306
3307         * iconv/loop.c: Fix typo.
3308
3309 2002-05-23  Jakub Jelinek  <jakub@redhat.com>
3310
3311         * inet/ether_line.c (ether_line): Fix a typo causing only
3312         lower 4 bits of each ethernet address byte being assigned.
3313         Don't modify what line points to.
3314         * inet/tst-ether_aton.c (main): Add ether_line tests.
3315
3316 2002-05-23  Marcus Brinkmann  <marcus@gnu.org>
3317
3318         * manual/filesys.texi: Don't make readlink example leak memory
3319         when readlink fails.
3320
3321 2002-05-20  Ulrich Drepper  <drepper@redhat.com>
3322
3323         * iconv/loop.c: Fix condition for defining unaligned loop.  Add
3324         some more security checks.
3325
3326 2002-05-17  David S. Miller  <davem@redhat.com>
3327
3328         * sysdeps/unix/sysv/linux/sparc/fork.S: Define _internal aliases.
3329
3330 2002-05-16  David S. Miller  <davem@redhat.com>
3331
3332         * sysdeps/sparc/sparc32/dl-machine.h (LOAD_PIC_REG): Define.
3333         (elf_machine_dynamic): Use it to force PIC register to be loaded.
3334         (elf_machine_load_address): Likewise.
3335         * sysdeps/sparc/sparc64/dl-machine.h: Mirror sparc32 changes.
3336
3337         * sysdeps/sparc/sparc64/strncmp.S: When second argument pointer
3338         is unaligned, do not forget to fully initialize %g1 magic value.
3339
3340         * sysdeps/unix/sysv/linux/sparc/sys/procfs.h: Fix 64-bit elf
3341         register definitions and provide 32-bit variants of structures
3342         during 64-bit builds.
3343
3344         * soft-fp/op-1.h (_FP_FRAC_CLEAR_OVERP_1): Define.
3345         * soft-fp/op-2.h (_FP_FRAC_CLEAR_OVERP_2): Define.
3346         * soft-fp/op-4.h (_FP_FRAC_CLEAR_OVERP_4): Define.
3347         * soft-fp/op-common.h (_FP_PACK_CANONICAL): After rounding, if
3348         _FP_FRAC_OVERP_X is set, use _FP_FRAC_CLEAR_OVERP_X to clear it.
3349         (_FP_FROM_INT): Perform right shifts on unsigned integer type.
3350         Do not clear implicit one bit here, it must be done post-rounding.
3351         Only pad to the left using left shift if value uses less than the
3352         available fractional bits.
3353
3354 2002-05-20  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3355
3356         * sysdeps/powerpc/Makefile (sysdeps_routines): Use libgcc-compat
3357         instead of cmpdi2, shdi3, fixdfdi, fixsfdi in csu dir.
3358         (shared-only-routines): Likewise.
3359         * sysdeps/powerpc/libgcc-compat.c: New file.
3360         * sysdeps/wordsize-32/cmpdi2.c: Removed.
3361         * sysdeps/wordsize-32/fixdfdi.c: Removed.
3362         * sysdeps/wordsize-32/fixsfdi.c: Removed.
3363         * sysdeps/wordsize-32/shdi3.c: Removed.
3364
3365 2002-05-16  Bruno Haible  <bruno@clisp.org>
3366
3367         * MakeTAGS (libc.pot): Don't sort the output.
3368         * po/header.pot: Update to match xgettext 0.11 output.
3369
3370 2002-05-16  Bruno Haible  <bruno@clisp.org>
3371
3372         * MakeTAGS (subdirs): Remove duplicates.
3373
3374 2002-05-19  Ulrich Drepper  <drepper@redhat.com>
3375
3376         * sysdeps/unix/sysv/linux/errlist.c: Remove extra weak alias
3377         definiton of _old_sys_nerr.  Define _old_sys_errlist as strong
3378         alias.
3379
3380 2002-05-19  Andreas Jaeger  <aj@suse.de>
3381
3382         * sysdeps/unix/sysv/linux/configure.in: Warn against an
3383         installation in /usr/local.
3384
3385 2002-05-16  Bruno Haible  <bruno@clisp.org>
3386
3387         * sysdeps/unix/sysv/aix/bits/ioctl-types.h: Don't use multiline
3388         string as argument of #error.
3389
3390 2002-05-15  Ulrich Drepper  <drepper@redhat.com>
3391
3392         * stdlib/canonicalize.c (canonicalize): Rename to __realpath and
3393         don't define static.  Remove old __realpath function.  TC1 of
3394         POSIX 2001 will allow the second parameter to be NULL.
3395         * stdlib/test-canon.c: Comment out test for NULL as second
3396         parameter of realpath.
3397
3398         * time/offtime.c (__offtime): Set errno if overflow is detected.
3399
3400         * elf/Makefile (rtld-routines): Remove dl-brk and dl-sbrk.
3401         * sysdeps/unix/sysv/linux/Makefile (sysdep-rtld-routines): Add
3402         dl-brk and dl-sbrk.
3403
3404         * sysdeps/sparc/fpu/bits/mathinline.h (fdim): Add __THROW.
3405         (fdimf): Likewise.
3406
3407 2002-05-15  Roland McGrath  <roland@frob.com>
3408
3409         * hurd/report-wait.c (_S_msg_report_wait): Use mach_msg_id_t for arg.
3410
3411 2002-05-12  Bruno Haible  <bruno@clisp.org>
3412
3413         * iconvdata/testdata/EUC-JISX0213: New file.
3414         * iconvdata/testdata/EUC-JISX0213..UTF8: New file.
3415         * iconvdata/testdata/SHIFT_JISX0213: New file.
3416         * iconvdata/testdata/SHIFT_JISX0213..UTF8: New file.
3417         * iconvdata/testdata/ISO-2022-JP-3: New file.
3418         * iconvdata/testdata/ISO-2022-JP-3..UTF8: New file.
3419         * iconvdata/TESTS: Add EUC-JISX0213, SHIFT_JISX0213, ISO-2022-JP-3.
3420         * iconvdata/run-iconv-test.sh: Skip the charmap test if the charmap
3421         contains comments indicating precomposed characters.
3422
3423 2002-04-21  Bruno Haible  <bruno@clisp.org>
3424
3425         * iconvdata/iso-2022-jp-3.c: New file.
3426         * iconvdata/gconv-modules (ISO-2022-JP-3): New module.
3427         * iconvdata/Makefile (modules): Add ISO-2022-JP-3.
3428         (LDFLAGS-ISO-2022-JP-3.so): New variable.
3429         (ISO-2022-JP-3.so): Depend on libJIS.so and libJISX0213.so.
3430         (distribute): Add iso-2022-jp-3.c.
3431
3432 2002-05-12  Bruno Haible  <bruno@clisp.org>
3433
3434         * iconvdata/tst-table-to.c (main): Restore handling of
3435         transliterations, broken by last patch.
3436
3437 2002-05-12  Bruno Haible  <bruno@clisp.org>
3438
3439         * iconvdata/TESTS: Add IBM922, IBM1124, IBM1129.
3440
3441 2002-05-12  Bruno Haible  <bruno@clisp.org>
3442
3443         * iconvdata/euc-jisx0213.c (BODY for FROM_LOOP): Don't advance inptr
3444         when there is not enough room in the output buffer.
3445         * iconvdata/shift_jisx0213.c (BODY for FROM_LOOP): Likewise.
3446
3447 2002-04-20  Bruno Haible  <bruno@clisp.org>
3448
3449         * iconv/skeleton.c ({FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO}): New
3450         macros.
3451         (RESET_INPUT_BUFFER): Use them instead of {MIN,MAX}_NEEDED_{FROM,TO}.
3452         Also make this macro work if FROM_DIRECTION evaluates to 0.
3453         (gconv_init): Use the new macros instead of {MIN,MAX}_NEEDED_{FROM,TO}.
3454         (FUNCTION_NAME): Likewise, in the handling of unaligned accesses and
3455         of consume_incomplete.
3456         * iconvdata/cp1255.c: Define {FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO}
3457         instead of {MIN,MAX}_NEEDED_{FROM,TO}. Set FROM_LOOP_MAX_NEEDED_TO to