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