1 2004-03-12 Ulrich Drepper <drepper@redhat.com>
3 * sysdeps/unix/sysv/linux/bits/local_lim.h: Define HOST_NAME_MAX.
5 * posix/getconf.c (vars): Add _SC_ values for cache information.
6 * sysdeps/generic/bits/confname.h: Add _SC_* values for cache
8 * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Reorganize to
9 allow yet another sysconf function to include the one in this file.
10 * sysdeps/unix/sysv/linux/i386/sysconf.c: New file.
11 * sysdeps/generic/sysconf.c: Add default handling for cache line info.
13 2004-03-11 Ulrich Drepper <drepper@redhat.com>
15 * sysdeps/posix/sysconf.c (__sysconf): Add missing support for
18 2004-03-10 Chris Heath <chris@heathens.co.nz>
20 * iconvdata/gconv.map: Add gconv_end (fixes memory leak).
22 2004-03-11 Jakub Jelinek <jakub@redhat.com>
24 * sysdeps/powerpc/powerpc32/__longjmp.S (JB_SIZE): Undefine before
25 including __longjmp-common.S again.
26 * sysdeps/powerpc/powerpc64/__longjmp.S (JB_SIZE): Likewise.
27 * sysdeps/powerpc/powerpc32/setjmp.S (JB_SIZE): Undefine before
28 including setjmp-common.S again.
29 * sysdeps/powerpc/powerpc64/setjmp.S (JB_SIZE): Likewise.
30 * sysdeps/powerpc/novmxsetjmp.h (__novmx__longjmp): Fix type of
31 first argument in the prototype.
32 * sysdeps/powerpc/longjmp.c (__vmx__longjmp, __vmx__libc_longjmp):
33 Remove bogus semicolons.
35 * sysdeps/s390/dl-tls.h: Only add __tls_get_offset assembly if
37 (__TLS_GET_ADDR): Use __tls_get_offset, not __tls_get_addr.
39 2004-03-11 Ulrich Drepper <drepper@redhat.com>
41 * resolv/ns_ttl.c: Don't add ns_parse_ttl for libresolv.so.
43 2004-03-10 Ulrich Drepper <drepper@redhat.com>
45 * sysdeps/generic/errno.c: Include <dl-sysdep.h>. Use
46 RTLD_PRIVATE_ERRNO to decide whether errno compat symbols are needed.
48 * elf/dl-sym.c: Unify _dl_sym and _dl_vsym code and make the entry
49 points wrappers around the unified code.
51 2004-03-11 Richard Henderson <rth@redhat.com>
53 * sysdeps/unix/sysv/linux/alpha/kernel_stat.h (kernel_stat64): New.
55 * sysdeps/unix/sysv/linux/alpha/fxstat.c: New file.
56 * sysdeps/unix/sysv/linux/alpha/lxstat.c: New file.
57 * sysdeps/unix/sysv/linux/alpha/xstat.c: New file.
58 * sysdeps/unix/sysv/linux/alpha/xstatconv.c (__xstat_conv): Add
59 code for _STAT_VER_GLIBC2_3_4.
60 (__libc_missing_axp_stat64): New.
61 * sysdeps/unix/sysv/linux/alpha/xstatconv.h: New file.
62 * sysdeps/unix/sysv/linux/alpha/bits/stat.h (__ST_TIME): New.
63 (_STAT_VER_GLIBC2_3_4, _STAT_VER_KERNEL64): New.
64 (struct stat, struct stat64): Update to new format.
65 (_STATBUF_ST_NSEC): New.
67 2004-03-11 Jakub Jelinek <jakub@redhat.com>
69 * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
70 (__novec_swapcontext): Branch to novec_* labels.
72 2004-03-10 Ulrich Drepper <drepper@redhat.com>
74 * posix/getopt.c (_): Don't define here for glibc.
76 2004-03-10 Jakub Jelinek <jakub@redhat.com>
78 * include/libc-symbols.h [__ASSEMBLY__] (compat_text_section,
79 compat_data_section): Define.
80 * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): Add
81 attribute_compat_text_section.
82 * sysdeps/unix/sysv/linux/alpha/wordexp.c (__old_wordexp): Likewise.
83 * sysdeps/unix/sysv/linux/alpha/oldglob.c (__old_glob,
84 __old_globfree): Likewise.
85 * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__chown_is_lchown):
87 * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c
88 (__posix_fadvise64_l32): Likewise.
89 * sysdeps/unix/sysv/linux/msgctl.c (__old_msgctl): Likewise.
90 * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c
91 (__posix_fadvise64_l32): Likewise.
92 * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (__old_semctl):
94 * sysdeps/unix/sysv/linux/semctl.c (__old_semctl): Likewise.
95 * sysdeps/unix/sysv/linux/posix_fadvise64.c (__posix_fadvise64_l32):
97 * sysdeps/unix/sysv/linux/shmctl.c (__old_shmctl): Likewise.
98 * hurd/compat-20.c (_hurd_proc_init_compat_20): Likewise.
99 * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
100 (__swapcontext, __novec_swapcontext): Use END instead of PSEUDO_END.
101 (__novec_swapcontext, __swapcontext_stub): Add compat_text_section.
102 * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
103 (__makecontext_stub): Likewise.
104 (__novec_makecontext): Likewise. Fix name in END () to match
106 * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
107 (__setcontext): Use END instead of PSEUDO_END.
108 (__novec_setcontext): Add compat_text_section. Use END instead of
109 PSEUDO_END, fix the name in END () to match function name.
110 * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
111 (__getcontext, __novec_getcontext): Use END instead of PSEUDO_END.
112 (__novec_getcontext, __getcontext_stub): Add compat_text_section.
114 2004-03-10 Kaz Kojima <kkojima@rr.iij4u.or.jp>
116 * sysdeps/sh/dl-machine.h: Don't use GL macro if not appropriate.
117 (COPY_UNALIGNED_WORD): Remove cast used as lvalue.
119 2004-03-10 Ulrich Drepper <drepper@redhat.com>
121 * sysdeps/i386/dl-procinfo.h (HWCAP_IMPORTANT): Remove mmx, add sse2.
123 2004-03-10 Richard Henderson <rth@redhat.com>
125 * sysdeps/generic/errno.c: Disable versioning for rtld.
127 * sysdeps/generic/Makefile (elf/shared): Add unwind-pe.
128 * sysdeps/generic/unwind-pe.c: New file.
129 * sysdeps/generic/unwind-pe.h: Only prototypes for _LIBC without
132 2004-03-10 Ulrich Drepper <drepper@redhat.com>
134 * include/libc-symbols.h: Define attribute_compat_text_section and
135 attribute_compat_data_section.
136 * io/ftw.c: Mark compat code with attribute_compat_text_section.
137 * libio/iofopncook.c: Likewise.
138 * libio/oldfileops.c: Likewise.
139 * libio/oldiofclose.c: Likewise.
140 * libio/oldiofdopen.c: Likewise.
141 * libio/oldiofgetpos.c: Likewise.
142 * libio/oldiofgetpos64.c: Likewise.
143 * libio/oldiofopen.c: Likewise.
144 * libio/oldiofsetpos.c: Likewise.
145 * libio/oldiofsetpos64.c: Likewise.
146 * libio/oldiopopen.c: Likewise.
147 * libio/oldpclose.c: Likewise.
148 * libio/oldtmpfile.c: Likewise.
149 * nptl/forward.c: Likewise.
150 * nss/getXXbyYY_r.c: Likewise.
151 * nss/getXXent_r.c: Likewise.
152 * posix/tst-vfork1.c: Likewise.
153 * stdlib/canonicalize.c: Likewise.
154 * stdlib/old_atexit.c: Likewise.
155 * sysdeps/generic/glob.c: Likewise.
156 * sysdeps/posix/posix_fallocate64.c: Likewise.
157 * sysdeps/unix/sysv/linux/i386/alphasort64.c: Likewise.
158 * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
159 * sysdeps/unix/sysv/linux/i386/glob64.c: Likewise.
160 * sysdeps/unix/sysv/linux/i386/msgctl.c: Likewise.
161 * sysdeps/unix/sysv/linux/i386/oldgetrlimit64.c: Likewise.
162 * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Likewise.
163 * sysdeps/unix/sysv/linux/i386/readdir64.c: Likewise.
164 * sysdeps/unix/sysv/linux/i386/readdir64_r.c: Likewise.
165 * sysdeps/unix/sysv/linux/i386/scandir64.c: Likewise.
166 * sysdeps/unix/sysv/linux/i386/semctl.c: Likewise.
167 * sysdeps/unix/sysv/linux/i386/shmctl.c: Likewise.
168 * sysdeps/unix/sysv/linux/i386/versionsort64.c: Likewise.
169 * posix/regexec.c: Likewise.
171 * sysdeps/unix/sysv/linux/i386/syscalls.list: vm86@@GLIBC_2.3.4
172 should be the default symbol. Having none misses the point.
174 2004-03-09 Ulrich Drepper <drepper@redhat.com>
176 * stdlib/qsort.c (_quicksort): Initialize first stack element [BZ #16].
178 2004-03-05 Jakub Jelinek <jakub@redhat.com>
180 * posix/regexec.c (regexec): Return with error on unknown eflags.
181 Replace weak_alias with versioned_symbol.
182 (__compat_regexec): New.
183 * posix/Versions (libc): Add regexec@GLIBC_2.3.4.
185 2004-03-09 Richard Henderson <rth@redhat.com>
187 * math/math.h (isgreater, isgreaterequal, isless, islessequal,
188 islessgreater, isunordered): Use builtins if available.
189 * sysdeps/i386/fpu/bits/mathinline.h: Don't define via builtins.
190 * sysdeps/m68k/fpu/bits/mathinline.h: Likewise.
191 * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
192 * sysdeps/sparc/fpu/bits/mathinline.h: Likewise.
193 * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
194 * sysdeps/alpha/fpu/bits/mathinline.h (isgreater, isgreaterequal,
195 isless, islessequal, islessgreater): Remove; use default.
196 (isunordered): Convert inputs to double.
198 2004-02-09 Jakub Jelinek <jakub@redhat.com>
200 * posix/Makefile (tests): Add tst-vfork2.
201 * posix/tst-vfork1.c (do_test): Fix comment.
202 * posix/tst-vfork2.c: New test.
204 2004-03-09 Ulrich Drepper <drepper@redhat.com>
206 * elf/dl-lookup.c (_dl_lookup_symbol_x): Fix possible NULL pointer
207 derefernce in error message. Pretty printing.
209 * po/nl.po: Update from translation team.
211 2004-03-08 Andreas Schwab <schwab@suse.de>
213 * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't truncate
214 sysinfo pointer value.
216 2004-03-08 Paul Eggert <eggert@cs.ucla.edu>
218 Merge from gnulib. We now assume C89 or better.
219 * posix/getopt1.c (const): Remove.
220 * posix/getopt.c (const): Likewise.
221 * posix/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
222 _getopt_long_only_r, main): Use prototypes, not old-style definitions.
223 * posix/getopt.c (exchange, _getopt_initialize, _getopt_internal_r,
224 _getopt_internal, getopt, main): Likewise.
225 * posix/getopt.h (getopt, getopt_long, getopt_long_only): Likewise.
226 * posix/getopt.c [!defined VMS || !HAVE_STRING_H]:
227 Include <string.h> regardless. No need for <strings.h>.
228 [!defined _LIBC]: Include "gettext.h" rather than rolling it ourselves.
229 (_): Define to gettext always.
230 (my_index): Remove: all uses changed to strchr.
231 (strlen): Remove declaration.
232 * posix/getopt.h (struct option.name): Always const char *.
234 2004-03-08 Marcus Brinkmann <marcus@gnu.org>
236 * posix/getopt.h (_getopt_internal): Move to ...
237 * posix/getopt_int.h: ... here. New file.
238 * include/getopt_int.h: New file.
239 * include/getopt.h: Remove libc_hidden_proto for getopt_long
240 and getopt_long_only.
241 * posix/getopt1.c: Include "getopt_int.h". Remove
242 libc_hidden_def for getopt_long and getopt_long_only.
243 (_getopt_long_r, _getopt_long_only_r): New functions.
244 * posix/getopt.c: Include "getopt_int.h".
245 (__getopt_initialized): Variable removed.
246 (nextchar, ordering, posixly_correct, first_nonopt, last_nonopt):
247 Static variables removed.
248 (nonoption_flags_max_len, nonoption_flags_len) [_LIBC &&
249 USE_NONOPTION_FLAGS]: Static variables removed.
250 (getopt_data): New static variable.
251 (SWAP_FLAGS): Use d->__nonoption_flags_len instead
253 (exchange): Add new argument D of type struct getopt_data *.
254 Replace optind with d->optind, optarg with d->optarg, opterr with
255 d->opterr, optopt with d->optopt, nextchar with d->__nextchar,
256 first_nonopt with d->__first_nonopt, last_nonopt with
257 d->__last_nonopt, d->ordering with d->__ordering,
258 d->posixly_correct with d->__posixly_correct (which is now an
259 int instead a string, so fix users), nonoption_flags_len
260 with d->__nonoption_flags_len, nonoption_flags_max_len with
261 d->__nonoption_flags_max_len.
262 (_getopt_initialize): Likewise.
263 (_getopt_internal): Rename to ...
264 (_getopt_internal_r): ... this. Also add new argument D of type
265 struct getopt_data * and use of members of D rather than global or
266 static variables as described for exchange() above. Add new argument
267 to invocations of _getopt_initialize and exchange.
268 (_getopt_internal): Reimplement in terms of _getopt_internal_r.
269 * argp/argp-parse.c: Include <getopt_int.h>.
270 [_LIBC]: Do not include <bits/libc-lock.h>.
271 [!_LIBC && HAVE_CTHREADS_H]: Do not include <cthreads.h>.
272 [!_LIBC] (_argp_hang): Make static.
273 (getopt_lock, LOCK_GETOPT, UNLOCK_GETOPT): Remove.
274 (_argp_unlock_xxx): Remove.
275 (parser_init): Do not use LOCK_GETOPT.
276 (parser_finalize): Do not use UNLOCK_GETOPT.
277 (struct parser): New member OPT_DATA.
278 (parser_init): Initialize parser->opt_data. Use
279 parser->opt_data.opterr instead of opterr.
280 (parser_parse_opt): Use parser->opt_data.optarg instead optarg.
281 (parser_parse_next): Likewise. Use parser->opt_data.optind
282 instead optind. Use parser->opt_data.optopt instead of optopt.
283 Call _getopt_long_only_r and _getopt_long_r instead of
284 getopt_long_only and getopt_long, and pass the extra argument.
286 2004-03-09 Ulrich Drepper <drepper@redhat.com>
288 * iconv/gconv_db.c: Don't define lock as static. Rename to
289 __gconv_lock and export from the file.
290 * iconv/gconv_int.h: Declare __gconv_lock.
291 * libio/iofclose.c [_LIBC] (_IO_new_fclose): Lock gconv lock
292 before __gconv_release_step calls.
293 Patch by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
295 * iconv/gconv_simple.c (internal_ucs4_loop): Fix typo in last change.
297 * posix/Makefile (tests): Add tst-vfork1.
298 * posix/tst-vfork1.c: New file.
300 2004-03-08 Ulrich Drepper <drepper@redhat.com>
302 * sysdeps/i386/dl-machine.h: Define ARCH_FIXUP_ATTRIBUTE and use
303 it in the fixup function declarations.
304 * elf/dl-runtime.c: If ARCH_FIXUP_ATTRIBUTE is not defined,
305 provide dummy definition. Use macro in fixup function
308 * sysdeps/unix/sysv/linux/i386/vfork.S: If SAVE_PID and
309 RESTORE_PID are defined, use it.
310 * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
312 * sysdeps/posix/gai_strerror.c: Add error string for EAI_IDN_ENCODE.
314 * Makerules: Use extra-modules.mk if modules-names is defined.
315 * extra-modules.mk: New file.
316 * dlfcn/Makefile (CPPFLAGS-modcxaatexit.c): Removed.
317 * elf/Makefile (CFLAGS-interp.c): Add -DNOT_IN_libc=1.
318 * csu/Makefile ($(objpfx)version-info.h): Pass -DNOT_IN_libc=1 to
320 * Makefile (distribute): Add symbol-hacks.h and extra-modules.mk.
321 * sysdeps/generic/symbol-hacks.h: New file.
322 * sysdeps/wordsize-32/symbol-hacks.h: New file.
323 * sysdeps/wordsize-32/divdi3.c: Define *_internal aliases for __divdi3,
324 __moddi3, __udivdi3, and __umoddi3.
325 * include/libc-symbols.h: Include <symbol-hacks.h>.
327 2004-03-08 Jeroen Dekkers <jeroen@dekkers.cx>
329 * elf/rtld.c (_rtld_global_ro) [MAP_COPY]: Don't set _dl_unload_cache.
331 * sysdeps/mach/hurd/dl-sysdep.c (_dl_important_hwcaps):
332 Don't use INTUSE with _dl_signal_error.
334 2004-03-08 Ulrich Drepper <drepper@redhat.com>
336 * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
337 Don't use INTUSE with _dl_signal_error.
339 2004-03-08 Richard Henderson <rth@redhat.com>
341 * sysdeps/alpha/soft-fp/ots_cvtxt.c (_OtsConvertFloatXT): Fix typo
344 2004-03-07 Ulrich Drepper <drepper@redhat.com>
346 * config.h.in: Add entry for HAVE_LIBIDN.
347 * configure.in: If libidn add-on present define HAVE_LIBIDN.
348 * Versions.def: Add entry for libcidn.
350 2004-03-07 Simon Josefsson <jas@extundo.com>
352 * resolv/netdb.h [__USE_GNU]: Add new AI_IDN ai_flags for addrinfo.
353 [__USE_GNU]: Add new error code EAI_IDN_ENCODE for getaddrinfo.
354 * sysdeps/posix/getaddrinfo.c: Add prototype for __idna_to_ascii_lz
355 and define IDNA_SUCCESS.
356 (gaih_inet): If ai_flags have AI_IDN, invoke __idna_to_ascii_lz.
357 (getaddrinfo): Fix EAI_BADFLAGS test to include AI_IDN.
358 All changes only applicable when glibc is compiled with the libidn
361 2004-03-07 Ulrich Drepper <drepper@redhat.com>
363 * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Call
364 _dl_lookup_symbol_x not _dl_lookup_symbol.
366 * sysdeps/powerpc/elf/rtld-global-offsets.sym: Adjust for moving
367 _dl_hwcap into _rtld_global_ro.
368 * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Likewise.
369 * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
370 * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
371 * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
372 * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
373 * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
374 * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
375 * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
376 * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
377 * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
379 2004-03-07 Andreas Schwab <schwab@suse.de>
381 * elf/dl-sym.c: Include <dl-tls.h> only when USE_TLS.
383 2004-03-07 Andreas Jaeger <aj@suse.de>
385 * iconvdata/iso-2022-cn-ext.c (BODY): Remove cast used as lvalue.
386 * iconvdata/tcvn5712-1.c (EMIT_SHIFT_TO_INIT): Likewise.
387 * iconvdata/euc-jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
388 * iconvdata/shift_jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
389 * iconvdata/tscii.c (EMIT_SHIFT_TO_INIT): Likewise.
391 2004-03-07 Ulrich Drepper <drepper@redhat.com>
393 * sysdeps/generic/ldsodefs.h: Move _dl_initial_searclist,
394 _dl_hp_timing_overhead, _dl_init_all_dirs, and the content of
395 dl-procinfo.c from _rtld_global to _rtld_global_ro.
396 * elf/rtld.c: Adjust initializer for _rtld_global_ro.
397 * elf/dl-close.c: Use GLRO instead of GL where appropriate.
398 * elf/dl-libc.c: Likewise.
399 * elf/dl-load.c: Likewise.
400 * sysdeps/i386/dl-procinfo.h: Likewise.
401 * sysdeps/i386/i686/hp-timing.h: Likewise.
402 * sysdeps/ia64/hp-timing.h: Likewise.
403 * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise.
404 * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
405 * sysdeps/unix/sysv/linux/arm/dl-procinfo.h: Likewise.
406 * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Likewise.
407 * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Likewise.
408 * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise.
409 * string/test-string.h: Define GLRO.
411 2004-03-06 Ulrich Drepper <drepper@redhat.com>
413 * elf/dl-lookup.c: We don't need for specialized lookup functions.
414 Combining the functionality does not slow down relocation processing,
415 it might even speed it up a little.
416 * sysdeps/generic/ldsodefs.h: Adjust prototypes for lookup function.
417 Add only one function pointer to rtlf_global_ro.
418 * elf/do-lookup.h: Replace #ifs with ifs.
419 * elf/dl-libc.c: Adjust _dl_lookup_* callers.
420 * elf/dl-reloc.c: Likewise.
421 * elf/dl-runtime.c: Likewise.
422 * elf/dl-sym.c: Likewise.
423 * elf/rtld.c: Likewise. Adjust _rtld_global_ro initialization.
425 2004-03-06 Richard Henderson <rth@redhat.com>
427 * sysdeps/generic/ldsodefs.h (__rtld_local_attribute__,
428 __rtld_global_attribute__): Undef after use.
429 (_rtld_local_ro): Define __rtld_local_attribute__ with just hidden
432 * soft-fp/quad.h (union _FP_UNION_Q): Add longs structure.
433 * sysdeps/alpha/Implies: Add alpha/soft-fp.
434 * sysdeps/alpha/soft-fp/sfp-machine.h: Rewrite for GEM interface.
435 * sysdeps/alpha/Subdirs: New file.
436 * sysdeps/alpha/soft-fp/Makefile: New file.
437 * sysdeps/alpha/soft-fp/Versions: New file.
438 * sysdeps/alpha/soft-fp/local-soft-fp.h: New file.
439 * sysdeps/alpha/soft-fp/ots_add.c: New file.
440 * sysdeps/alpha/soft-fp/ots_cmp.c: new file.
441 * sysdeps/alpha/soft-fp/ots_cmpe.c: New file.
442 * sysdeps/alpha/soft-fp/ots_cvtqux.c: New file.
443 * sysdeps/alpha/soft-fp/ots_cvtqx.c: New file.
444 * sysdeps/alpha/soft-fp/ots_cvttx.c: New file.
445 * sysdeps/alpha/soft-fp/ots_cvtxq.c: New file.
446 * sysdeps/alpha/soft-fp/ots_cvtxt.c: New file.
447 * sysdeps/alpha/soft-fp/ots_div.c: New file.
448 * sysdeps/alpha/soft-fp/ots_mul.c: New file.
449 * sysdeps/alpha/soft-fp/ots_nintxq.c: New file.
450 * sysdeps/alpha/soft-fp/ots_sub.c: New file.
452 2004-03-06 Ulrich Drepper <drepper@redhat.com>
454 * configure.in: Recognize --enable-bind-now.
455 * elf/dynamic-link.h (elf_get_dynamic_info): Allow bind-now flags
457 * Makerules (LDFLAGS-c.so): Add -z now if so configured.
458 * elf/Makefile ($(objpfx)ld.so): Likewise.
459 * config.make.in (bind-now): New definition.
461 * elf/dl-fini.c (_dl_fini): Combine _dl_debug_printf calls.
462 * elf/rtld.c (print_statistics): Likewise.
464 * elf/dl-open.c: No need to pass any parameter to _dl_start_profile.
465 They are the same in both places.
466 * elf/dl-profile.c: Likewise.
467 * elf/rtld.c: Likewise.
468 * sysdeps/generic/ldsodefs.h: Likewise.
469 * elf/dl-support.c: Define _dl_profile_output variable. Initialize it.
471 2004-03-05 Ulrich Drepper <drepper@redhat.com>
473 * elf/Versions: Remove functions which are not exported anymore.
474 * dlfcn/dlerror.c: Call ld.so functions through GLSO.
475 * dlfcn/dlinfo.c: Likewise.
476 * elf/dl-close.c: Likewise.
477 * elf/dl-libc.c: Likewise.
478 * elf/dl-open.c: Likewise.
479 * elf/dl-sym.c: Likewise.
480 * sysdeps/generic/libc-start.c: Likewise.
481 * elf/dl-debug.c: Remove *_internal definition. Don't use INTUSE for
482 functions which are not exported anymore.
483 * elf/dl-deps.c: Likewise.
484 * elf/dl-dst.h: Likewise.
485 * elf/dl-error.c: Likewise.
486 * elf/dl-fini.c: Likewise.
487 * elf/dl-init.c: Likewise.
488 * elf/dl-load.c: Likewise.
489 * elf/dl-lookup.c: Likewise.
490 * elf/dl-misc.c: Likewise.
491 * elf/dl-profile.c: Likewise.
492 * elf/dl-profstub.c: Likewise.
493 * elf/dl-reloc.c: Likewise.
494 * elf/dl-runtime.c: Likewise.
495 * elf/dl-version.c: Likewise.
496 * elf/do-lookup.h: Likewise.
497 * include/dlfcn.h: Likewise.
498 * sysdeps/generic/dl-cache.c: Likewise.
499 * sysdeps/generic/dl-fptr.c: Likewise.
500 * sysdeps/generic/dl-origin.c: Likewise.
501 * sysdeps/generic/dl-sysdep.c: Likewise.
502 * sysdeps/generic/dl-tls.c: Likewise.
503 * sysdeps/generic/ldsodefs.h: Likewise.
504 * sysdeps/i386/dl-tls.h: Likewise.
505 * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
506 * elf/rtld.c: Likewise. Export function though _rtld_global_ro.
508 * sysdeps/generic/ldsodefs.h (struct rtld_global): Move
509 dl_debug_fd to rtld_global_ro.
510 * elf/rtld.c: Use GLRO instead of GL for dl_debug_fd.
511 * elf/dl-misc.c: Likewise.
513 * malloc/malloc.c: Don't call exported interface in the implementation.
515 * include/wctype.h: Add libc_hidden_proto for __towctrans.
516 * wctype/towctrans.c: Add libc_hidden_def.
518 * libio/memstream.c (open_memstream): Use _IO_init with INTUSE.
520 * posix/regexec.c (transit_state): Remove unused variable
523 * posix/regcomp.c (init_dfa): Use __btowc instead of btowc.
525 * sysdeps/generic/ldsodefs.h: Define new structure rtld_global_ro.
526 Declare _rtld_global_ro and _rtld_local_ro. Move members of
527 rtld_global structure into the new one if they are modified only
528 at startup time. Define GLRO to access _rtld_global_ro.
529 * elf/Versions: Export _rtld_global_ro.
530 * elf/dl-close.c: Use GLRO instead of GL where appropriate.
531 * elf/dl-conflict.c: Likewise.
532 * elf/dl-deps.c: Likewise.
533 * elf/dl-dst.h: Likewise.
534 * elf/dl-error.c: Likewise.
535 * elf/dl-fini.c: Likewise.
536 * elf/dl-init.c: Likewise.
537 * elf/dl-load.c: Likewise.
538 * elf/dl-lookup.c: Likewise.
539 * elf/dl-minimal.c: Likewise.
540 * elf/dl-open.c: Likewise.
541 * elf/dl-profile.c: Likewise.
542 * elf/dl-reloc.c: Likewise.
543 * elf/dl-runtime.c: Likewise.
544 * elf/dl-support.c: Likewise.
545 * elf/dl-version.c: Likewise.
546 * elf/do-lookup.h: Likewise.
547 * elf/rtld.c: Likewise.
548 * sysdeps/generic/dl-cache.c: Likewise.
549 * sysdeps/generic/dl-origin.c: Likewise.
550 * sysdeps/generic/dl-sysdep.c: Likewise.
551 * sysdeps/generic/libc-start.c: Likewise.
552 * sysdeps/generic/dl-cache.c: Likewise.
553 * sysdeps/i386/dl-machine.h: Likewise.
554 * sysdeps/i386/setfpucw.c: Likewise.
555 * sysdeps/i386/fpu/fclrexcpt.c: Likewise.
556 * sysdeps/i386/fpu/fedisblexcpt.c: Likewise.
557 * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
558 * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
559 * sysdeps/i386/fpu/fesetround.c: Likewise.
560 * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
561 * sysdeps/i386/fpu/ftestexcept.c: Likewise.
562 * sysdeps/unix/sysv/linux/dl-execstat.c: Likewise.
563 * sysdeps/unix/sysv/linux/dl-librecon.h: Likewise.
564 * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
565 * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise.
566 * sysdeps/unix/sysv/linux/getclktck.c: Likewise.
567 * sysdeps/unix/sysv/linux/getpagesize.c: Likewise.
568 * sysdeps/unix/sysv/linux/init-first.c: Likewise.
569 * sysdeps/unix/sysv/linux/prof-freq.c: Likewise.
570 * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
571 * sysdeps/unix/sysv/linux/i386/sigaction.h: Likewise.
572 * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
573 * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
574 * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
575 * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
576 * sysdeps/x86_64/dl-machine.h: Likewise.
577 * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
578 * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
579 * sysdeps/s390/s390-64/dl-machine.h: Likewise.
580 * sysdeps/s390/s390-32/dl-machine.h: Likewise.
581 * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
582 * sysdeps/powerpc/powerpc32/dl-machine.c: Likewise.
583 * sysdeps/m68k/dl-machine.h: Likewise.
584 * sysdeps/ia64/dl-machine.h: Likewise.
585 * sysdeps/arm/dl-machine.h: Likewise.
586 * sysdeps/alpha/dl-machine.h: Likewise.
587 * generic/dl-fptr.c: Likewise.
588 * mach/hurd/dl-sysdep.c: Likewise.
589 * unix/sysv/linux/ia64/dl-static.c: Likewise.
590 * unix/sysv/linux/ia64/getpagesize.c: Likewise.
591 * unix/sysv/linux/m68k/getpagesize.c: Likewise.
592 * unix/sysv/linux/sparc/sparc32/getpagesize.c: Likewise.
594 2004-03-04 Ulrich Drepper <drepper@redhat.com>
596 * sysdeps/generic/ldsodefs.h: Don't define _dl_name_match_p as inline.
597 * elf/dl-misc.c: Define _dl_name_match_p here.
598 * elf/dl-open.c (check_libc_caller): Don't use _dl_name_match_p.
600 * elf/dl-open.c (dl_open_worker): Check that _dl_open is called
601 from the right place.
603 2004-01-15 Paolo Bonzini <bonzini@gnu.org>
605 * posix/regex.h (REG_STARTEND): Define.
606 * posix/regexec.c (regexec): Check for REG_STARTEND.
608 2004-02-29 Paolo Bonzini <bonzini@gnu.org>
610 * posix/regexec.c (transit_state): Don't handle state == NULL.
611 Move state log and backreference management...
612 (merge_state_with_log): ... to this function.
613 (find_recover_state): New function.
614 (check_matching): Use find_recover_state to get a non-NULL
615 state when an invalid state is reached. Compute the amount
616 of initial characters to be skipped less conservatively when
617 multi-byte character sets are in use. Do not check
618 dfa->nbackref if the state log is NULL. Initialize err.
619 (acquire_init_state_context): Expect err to be initialized.
622 2004-03-05 Jakub Jelinek <jakub@redhat.com>
624 * sysdeps/sparc/sparc32/elf/start.S: Handle PIEs.
625 * sysdeps/sparc/sparc64/elf/start.S: Likewise.
627 2004-03-04 Jakub Jelinek <jakub@redhat.com>
629 * iconv/iconv_prog.c (process_block): Handle omit_invalid.
630 If iconv returns EILSEQ with omit_invalid, continue converting
631 and return 1 if no other errors are seen.
632 (main): Set status to EXIT_FAILURE whenever process_* returns
633 nonzero, but only stop processing further files if iy returns
636 2004-03-03 Jakub Jelinek <jakub@redhat.com>
638 * sysdeps/unix/sysv/linux/x86_64/posix_fadvise.c: New file.
639 * sysdeps/unix/sysv/linux/x86_64/posix_fadvise64.c: New file.
640 * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
642 * sysdeps/unix/sysv/linux/alpha/posix_fadvise.c: New file.
643 * sysdeps/unix/sysv/linux/alpha/posix_fadvise64.c: New file.
644 * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64):
646 * sysdeps/unix/sysv/linux/ia64/posix_fadvise.c: New file.
647 * sysdeps/unix/sysv/linux/ia64/posix_fadvise64.c: New file.
648 * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
650 * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise.c: New file.
651 * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise64.c: New
653 * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Removed.
654 * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise.c: New file.
655 * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise64.c: New file.
656 * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
657 (posix_fadvise64): Remove.
658 * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise.c: New file.
659 * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise64.c: New file.
660 * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
661 (posix_fadvise64): Remove.
663 2004-03-02 Andreas Schwab <schwab@suse.de>
665 * sysdeps/unix/sysv/linux/powerpc/powerpc32/xstat.c: New file.
666 * sysdeps/unix/sysv/linux/powerpc/powerpc32/fxstat.c: New file.
667 * sysdeps/unix/sysv/linux/powerpc/powerpc32/lxstat.c: New file.
669 2004-03-01 Ulrich Drepper <drepper@redhat.com>
671 * nscd/nscd_getgr_r.c (nscd_getgr_r): Add missing initialization
673 * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
675 * sysdeps/unix/sysv/linux/kernel-features.h: Add support for
676 __ASSUME_GETDENTS32_D_TYPE.
677 * sysdeps/unix/sysv/linux/getdents.c: For 2.6.4+ kernels use
678 getdents syscall again since it provides d_type information.
680 2004-02-29 Andreas Jaeger <aj@suse.de>
682 * manual/install.texi (Tools for Compilation): Autoconf 2.53 is
684 (Supported Configurations): Add x86_64-*-linux.
686 2004-02-28 Ulrich Drepper <drepper@redhat.com>
688 * sysdeps/i386/i686/memcmp.S: Move table to .rodata. Patch by HJ Lu.
690 2004-02-27 Jakub Jelinek <jakub@redhat.com>
692 * elf/rtld.c (dl_main): Adjust l->l_ld of the vDSO by l->l_addr.
693 * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Only set
694 GL(dl_sysinfo) if non-zero.
696 * sysdeps/unix/sysv/linux/sysconf.c: Include stdlib.h.
698 2004-02-26 Ulrich Drepper <drepper@redhat.com>
700 * nss/getXXbyYY_r.c: Pass result also to the nscd_* function. Don't
702 * nscd/nscd_proto.h: Add new argument for pointer to result pointer
703 to all nscd_* functions.
704 * nscd/nscd_getgr_r.c (nscd_getgr_r): Add new parameter. Store result
705 pointer in the address provided by the new parameter if successful.
706 Otherwise store NULL. Return zero if no entry found.
707 (__nscd_getgrnam_r, __nscd_getgrgid_r): Add new parameter and pass
709 * nscd/nscd_gethst_r.c (nscd_gethst_r): Add new parameter. Store
710 result pointer in the address provided by the new parameter if
711 successful. Otherwise store NULL. Return zero if no entry found.
712 (__nscd_gethostbyname_r, __nscd_gethostbyname2_r,
713 __nscd_gethostbyaddr_r): Add new parameter and pass it on.
714 * nscd/nscd_getpw_r.c (nscd_getpw_r): Add new parameter. Store result
715 pointer in the address provided by the new parameter if successful.
716 Otherwise store NULL. Return zero if no entry found.
717 (__nscd_getpwnam_r, __nscd_getpwuid_r): Add new parameter and pass
720 2004-02-26 Jakub Jelinek <jakub@redhat.com>
722 * sysdeps/unix/sysv/linux/clock_settime.c (SYSDEP_SETTIME): Set
723 retval to -1 on error.
725 2004-02-26 Ulrich Drepper <drepper@redhat.com>
727 * stdlib/canonicalize.c (__realpath): Simplify.
729 * posix/regcomp.c (parse_expression): Avoid duplication in calls
730 to build_charclass_op.
732 2004-02-26 Jakub Jelinek <jakub@redhat.com>
734 * elf/rtld.c (dl_main): Correctly set up l_map_end and l_addr
735 in vDSO's link_map, don't assume l_addr == 0. Set GL(dl_sysinfo)
736 from e_entry only if AT_SYSINFO not present and adjust by l_addr.
737 Take vDSO into account when inserting rtld into _dl_loaded chain.
739 2004-02-26 Ulrich Drepper <drepper@redhat.com>
741 * sunrpc/svcauth_des.c (authdes_getucred): Removed fixed limit on
742 number of groups in the cache. Relax the disconnect between the
743 interface of authdes_getucred and netname2user a bit.
744 * sunrpc/auth_unix.c (authunix_create_default): Don't allocate
745 huge arrays on the stack.
747 * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Use the official
748 not cancelable interfaces.
750 2004-02-24 Arnold D. Robbins <arnold@skeeve.com>
752 * posix/regex_internal.c (build_wcs_upper_buffer): Enclose
753 `offsets_needed' label in `#ifdef _LIBC' to silence `unused label'
756 2004-02-24 Nelson H.F. Beebe <beebe@math.utah.edu>
758 * posix/regcomp.c (parse_expression): Add cast to (const unsigned
759 char *) in calls to `build_charclass_op'.
760 * posix/regex_internal.c (build_wcs_buffer): Add cast to char* in call
762 * posix/regex_internal.h (bitset_not, bitset_merge, bitset_not_merge,
763 bitset_mask, re_string_char_size_a, re_string_wchar_at,
764 re_string_elem_size_at): Change to use prototypes.
765 (re_string_char_size_at, re_string_wchar_at,
766 re_string_elem_size_at): Declare as `internal_function'.
768 2004-02-25 Ulrich Drepper <drepper@redhat.com>
770 * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Handle
773 2004-02-23 Jakub Jelinek <jakub@redhat.com>
775 * wcsmbs/mbrtowc.c (__mbrtowc): Cap s + n at the end of address space.
776 * stdlib/Makefile (tests): Add testmb2.
778 * stdlib/testmb2.c: New test.
780 2004-02-23 Jakub Jelinek <jakub@redhat.com>
782 * sysdeps/posix/getaddrinfo.c (gaih_inet): If _res has not been
783 inited yet, try to init it before saving old _res.options.
784 * posix/Makefile (xtests): Add bug-ga2.
785 (generated): Add bug-ga2.mtrace and bug-ga2-mem.
786 (xtests): Depend on bug-ga2-mem.
787 ($(objpfx)bug-ga2-mem, bug-ga2-ENV): New.
788 * posix/bug-ga2.c: New test.
790 2004-02-22 Ulrich Drepper <drepper@redhat.com>
792 * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Pop register
793 content also in case of an overflow in the parameter.
794 Reported by Momchil Velikov <velco@fadata.bg>.
796 2004-02-21 Ulrich Drepper <drepper@redhat.com>
798 * elf/dynamic-link.h (elf_get_dynamic_info): Recognize DF_1_NOW.
799 In ld.so, neither DT_FLAGS nor DT_FLAGS_1 must be used.
801 2004-02-21 Andreas Jaeger <aj@suse.de>
803 * posix/bug-ga1.c: Include <string.h> for memset prototype.
805 * elf/dl-load.c (_dl_map_object_from_fd): Fix casts used as lvalue.
807 * iconv/gconv_simple.c (internal_ucs4le_loop): Remove cast used as
810 2004-02-19 Carlos O'Donell <carlos@baldric.uwo.ca>
812 * sysdeps/generic/framestate.c [__USING_SJLJ_EXCEPTIONS__]
813 (__frame_state_for): Set frame_State_for to abort if the compiler
815 * sysdeps/generic/unwind-dw2.c: Allow sjlj enabled compilers to
816 build the code by removing __USING_SJLJ_EXCEPTIONS__ wrapper.
818 2004-02-20 Alexandre Oliva <aoliva@redhat.com>
820 * resolv/Versions: Remove semicolon from the end of libresolv's
821 GLIBC_2.3.2 version block.
822 * Versions.def (libresolv): Add GLIBC_2.3.2.
824 2004-02-19 Carlos O'Donell <carlos@baldric.uwo.ca>
826 * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Fix order of fp
827 status register loads.
829 2004-02-20 Thorsten Kukuk <kukuk@suse.de>
831 * nscd/nscd.c (termination_handler): Use _exit instead of exit
833 2004-02-20 Ulrich Drepper <drepper@redhat.com>
835 * nscd/nscd.c (main): Report fork errors.
837 * dlfcn/dlsym.c: Get ld.so loading lock before the call into ld.so.
838 * dlfcn/dlvsym.c: Likewise.
839 * elf/dl-addr.c: Get loading lock while using _dl_loaded data.
840 * elf/dl-fini.c: Likewise.
841 Patch by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
843 2004-02-20 Jakub Jelinek <jakub@redhat.com>
845 * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Add ulps for the
846 2003-11-27 atan2 test.
848 * sysdeps/powerpc/fpu/bits/mathinline.h (lrint, lrintf): Protect
849 with #ifndef __powerpc64__.
851 * sysdeps/generic/ldsodefs.h (_dl_argv, _dl_argv_internal): If
852 DL_ARGV_NOT_RELRO defined, don't use attribute_relro.
853 * sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
854 * sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
855 * sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
856 * sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
857 * sysdeps/alpha/dl-sysdep.h: New file.
858 * sysdeps/ia64/dl-sysdep.h: New file.
859 * sysdeps/sparc/dl-sysdep.h: New file.
861 2004-02-19 Jakub Jelinek <jakub@redhat.com>
863 * sysdeps/sparc/sparc32/bits/atomic.h: Add __make_section_unallocated
864 for .gnu.linkonce.b.__sparc32_atomic_locks section.
865 (__sparc32_atomic_locks): Add __sec_comment at the end of section name.
867 2004-02-19 Steven Munroe <sjmunroe@us.ibm.com>
869 * sysdeps/generic/libc-start.c [LIBC_START_DISABLE_INLINE] (STATIC):
871 * sysdeps/powerpc/elf/libc-start.c: Define LIBC_START_DISABLE_INLINE
872 because gcc does not allow inline of functions that call setjmp.
874 2004-02-19 Steven Munroe <sjmunroe@us.ibm.com>
876 * sysdeps/powerpc/powerpc64/Makefile: Use -finline-limit.
878 2004-02-19 Jakub Jelinek <jakub@redhat.com>
880 * elf/rtld.c (_dl_argv): If DL_ARGV_NOT_RELRO defined, don't
881 use attribute_relro for _dl_argv.
882 * sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
883 * sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
884 * sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
885 * sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
887 2004-02-19 Ulrich Drepper <drepper@redhat.com>
889 * libio/iopopen.c (_IO_new_proc_open): It's not kosher to use
890 vfork instead of fork.
891 * libio/oldiopopen.c (_IO_old_proc_open): Likewise.
893 * sysdeps/unix/clock_settime.c (clock_settime): Fix typo which
894 prevented system-dependent handling from being used.
896 2004-02-18 Carlos O'Donell <carlos@baldric.uwo.ca>
898 * test-skeleton.c (main): If set, use environment variable
899 TIMEOUTFACTOR to scale test TIMEOUT.
901 2004-02-18 Ulrich Drepper <drepper@redhat.com>
903 * nscd/nscd_conf.c: Include <stdio_ext.h>.
905 2004-02-16 Ulrich Drepper <drepper@redhat.com>
907 * stdlib/test-canon.c (do_test): Test realpath(,NULL) in the loop
910 * stdlib/canonicalize.c (__realpath): Remove unnecessary copy
913 * nscd/nscd_conf.c (nscd_parse_file): Little optimization.
915 2004-02-14 Thorsten Kukuk <kukuk@suse.de>
917 * nscd/dbg_log.c (set_logfile): Only save name of logfile,
919 (init_logfile): New function, open logfile if requested.
920 * nscd/dbg_log.h: Adjust protoype for set_logfile, add init_logfile.
921 * nscd/nscd.c (main): Call init_logfile after forking in background.
922 * nscd/nscd_conf.c (nscd_parse_file): Adjust for new set_logfile.
924 2004-02-16 Ulrich Drepper <drepper@redhat.com>
926 * elf/rtld.c (dl_main): Don't fail execution if file named in
927 ld.so.preload is not present [BZ #18].
929 * sysdeps/posix/getaddrinfo.c (getaddrinfo): Undo unintended
930 changes in last patch.
932 * posix/regexec.c (transit_state): Fix typo in commented-out code
935 * sysdeps/posix/getaddrinfo.c (match_prefix): Correctly match
936 partial bytes [BZ #24].
937 * posix/Makefile (tests): Add bug-ga1.
938 * posix/bug-ga1.c: New file.
940 2004-02-13 Steven Munroe <sjmunroe@us.ibm.com>
942 * sysdeps/powerpc/powerpc64/__longjmp-common.S: New file.
943 * sysdeps/powerpc/powerpc64/__longjmp.S [NOT_IN_libc](__longjmp):
944 Non-versioned __longjmp for rtld-__longjmp.
945 [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
946 default version of __longjmp.
947 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
948 (__novmx__longjmp): Original version of __longjmp.
949 * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
950 Non-versioned _setjmp for rtld-_setjmp.
951 [!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
952 as default version of _setjmp.
953 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
954 (__novmx_setjmp): Original version of _setjmp.
955 * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__vmxsetjmp): Branch to
956 __vmx__sigsetjmp and define as default version of setjmp.
957 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
958 (__novmxsetjmp): Original version of setjmp.
959 * sysdeps/powerpc/powerpc64/setjmp-common.S: New file.
960 * sysdeps/powerpc/powerpc64/setjmp.S [NOT_IN_libc](__setjmp):
961 Non-versioned __sigsetjmp for rtld-setjmp.
962 [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
963 as default version of __sigsetjmp.
964 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
965 (__novmx__sigsetjmp): Original version of __sigsetjmp.
967 * sysdeps/powerpc/powerpc32/__longjmp-common.S: New File
968 * sysdeps/powerpc/powerpc32/__longjmp.S [NOT_IN_libc](__longjmp):
969 Non-versioned __longjmp for rtld-__longjmp.
970 [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
971 default version of __longjmp.
972 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
973 (__novmx__longjmp): Original version of __longjmp.
974 * sysdeps/powerpc/powerpc32/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
975 Non-versioned _setjmp for rtld-_setjmp.
976 [!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
977 as default version of _setjmp.
978 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
979 (__novmx_setjmp): Original version of _setjmp.
980 * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__vmxsetjmp): Branch to
981 __vmx__sigsetjmp and define as default version of setjmp.
982 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
983 (__novmxsetjmp): Original version of setjmp.
984 * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: New file.
985 * sysdeps/powerpc/powerpc32/fpu/__longjmp.S [NOT_IN_libc](__longjmp):
986 Non-versioned __longjmp for rtld-__longjmp.
987 [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
988 default version of __longjmp.
989 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
990 (__novmx__longjmp): Original version of __longjmp.
991 * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: New file.
992 * sysdeps/powerpc/powerpc32/fpu/setjmp.S [NOT_IN_libc](__setjmp):
993 Non-versioned __sigsetjmp for rtld-setjmp.
994 [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
995 as default version of __sigsetjmp.
996 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
997 (__novmx__sigsetjmp): Original version of __sigsetjmp.
998 * sysdeps/powerpc/powerpc32/setjmp-common.S: New file.
999 * sysdeps/powerpc/powerpc32/setjmp.S [NOT_IN_libc](__setjmp):
1000 Non-versioned __sigsetjmp for rtld-setjmp.
1001 [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
1002 as default version of __sigsetjmp.
1003 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
1004 (__novmx__sigsetjmp): Original version of __sigsetjmp.
1006 * sysdeps/powerpc/Dist: New File.
1007 * sysdeps/powerpc/Makefile (sysdep_routines): Add novmx-longjmp.c
1009 * sysdeps/powerpc/Versions (libc): To GLIBC_2.3_4 add _longjmp,
1010 __sigsetjmp, _setjmp, longjmp, and setjmp. To GLIBC_PRIVATE add
1011 __novmx__libc_longjmp, __novmx__libc_siglongjmp, __vmx__libc_longjmp,
1012 and __vmx__libc_siglongjmp.
1013 * sysdeps/powerpc/bits/setjmp.h: Define JB_VRSAVE, JB_VRS, and adjust
1014 JB_SIZE to add VMX regs to __jmp_buf.
1015 * sysdeps/powerpc/longjmp.c: New file.
1016 * sysdeps/powerpc/novmxsetjmp.h: New file.
1017 * sysdeps/powerpc/novmx-longjmp.c: New file.
1018 * sysdeps/powerpc/novmx-sigjmp.c: New file.
1019 * sysdeps/powerpc/sigjmp.c: New file.
1021 2004-02-13 Jakub Jelinek <jakub@redhat.com>
1023 * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c (__lrintf, lrintf):
1025 (__lrintl, lrintl): Remove.
1026 * sysdeps/powerpc/powerpc64/fpu/s_llrint.c (__lrint): Fix a typo in
1027 strong_alias spelling.
1028 * sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: Remove.
1029 * sysdeps/powerpc/powerpc64/fpu/s_lrint.S: New file.
1031 2004-02-12 Ulrich Drepper <drepper@redhat.com>
1033 * posix/getopt.h: Add some non-gcc support. Patch by Aharon Robbins.
1035 2004-02-12 Mark Brown <bmark@us.ibm.com>
1037 * sysdeps/ia64/fpu/e_fmodf.S: Added text of Intel license.
1039 2004-02-12 Jakub Jelinek <jakub@redhat.com>
1041 * sysdeps/powerpc/fpu/s_lrint.c: Move to...
1042 * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: ... here.
1043 * sysdeps/powerpc/fpu/s_llrint.c: Move to...
1044 * sysdeps/powerpc/powerpc32/fpu/s_llrint.c: ... here.
1045 * sysdeps/powerpc/fpu/s_llrintf.c: Move to...
1046 * sysdeps/powerpc/powerpc32/fpu/s_llrintf.c: ... here.
1047 * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: New file.
1048 * sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: New file.
1049 * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: New file.
1051 * math/libm-test.inc (lrint_test): Add new test.
1052 (llrint_test, lround_test, llround_test): Likewise.
1053 * sysdeps/ieee754/ldbl-128/s_lroundl.c (__lroundl): Fix special case
1054 with result taking up 48 bits.
1055 * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
1056 * sysdeps/ieee754/ldbl-128/s_llroundl.c (__llroundl): Likewise.
1057 * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Fix special case
1058 with result taking up 31 bits.
1060 2004-02-12 Ulrich Drepper <drepper@redhat.com>
1062 * locale/programs/locale.c (show_locale_vars): Don't print a value
1063 for LANG if it is not set.
1065 2004-02-11 Jakub Jelinek <jakub@redhat.com>
1067 * posix/regexec.c (check_node_accept_bytes): Return 0 if char_len is 0.
1068 (find_collation_sequence_value): Don't look beyond end of
1070 * posix/Makefile (tests): Add bug-regex23.
1071 (bug-regex23-ENV): New.
1072 * posix/bug-regex23.c: New file.
1074 2004-02-10 Roland McGrath <roland@frob.com>
1076 * sysdeps/mach/hurd/times.c (__times): Use union instead of cast.
1077 * sysdeps/mach/hurd/sendmsg.c (__libc_sendmsg): Likewise.
1079 * sysdeps/mach/hurd/configure.in: Move `retcode' check to ...
1080 * sysdeps/mach/configure.in: ... here.
1081 * sysdeps/mach/hurd/configure: Regenerated.
1082 * sysdeps/mach/configure.in: Regenerated.
1084 2004-02-10 Ulrich Drepper <drepper@redhat.com>
1086 * sysdeps/generic/setenv.c (__add_to_environ): Don't let the
1087 temporary copies of the variables accumulate on the stack.
1089 * stdio-common/_i18n_number.h: Finish last patch.
1091 2004-02-09 Ulrich Drepper <drepper@redhat.com>
1093 * sysdeps/i386/i686/memcmp.S: New file. Patch by HJ Lu.
1095 2003-12-05 Roland McGrath <roland@redhat.com>
1097 * sysdeps/unix/sysv/linux/i386/syscalls.list: Turn vm86 into vm86old
1098 for vm86@GLIBC_2.0 version. Add new vm86@GLIBC_2.3.4.
1099 * sysdeps/unix/sysv/linux/i386/Versions (libc: GLIBC_2.3.4): Add vm86.
1100 * sysdeps/unix/sysv/linux/i386/sys/vm86.h: Update vm86 prototype.
1102 2004-02-09 Ulrich Drepper <drepper@redhat.com>
1104 * nis/ypclnt.c: Cleanup last patch.
1106 2004-02-09 Andreas Jaeger <aj@suse.de>
1108 * configure.in: Remove glibcbug creation.
1109 * configure: Regenerated.
1111 * sysdeps/x86_64/fpu/s_copysignf.S: Only load 4 bytes.
1113 2004-02-03 Thorsten Kukuk <kukuk@suse.de>
1115 * nis/ypclnt.c (__yp_bind_client_create): New, small chunk
1116 of duplicated code from __yp_bind.
1117 (__yp_bind_file): New, binding dir code from __yp_bind.
1118 (__yp_bind_client_create): New, ypbind code from __yp_bind.
1119 (__ypclnt_call): New, make NIS query.
1120 (do_ypcall): At first use cached data, then try data from
1121 binding directory, after this ask ypbind for a working ypserv.
1122 Based on a patch from Jeff Bastian <jmbastia@ti.com> and
1123 Chris Barrera <cbarrera@ti.com>
1125 2004-01-19 Roland McGrath <roland@redhat.com>
1127 * configure.in: Don't set CCVERSION.
1128 * configure: Regenerated.
1129 * glibcbug.in: File removed.
1130 * Makefile (install-bin-script): Remove glibcbug.
1131 (glibcbug): Target removed.
1132 (distclean-1): Don't rm glibcbug.
1133 (distribute): Remove glibcbug.in.
1135 2004-02-09 Roland McGrath <roland@redhat.com>
1137 * time/tzset.c (tzset_internal): Cap hour in POSIX $TZ rule format to
1140 2004-01-29 Roland McGrath <roland@redhat.com>
1142 * io/ftwtest-sh: Use $tmp consistently, not literal /tmp.
1143 Reported by Kevin P. Fleming <kpfleming@backtobasicsmgmt.com>.
1145 2004-02-09 Ulrich Drepper <drepper@redhat.com>
1147 * libio/genops.c (_IO_cleanup): Do not use locking when flushing
1148 the buffers. Some thread might be using a stream.
1150 2004-02-09 Andreas Jaeger <aj@suse.de>
1152 * sysdeps/x86_64/memcpy.S: Fix alignment [BZ #7].
1153 Patch by Jan Beulich <jbeulich@novell.com>.
1155 2004-02-09 Andreas Schwab <schwab@suse.de>
1157 * include/rpc/rpc.h: Declare thread variables with their correct type.
1158 * sunrpc/clnt_perr.c: Don't cast thread variables.
1159 * sunrpc/clnt_raw.c: Likewise.
1160 * sunrpc/clnt_simp.c: Likewise.
1161 * sunrpc/key_call.c: Likewise.
1162 * sunrpc/svcauth_des.c: Likewise.
1163 * sunrpc/svc.c: Likewise.
1164 * sunrpc/svc_raw.c: Likewise.
1165 * sunrpc/svc_simple.c: Likewise.
1167 2004-02-09 Ulrich Drepper <drepper@redhat.com>
1169 * stdio-common/_i18n_number.h: Support printing localized decimal
1170 point and thousand separator.
1171 * wctype/wctrans.c: Add __wctrans alias.
1172 * include/wctype.h: Declare __wctrans.
1173 Based on a patch by Hamed Malek.
1175 * sysdeps/i386/fpu/fclrexcpt.c (__feclearexcept): Don't touch bits
1176 other than the status bits [BZ #10].
1178 2004-02-08 Ulrich Drepper <drepper@redhat.com>
1180 Make stream locking operations really work.
1181 * misc/Makefile (CFLAGS-mntent_r.c): Define.
1182 * shadow/Makefile (CFLAGS-fgetspent_r.c): Define.
1183 (CFLAGS-putspent.c): Define.
1184 * grp/Makefile (CFLAGS-fgetgrent_r.c): Define.
1185 (CFLAGS-putgrent.c): Define.
1186 * pwd/Makefile (CFLAGS-fgetpwent_r.c): Define.
1187 Reported by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
1189 * elf/dl-load.c (lose): Use noinline attribute instead of silly
1190 alloca to prevent inlining.
1191 * elf/dl-runtime.c (fixup): Likewise.
1192 (profile_fixup): Likewise.
1194 * stdio-common/printf_size.c: Undo parts of patch from 2000-2-11.
1195 Initialize width correctly.
1197 2004-02-07 Andreas Jaeger <aj@suse.de>
1199 * iconv/gconv_simple.c (ucs4le_internal_loop): Remove cast used as
1201 (internal_ucs4le_loop_single): Likewise.
1202 (ucs4_internal_loop): Likewise.
1204 (internal_ucs4_loop_single): Likewise.
1205 * iconvdata/iso8859-1.c (BODY): Likewise.
1206 * iconvdata/cp1255.c (EMIT_SHIFT_TO_INIT): Likewise.
1207 * iconvdata/cp1258.c (EMIT_SHIFT_TO_INIT): Likewise.
1208 * iconvdata/gb18030.c (BODY): Likewise.
1209 * iconvdata/armscii-8.c (BODY): Likewise.
1210 * stdlib/msort.c (msort_with_tmp): Likewise.
1212 * iconv/gconv_open.c (__gconv_open): Remove conditional expression
1215 2004-02-06 Steven Munroe <sjmunroe@us.ibm.com>
1217 * sysdeps/powerpc/powerpc32/dl-machine.c: Declare __cache_line_size as
1219 (__elf_machine_runtime_setup): Invalidate the instruction cache over
1220 the whole range of the PLT.
1222 2004-02-06 Andreas Schwab <schwab@suse.de>
1224 * posix/regcomp.c (build_range_exp): Fix off-by-one.
1225 (parse_bracket_exp): Likewise.
1227 2004-02-05 Ulrich Drepper <drepper@redhat.com>
1229 * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Define
1230 _HAVE_STAT_NSEC and _HAVE_STAT64_NSEC. Patch by Anton Blanchard.
1232 2004-02-02 Paolo Bonzini <bonzini@gnu.org>
1234 * posix/regexec.c (check_matching): Add P_MATCH_FIRST parameter.
1235 (re_search_internal): Pass new parameter to check_matching.
1236 (check_matching): Unless a parenthesized group is found at the
1237 beginning of the regexp, advance P_MATCH_FIRST until we entered
1238 a state different from the initial state.
1240 2004-02-01 Ulrich Drepper <drepper@redhat.com>
1242 * math/libm-test.inc (lround_test): Add new test.
1243 (llround_test): Likewise.
1244 (lrint_test): Likewise.
1245 (llrint_test): Likewise.
1246 * sysdeps/ieee754/dbl-64/s_lround.c (__lround): Fix special case
1247 with result taking up 20 bits.
1248 * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
1249 * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Likewise..
1250 * sysdeps/ieee754/ldbl-96/s_lroundl.c (__lroundl): Fix special
1251 case with result taking up 31 bits.
1252 * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
1254 * po/nl.po: Update from translation team.
1256 2004-01-30 Andreas Schwab <schwab@suse.de>
1258 * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (ILL_BREAK,
1259 FPE_DECOVF, FPE_DECDIV, FPE_DECERR, FPE_INVASC, FPE_INVDEC,
1260 SEGV_PSTKOVF): Remove underscore prefix from definition.
1262 2004-01-28 Paolo Bonzini <bonzini@gnu.org>
1264 Merge regex changes in gawk.
1265 * posix/regcomp.c (build_range_exp) [!_LIBC]: Check validity
1266 of collation elements.
1267 * posix/regex.c: Include limits.h.
1268 * posix/regex.h: Document REG_ECOLLATE correctly.
1269 * posix/regex_internal.h [!_LIBC && !ENABLE_NLS]: Disable NLS.
1271 2004-01-24 Andreas Jaeger <aj@suse.de>
1273 * malloc/obstack.h: Import gnulib version.
1274 * malloc/obstack.c: Likewise.
1276 2004-01-26 David Mosberger <davidm@hpl.hp.com>
1278 * elf/link.h (struct dl_phdr_info): Fix typo in comment.
1279 * elf/rtld.c (dl_main): After incrementing dl_nloaded, also
1280 increment dl_load_adds.
1281 * elf/dl-iteratephdr.c (__dl_iterate_phdr): Replace GL(dl_load_subs)
1282 with equivalent GL(dl_load_adds - GL(dl_nloaded).
1283 (dl_iterate_phdr): Likewise.
1284 * elf/dl-close.c (_dl_close): Delete increment of GL(dl_load_subs).
1285 * elf/dl-support.c: Remove global variable _dl_load_subs.
1286 * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
1287 _dl_load_subs member.
1289 2004-01-27 Jakub Jelinek <jakub@redhat.com>
1291 * elf/rtld.c (_dl_start_final): Don't set l_relro_* here.
1292 (_dl_start): And neither here.
1293 (dl_main): Set GL(dl_loaded)->l_relro_* and
1294 GL(dl_rtld_map)->l_relro_*.
1296 2004-01-23 David Mosberger <davidm@hpl.hp.com>
1298 * sysdeps/generic/ldsodefs.h (struct rtld_global): Add members
1299 _dl_load_adds and _dl_load_subs.
1300 * elf/dl-support.c (_dl_load_adds): New variable.
1301 (_dl_load_subs): Likewise.
1302 * elf/dl-object.c (_dl_new_object): Increment dl_load_adds.
1303 * elf/dl-close.c (_dl_close): Increment dl_load_subs.
1304 * elf/link.h (struct dl_phdr_info): Add members dlpi_adds and
1306 * include/link.h: Likewise.
1307 * elf/dl-iteratephdr.c (__dl_iterate_phdr): Initialize dlpi_adds
1308 and dlpi_subs members.
1309 (dl_iterate_phdr): Likewise.
1310 * elf/tst-dlmodcount.c: New file.
1311 * elf/Makefile (distribute): Mention tst-dlmodcount.c.
1312 (tests): If build-shared, mention tst-dlmodcount.
1313 ($(objpfx)tst-dlmodcount): If build-shared, build and
1316 2004-01-22 Jakub Jelinek <jakub@redhat.com>
1318 * elf/dl-reloc.c (_dl_relocate_object): Move PT_GNU_RELRO protection
1320 (_dl_protect_relro): New routine.
1321 * sysdeps/generic/ldsodefs.h (_dl_protect_relro): New prototype.
1322 * elf/rtld.c (_dl_start_final): Copy l_relro_addr and l_relro_size
1324 (_dl_main): Don't set GL(_dl_loaded)->l_relro_{addr,size} here.
1325 Call _dl_protect_relro for libraries if prelinking.
1327 2004-01-23 Richard Henderson <rth@redhat.com>
1329 * Versions.def (libm): Replace GLIBC_2.3.3 with GLIBC_2.3.4.
1330 * sysdeps/alpha/fpu/Versions (libm): Likewise.
1331 * sysdeps/alpha/fpu/cfloat-compat.h (cfloat_versions): Likewise.
1332 * sysdeps/alpha/fpu/s_clog10f.c (clog10f): Likewise.
1334 2004-01-22 Andreas Jaeger <aj@suse.de>
1336 * sysdeps/ieee754/dbl-64/e_pow.c (log2): Rename to my_log2 to
1337 avoid warnings for builtin function log2.
1339 * sysdeps/unix/sysv/linux/x86_64/setcontext.S: Add proper unwind
1342 2004-01-20 Ulrich Drepper <drepper@redhat.com>
1344 * sysdeps/unix/sysv/linux/sys/epoll.h: Add EPOLLONESHOT.
1345 * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise.
1346 Patch by Davide Libenzi.
1348 * sysdeps/unix/sysv/linux/kernel-features.h: Define
1349 __ASSUME_NO_CLONE_DETACHED for 2.6.2+ kernels.
1351 * catgets/Makefile ($(objpfx)de.msg): Run sed in C locale.
1353 * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use off64_t
1354 instead of loff_t. Include <fcntl.h>.
1355 * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Add readahead prototype.
1356 * sysdeps/unix/sysv/linux/arm/bits/fcntl.h: Likewise.
1357 * sysdeps/unix/sysv/linux/cris/bits/fcntl.h: Likewise.
1358 * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: Likewise.
1359 * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1360 * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1361 * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h: Likewise.
1362 * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1363 * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1364 * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
1365 * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
1366 * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1368 * elf/dl-load.c: Don't add attribute_relro to max_dirnamelen.
1370 * sysdeps/generic/inttypes.h: Fix PRI*FAST{16,32} macros.
1372 2003-12-31 Bruno Haible <bruno@clisp.org>
1374 * iconvdata/iso_6937-2.c (to_ucs4): Map 0x7E to U+007E, not U+203E.
1375 Map 0xA6 to U+0023. Map 0xA8 to U+00A4.
1376 (to_ucs4_comb): Map 0xC5 0x20 to U+00AF.
1377 (from_ucs4): Map U+00ED to 0xC2 0x69, not 0xC2 0xE9.
1378 (BODY for TO_LOOP): Don't map U+02DC. Map U+02DD to 0xCD 0x20, not
1379 0x00 0x20. Don't map U+2500..U+25E3.
1381 2004-01-19 Jakub Jelinek <jakub@redhat.com>
1383 * posix/regexec.c (get_subexp): Remove bkref_str variable.
1384 Extend buffers if needed before comparisons.
1385 (get_subexp_sub): Handle clean_state_log_if_needed failure.
1387 2004-01-17 Ulrich Drepper <drepper@redhat.com>
1389 * sysdeps/i386/i486/bits/atomic.h (atomic_add): Fix test for using
1390 atomic_decrement. Patch by Davin McCall.
1392 2004-01-13 Daniel Jacobowitz <drow@mvista.com>
1394 * sysdeps/powerpc/nofpu/sim-full.c (__sim_exceptions)
1395 (__sim_disabled_exceptions, __sim_round_mode): Declare with
1396 hidden data and nocommon.
1397 * sysdeps/powerpc/nofpu/soft-supp.h (__sim_exceptions)
1398 (__sim_disabled_exceptions, __sim_round_mode): Use
1400 * sysdeps/powerpc/soft-fp/sfp-machine.h (__sim_exceptions)
1401 (__sim_disabled_exceptions, __sim_round_mode): Likewise.
1403 2004-01-16 Ulrich Drepper <drepper@redhat.com>
1405 * elf/elf.h: Define PT_IA_64_HP_OPT_ANOT, PT_IA_64_HP_HSL_ANOT, and
1408 2004-01-16 Richard Henderson <rth@redhat.com>
1410 * include/unistd.h (__libc_enable_secure): Mark attribute_relro.
1411 (__libc_enable_secure_internal): Likewise.
1413 * elf/dl-load.c: Don't declare __libc_stack_end.
1414 * sysdeps/generic/libc-start.c: Likewise.
1415 * sysdeps/unix/sysv/linux/dl-execstack.c: Likewise.
1416 * sysdeps/generic/segfault.c: Likewise. Include ldsodefs.h.
1417 * sysdeps/generic/backtrace.c: Likewise.
1419 2004-01-15 Ulrich Drepper <drepper@redhat.com>
1421 * Versions.def: Add GLIBC_2.3.4.
1423 2004-01-15 Richard Henderson <rth@redhat.com>
1425 * sysdeps/unix/alpha/sysdep.h: Revert last change.
1427 2004-01-15 Richard Henderson <rth@redhat.com>
1429 * sysdeps/alpha/dl-machine.h (RTLD_START): Use _dl_argv_internal.
1431 * sysdeps/unix/alpha/sysdep.h [PIC] (SYSCALL_ERROR_HANDLER): Use
1434 2004-01-15 Richard Henderson <rth@redhat.com>
1436 * sysdeps/unix/sysv/linux/alpha/Makefile [stdlib]: Process
1437 ucontext-offsets.sym.
1438 * sysdeps/unix/sysv/linux/alpha/getcontext.S: New file.
1439 * sysdeps/unix/sysv/linux/alpha/makecontext.S: New file.
1440 * sysdeps/unix/sysv/linux/alpha/setcontext.S: New file.
1441 * sysdeps/unix/sysv/linux/alpha/swapcontext.S: New file.
1442 * sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym: New file.
1444 2004-01-15 Richard Henderson <rth@redhat.com>
1446 * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Prefix stubs with
1447 __syscall_, move nop inside, adjust users by +4.
1449 2004-01-14 Steven Munroe <sjmunroe@us.ibm.com>
1451 * include/libc-symbols.h [HAVE_ASM_GLOBAL_DOT_NAME]
1452 (_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed symbols.
1453 (_default_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed
1455 * sysdeps/powerpc/Makefile: Add rtld-global-offsets.sym to
1456 gen-as-const-headers.
1457 * sysdeps/powerpc/elf/rtld-global-offsets.sym: New file.
1458 * sysdeps/powerpc/sysdep.h: Define v# symbols for vector registers.
1459 Define PPC_FEATURE_* masks for Aux Vector AT_HWCAP.
1460 * sysdeps/unix/sysv/linux/kernel-features.h
1461 (__ASSUME_SWAPCONTEXT_SYSCALL): Define for PPC and 2.6.0 kernels.
1462 * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h [!__WORDSIZE == 32]:
1463 Declare mcontext_t inline and include altivec state for 64-bit.
1464 * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
1465 versions for setcontext, getcontext, and swapcontext.
1467 * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
1468 versions for setcontext, getcontext, swapcontext, and makecontext.
1469 * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
1470 (__getcontext): Upgrade to save Altivec regs and version GLIBC_2_3_4.
1471 [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_getcontext):
1472 Compatible with GLIBC_2.3.3 release.
1473 * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
1474 (__makecontext): Use parm save area instead of compiler_dw to hold
1476 * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
1477 (__setcontext): Upgrade to restore Altivec regs and version
1479 [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_setcontext):
1480 Compatible with GLIBC_2.3.3 release.
1481 * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
1482 (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
1483 [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_swapcontext):
1484 Compatible with GLIBC_2.3.3 release.
1485 * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h
1486 (SIGCONTEXT_V_REGS_PTR, SIGCONTEXT_V_RESERVE): Defined.
1488 2004-01-12 Steven Munroe <sjmunroe@us.ibm.com>
1490 * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Add GLIBC_2.3.4
1491 versions for setcontext, getcontext, swapcontext, and makecontext.
1492 * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
1493 (__getcontext): Upgrade to save Altivec regs and version GLIBC_2_3_4.
1494 [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_getcontext):
1495 Compatible with GLIBC_2.3.3 release.
1496 * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
1497 (__makecontext): Upgrade to align for Altivec regs and version
1499 [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_makecontext):
1500 Compatible with GLIBC_2.3.3 release.
1501 * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
1502 (__setcontext): Upgrade to restore Altivec regs and version
1504 [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_setcontext):
1505 Compatible with GLIBC_2.3.3 release.
1506 * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
1507 (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
1508 [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)]
1509 (__novec_swapcontext): Compatible with GLIBC_2.3.3 release.
1510 * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h:
1511 (_UC_VSCR, _UC_VRSAVE): Define.
1512 (_FRAME_BACKCHAIN, _FRAME_LR_SAVE,_FRAME_PARM_SAVE1,_FRAME_PARM_SAVE2,
1513 _FRAME_PARM_SAVE3, _FRAME_PARM_SAVE4): Defined.
1515 2004-01-15 Ulrich Drepper <drepper@redhat.com>
1517 * elf/rtld.c: Handle platforms with HP_TIMING_NONAVAIL defined.
1519 2004-01-16 Alfred M. Szmidt <ams@kemisten.nu>
1521 * sysdeps/generic/dl-execstack.c (_dl_make_stack_executable): Adjust
1524 2004-01-15 Ulrich Drepper <drepper@redhat.com>
1526 * elf/elf.h: Fix typo in comment.
1528 * sysdeps/generic/dl-sysdep.c: Initialize __libc_stack_end.
1529 * elf/rtld.c: Initialize _dl_argv to allow aliasing.
1531 * resolv/resolv.h: Add RES_USEBSTRING.
1532 * resolv/res_debug.c (p_option): Add handling for RES_USE_INET6,
1533 RES_ROTATE, RES_NOCHECKNAME, and RES_USEBSTRING.
1534 * resolv/res_init.c (res_setioptions): Recognize ip6-bytestring.
1535 * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Only perform
1536 bytestring IPv6 lookup with RES_USEBSTRING option is selected.
1537 Otherwise use the two nibble formats.
1539 2004-01-14 Ulrich Drepper <drepper@redhat.com>
1541 * configure.in: Define HAVE_Z_RELRO if the linker supports -z relro.
1542 * config.h.in: Add entry for HAVE_Z_RELRO.
1543 * include/libc-symbols.h: Define attribute_relro.
1544 * elf/dl-load.c: Add attribute_relro to env_path_list, capstr, ncapstr,
1545 max_capstrlen, and max_dirnamelen definitions.
1546 * elf/rtld.c: Add attribute_relro to _dl_argc, _dl_argv, _dl_skip_args,
1547 load_time, start_time, library_path, preloadlist, version_info,
1549 Remove rtld_total_time. Make it a local variable. Pass pointer to
1550 it to print_statistics. Change print_statistics accordingly.
1551 * sysdeps/generic/dl-sysdep.c: Add attribute_relro to _dl_auxv. Use
1552 attribute_relro instead of explicitly assigning variable to the
1553 .data.rel.ro section for __libc_enable_secure and __libc_stack_end.
1554 * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end, _dl_argc,
1555 _dl_argv, _dl_argv_internal with attribute_relro.
1557 2004-01-13 Segher Boessenkool <boessen@de.ibm.com>
1559 * Makerules (gen-as-const): Don't silently continue on failure.
1561 2004-01-14 Steven Munroe <sjmunroe@us.ibm.com>
1563 * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
1564 rtld_hidden_data_def.
1566 2004-01-14 Ulrich Drepper <drepper@redhat.com>
1568 * libio/libio.h: Add const to function tables types.
1569 * libio/libioP.h: Likewise.
1570 * login/utmp-private.h: Likewise.
1571 * libio/fileops.c: Add const to jump table variable definition.
1572 * libio/genops.c: Likewise.
1573 * libio/iofopncook.c: Likewise.
1574 * libio/iopopen.c: Likewise.
1575 * libio/memstream.c: Likewise.
1576 * libio/obprintf.c: Likewise.
1577 * libio/oldfileops.c: Likewise.
1578 * libio/oldiopopen.c: Likewise.
1579 * libio/strops.c: Likewise.
1580 * libio/vsnprintf.c: Likewise.
1581 * libio/vswprintf.c: Likewise.
1582 * libio/wfileops.c: Likewise.
1583 * libio/wstrops.c: Likewise.
1584 * login/getutent_r.c: Likewise.
1585 * login/getutid_r.c Likewise.
1586 * login/getutline_r.c: Likewise.
1587 * sysdeps/generic/utmp_file.c: Likewise.
1589 2004-01-09 Bruno Haible <bruno@clisp.org>
1591 * intl/gmo.h (MO_REVISION_NUMBER_WITH_SYSDEP_I): New definition.
1592 * intl/loadmsgcat.c (get_sysdep_segment_value): Handle "I".
1593 (_nl_load_domain): Treat major revision 1 like major revision 0.
1595 2004-01-11 Bruno Haible <bruno@clisp.org>
1597 * stdio-common/vfprintf.c (vfprintf): Disallow the 'I' flag after
1598 width or precision has been seen.
1600 2004-01-08 Bruno Haible <bruno@clisp.org>
1602 * intl/loadmsgcat.c (_nl_load_domain): When a string pair uses a system
1603 dependent segment not known to this version of the library, ignore
1604 the string pair instead of crashing.
1606 2004-01-13 Ulrich Drepper <drepper@redhat.com>
1608 * configure.in: Rewrite test to give gcc to clean up after itself.
1609 Patch by Greg Schafer.
1611 * posix/regex.c: Support crappy compilers and platforms which have
1612 problems with alloca.
1613 * posix/regex_internal.h: Likewise.
1614 Patch by Paolo Bonzini.
1616 2004-01-12 Paolo Bonzini <bonzini@gnu.org>
1618 * posix/regcomp.c [_LIBC && !RE_ENABLE_I18N]:
1619 Drop code to support this, it is never true.
1620 (build_range_exp) [!_LIBC]: Do not create a range
1621 in MBCSET for a single-byte character set.
1622 (build_range_exp) [_LIBC]: Do not create a range
1623 in MBCSET for a single-byte character set without
1625 (init_dfa): Do not conditionalize on _LIBC, it
1626 just makes the code less clear.
1627 (parse_bracket_exp): Use NON_MATCH variable in
1628 addition to "mbcset->non_match", not as an
1630 (build_charclass_op): rename NOT parameter to
1631 NON_MATCH, use it instead of declaring a variable.
1632 (parse_bracket_exp) [!_LIBC]: Pass NULL for MBCSET
1633 if the character set is single-byte.
1635 2004-01-14 Jakub Jelinek <jakub@redhat.com>
1637 * posix/regcomp.c (peek_token_bracket): Check remaining
1638 string length before re_string_peek_byte (x, 1).
1639 (parse_bracket_symbol): Likewise.
1640 * posix/regex_internal.h (re_string_is_single_byte_char): Return
1641 true at last byte in the string.
1642 * posix/bug-regex22.c (main): Add new test.
1644 2004-01-13 Ulrich Drepper <drepper@redhat.com>
1646 * sysdeps/generic/dl-sysdep.c: Move __libc_enable_secure into
1649 * sysdeps/x86_64/dl-machine.h: Include <tls.h>.
1651 * elf/rtld.c (_dl_start_final): Initialze __libc_stack_end here.
1652 * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
1653 rtld_hidden_def and move into .data.rel.ro section.
1654 * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end with
1656 * sysdeps/generic/libc-start.c: Only initialize __libc_stack_end here
1659 2004-01-13 Richard Henderson <rth@redhat.com>
1661 * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Fix typo.
1663 2004-01-13 Ulrich Drepper <drepper@redhat.com>
1665 * sysdeps/unix/sysv/linux/dl-execstack.c
1666 (_dl_make_stack_executable): Move common code in front. Use
1669 * sysdeps/unix/sysv/linux/dl-execstack.c: Change interface. Add
1670 challenge for caller.
1671 * sysdeps/generic/ldsodefs.h: Change declaration and type of hook
1672 member in rtld_global appropriately.
1673 * elf/dl-support.c: Likewise.
1674 * elf/dl-load.c (_dl_map_object_from_fd): Take additional paramter.
1675 Pass it on to the changed function.
1676 (_dl_map_object): Pass new parameter to _dl_map_object_from_fd.
1678 2004-01-13 Richard Henderson <rth@redhat.com>
1680 * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_xxx_8_int):
1681 Cast old up to uint64_t before back down to inner width.
1682 (__arch_compare_and_exchange_xxx_16_int): Likewise.
1683 (__arch_compare_and_exchange_xxx_32_int): Likewise.
1684 (__arch_compare_and_exchange_xxx_64_int): Likewise.
1685 (__arch_compare_and_exchange_val_8_int): Cast result to
1686 the type of the memory.
1687 (__arch_compare_and_exchange_val_16_int): Likewise.
1688 (__arch_compare_and_exchange_val_32_int): Likewise.
1689 (__arch_compare_and_exchange_val_64_int): Likewise.
1690 (atomic_compare_and_exchange_bool_acq): Use __atomic_bool_bysize.
1691 (atomic_compare_and_exchange_bool_rel): Likewise.
1693 * sysdeps/unix/alpha/sysdep.h: Select inline_syscall_r0_asm
1694 based on HAVE___THREAD instead of USE_TLS.
1696 * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIMEX32): New.
1697 (__adjtimex_tv64): Use it.
1699 * sysdeps/unix/sysv/linux/alpha/semctl.c (__new_semctl): Cast
1700 to void* rather than directly to the compatibility structure type.
1701 * sysdeps/unix/sysv/linux/alpha/shmctl.c (__new_shmctl): Likewise.
1703 * sysdeps/unix/sysv/linux/alpha/sigaction.c (struct kernel_sigaction):
1706 2004-01-13 Richard Henderson <rth@redhat.com>
1708 * Versions.def (libm): Add GLIBC_2.3.3.
1709 * sysdeps/alpha/fpu/Versions: Add __c1_c*f and c*f to GLIBC_2.3.3.
1710 * sysdeps/alpha/fpu/cabsf.c, sysdeps/alpha/fpu/cargf.c,
1711 sysdeps/alpha/fpu/cfloat-compat.h, sysdeps/alpha/fpu/cimagf.c,
1712 sysdeps/alpha/fpu/conjf.c, sysdeps/alpha/fpu/crealf.c,
1713 sysdeps/alpha/fpu/s_cacosf.c, sysdeps/alpha/fpu/s_cacoshf.c,
1714 sysdeps/alpha/fpu/s_casinf.c, sysdeps/alpha/fpu/s_casinhf.c,
1715 sysdeps/alpha/fpu/s_catanf.c, sysdeps/alpha/fpu/s_catanhf.c,
1716 sysdeps/alpha/fpu/s_ccosf.c, sysdeps/alpha/fpu/s_ccoshf.c,
1717 sysdeps/alpha/fpu/s_cexpf.c, sysdeps/alpha/fpu/s_clog10f.c,
1718 sysdeps/alpha/fpu/s_clogf.c, sysdeps/alpha/fpu/s_cpowf.c,
1719 sysdeps/alpha/fpu/s_cprojf.c, sysdeps/alpha/fpu/s_csinf.c,
1720 sysdeps/alpha/fpu/s_csinhf.c, sysdeps/alpha/fpu/s_csqrtf.c,
1721 sysdeps/alpha/fpu/s_ctanf.c, sysdeps/alpha/fpu/s_ctanhf.c: New files.
1722 * sysdeps/alpha/fpu/bits/mathdef.h: Rename complex float
1723 functions for gcc 3.3.
1725 * sysdeps/generic/s_cacosf.c, sysdeps/generic/s_cacoshf.c,
1726 sysdeps/generic/s_casinf.c, sysdeps/generic/s_casinhf.c,
1727 sysdeps/generic/s_catanf.c, sysdeps/generic/s_catanhf.c,
1728 sysdeps/generic/s_ccosf.c, sysdeps/generic/s_ccoshf.c,
1729 sysdeps/generic/s_cexpf.c, sysdeps/generic/s_clog10f.c,
1730 sysdeps/generic/s_clogf.c, sysdeps/generic/s_cpowf.c,
1731 sysdeps/generic/s_cprojf.c, sysdeps/generic/s_csinf.c,
1732 sysdeps/generic/s_csinhf.c, sysdeps/generic/s_csqrtf.c,
1733 sysdeps/generic/s_ctanf.c, sysdeps/generic/s_ctanhf.c: Don't
1734 weak_alias if the function name has been #defined.
1736 * math/cabsf.c: Move ...
1737 * sysdeps/generic/cabsf.c: ... here.
1738 * math/cargf.c: Move ...
1739 * sysdeps/generic/cargf.c: ... here.
1740 * math/cimagf.c: Move ...
1741 * sysdeps/generic/cimagf.c: ... here.
1742 * math/conjf.c: Move ...
1743 * sysdeps/generic/conjf.c: ... here.
1744 * math/crealf.c: Move ...
1745 * sysdeps/generic/crealf.c: ... here.
1747 2004-01-13 Ulrich Drepper <drepper@redhat.com>
1749 * Makeconfig: Define relro-LDFLAGS if have-z-relro==yes. Add it to
1750 LDFLAGS.so and LDFLAGS-rtld.
1751 (+link): Add relro-LDFLAGS.
1752 * Makeconfig (shlib.lds): Place __libc_subfreeres, __libc_atexit, and
1753 __libc_thread_subfreeres sections after .jcr section.
1754 * config.make.in: Add have-z-relro.
1755 * configure.in: Add check for -z relro option.
1756 * include/link.h (struct link_map): Add relro_addr and relro_size
1758 * elf/dl-load.c (_dl_map_object_from_fd): Recognize PT_GNU_RELRO.
1759 * elf/dl-reloc.c (_dl_relocate_object): At the end, make relro
1760 part of loaded segments read-only.
1761 * elf/elf.h: Define PT_GNU_RELRO.
1762 * elf/rtld.c (_dl_start): Recognize PT_GNU_RELRO of ld.so.
1763 (dl_main): Recognize PT_GNU_RELRO of the application. Call
1764 _dl_debug_initialize and initialize l_info[DT_DEBUG] before
1767 2004-01-12 Jakub Jelinek <jakub@redhat.com>
1769 * sysdeps/x86_64/strcspn.S: Fix typo in last patch.
1771 2004-01-11 Andreas Jaeger <aj@suse.de>
1773 * sysdeps/x86_64/__longjmp.S: Add cfi directives.
1775 2004-01-10 Andreas Jaeger <aj@suse.de>
1777 * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Add cfi directives.
1778 * sysdeps/unix/x86_64/sysdep.S (__syscall_error): Likewise.
1779 * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
1780 * sysdeps/x86_64/strcspn.S: Likewise.
1781 * sysdeps/x86_64/strspn.S: Likewise.
1783 2004-01-08 Jakub Jelinek <jakub@redhat.com>
1785 * sysdeps/unix/sysv/linux/x86_64/clone.S (__clone): Add cfi_endproc
1786 right before syscall and cfi_startproc before PSEUDO_END.
1787 Clear %rbp in thread_start.
1789 2004-01-05 Jakub Jelinek <jakub@redhat.com>
1791 * posix/regcomp.c (regcomp): Fix comment typo.
1792 (regfree): Free preg->translate, clear buffer, allocated, fastmap
1793 and translate fields.
1795 * posix/regcomp.c (build_charclass, buld_charclass_op): Change first
1796 argument to unsigned RE_TRANSLATE_TYPE.
1797 * posix/regex_internal.h (re_string_t): Change trans type to
1798 unsigned RE_TRANSLATE_TYPE.
1799 * posix/regex_internal.c (re_string_construct_common): Cast
1800 trans to unsigned RE_TRANSLATE_TYPE.
1801 (re_string_peek_byte_case, re_string_fetch_byte_case): Avoid fast
1802 path if pstr->trans. Never translate the character through
1804 * posix/Makefile (tests): Add bug-regex22.
1805 (bug-regex22-ENV): Set.
1806 * posix/bug-regex22.c: New test.
1808 2004-01-02 Paolo Bonzini <bonzini@gnu.org>
1810 * posix/regex_internal.c (re_node_set_add_intersect,
1811 re_node_set_merge): Rewritten.
1812 (re_node_set_insert, re_node_set_remove_at):
1813 Avoid memmove, we know what direction we should copy and that we
1814 are copying 32-bit words.
1815 (re_node_set_compare): Iterate backwards.
1817 2003-12-30 Paul Eggert <eggert@twinsun.com>
1819 * time/mktime.c (verify): New macro.
1820 (time_t_is_integer, twos_complement_arithmetic,
1821 right_shift_propagates_sign, base_year_is_a_multiple_of_100,
1822 C99_integer_division): Document these longstanding assumptions in the
1823 code, and verify them at compile-time.
1825 2004-01-02 Jakub Jelinek <jakub@redhat.com>
1827 * posix/regex_internal.h (re_match_context_t): Add dfa member.
1828 * posix/regexec.c (match_ctx_free_subtops, search_cur_bkref_entry,
1829 match_ctx_add_sublast, sift_ctx_init, acquire_init_state_context,
1830 prune_impossible_nodes, check_halt_state_context, proceed_next_node,
1831 sift_states_backward, update_cur_sifted_state, check_dst_limits,
1832 check_dst_limits_calc_pos, sift_states_bkref, transit_state,
1833 check_subexp_matching_top, transit_state_sb, transit_state_mb,
1834 transit_state_bkref, get_subexp, get_subexp_sub, check_arrival,
1835 check_arrival_add_next_nodes, expand_bkref_cache, check_node_accept):
1836 Remove dfa parameter. Get dfa from mctx. Adjust callers.
1837 (re_search_internal): Initialize mctx.dfa.
1839 * posix/regex_internal.c (re_node_set_insert): Remove unused variables.
1841 * posix/regex_internal.h (re_dfa_t): Add syntax field.
1842 * posix/regcomp.c (parse): Initialize dfa->syntax.
1843 * posix/regexec.c (acquire_init_state_context,
1844 prune_impossible_nodes, check_matching, check_halt_state_context,
1845 proceed_next_node, sift_states_iter_mb, sift_states_backward,
1846 update_cur_sifted_state, sift_states_bkref, transit_state,
1847 transit_state_sb, transit_state_mb, transit_state_bkref,
1848 get_subexp, get_subexp_sub, check_arrival, expand_bkref_cache,
1849 build_trtable): Remove preg argument, add dfa argument instead
1850 and remove dfa = preg->buffer initialization in the body.
1852 (check_node_accept_bytes, group_nodes_into_DFAstates,
1853 check_node_accept): Likewise. Use dfa->syntax instead of
1855 (check_arrival_add_next_nodes): Remove preg argument.
1857 * posix/regex_internal.h (re_match_context_t): Make input
1858 re_string_t instead of a pointer to it.
1859 * posix/regex_internal.c (re_string_construct_common): Don't clear
1861 (re_string_construct): ... but only here.
1862 * posix/regexec.c (match_ctx_init): Remove input argument. Don't
1863 initialize fields to zero.
1864 (re_search_internal): Move input into mctx.input.
1865 (acquire_init_state_context, check_matching,
1866 check_halt_state_context, proceed_next_node,
1867 clean_state_log_if_needed, sift_states_bkref, sift_states_iter_mb,
1868 transit_state, transit_state_sb, transit_state_mb,
1869 transit_state_bkref, get_subexp, check_arrival,
1870 check_arrival_add_next_nodes, check_node_accept, extend_buffers):
1871 Change mctx->input into &mctx->input and mctx->input->field into
1874 2004-01-02 Jakub Jelinek <jakub@redhat.com>
1875 Paolo Bonzini <bonzini@gnu.org>
1877 * posix/regex_internal.h (re_const_bitset_ptr_t): New type.
1878 (re_string_t): Add newline_anchor, word_char and word_ops_used fields.
1879 (re_dfa_t): Change word_char type to bitset. Add word_ops_used field.
1880 (re_string_context_at, re_string_reconstruct): Remove last argument.
1881 * posix/regex_internal.c (re_string_allocate): Initialize
1882 pstr->word_char and pstr->word_ops_used.
1883 (re_string_context_at): Remove newline_anchor argument.
1884 Use input->newline_anchor instead, swap && conditions.
1885 Only use IS_WIDE_WORD_CHAR if input->word_ops_used != 0.
1886 Use input->word_char bitmap instead of IS_WORD_CHAR.
1887 (re_string_reconstruct): Likewise.
1888 Adjust re_string_context_at caller.
1889 * posix/regexec.c (acquire_init_state_context,
1890 check_halt_state_context, transit_state, transit_state_sb,
1891 transit_state_mb, transit_state_bkref, check_arrival,
1892 check_node_accept): Adjust re_string_context_at and
1893 re_string_reconstruct callers.
1894 (re_search_internal): Likewise. Set input.newline_anchor.
1895 (build_trtable): Use dfa->word_char bitmap instead of IS_WORD_CHAR.
1896 * posix/regcomp.c (init_word_char): Change return type to void.
1897 Set dfa->word_ops_used.
1898 (free_dfa_content): Don't free dfa->word_char.
1899 (parse_expression): Remove error handling for init_word_char.
1901 2004-01-01 Paolo Bonzini <bonzini@gnu.org>
1903 * posix/regex_internal.h (re_dfastate_t): Fix size of the CONTEXT
1906 * posix/regex_internal.c (re_node_set_insert): Rewrite.
1908 2004-01-01 Ulrich Drepper <drepper@redhat.com>
1910 * posix/getconf.c: Update copyright year.
1911 * nss/getent.c: Likewise.
1912 * nscd/nscd_nischeck.c: Likewise.
1913 * iconv/iconvconfig.c: Likewise.
1914 * iconv/iconv_prog.c: Likewise.
1915 * elf/ldconfig.c: Likewise.
1916 * catgets/gencat.c: Likewise.
1917 * csu/version.c: Likewise.
1918 * elf/ldd.bash.in: Likewise.
1919 * elf/sprof.c (print_version): Likewise.
1920 * locale/programs/locale.c: Likewise.
1921 * locale/programs/localedef.c: Likewise.
1922 * nscd/nscd.c (print_version): Likewise.
1923 * debug/xtrace.sh: Likewise.
1924 * malloc/memusage.sh: Likewise.
1925 * malloc/mtrace.pl: Likewise.
1927 2004-01-01 Petter Reinholdtsen <pere@hungry.com>
1929 * stdlib/strfmon.c: Make formatting of left-justified currency
1930 values match the the POSIX standard. When using format string
1931 "[%-14#5.4n]" to print -123.45, the result should be
1932 "[-$ 123.4500 ]", not "[-$123.4500 ]".
1934 2004-01-01 Andreas Jaeger <aj@suse.de>
1936 * resolv/Makefile (generated): New.
1938 2003-12-31 Joseph S. Myers <jsm@polyomino.org.uk>
1940 * CONFORMANCE: Update.
1942 2003-12-30 Paul Eggert <eggert@twinsun.com>
1944 * time/mktime.c: (my_mktime_localtime_r):
1945 Remove. All uses changed to __localtime_r.
1946 (__localtime_r) [!defined _LIBC]: New macro. Include "time_r.h" to
1947 get its implementation.
1948 Fix compile-command to allow for TIME_R_POSIX.
1950 * time/strftime.c (my_strftime_gmtime_r, my_strftime_localtime_r):
1951 Remove. All uses changed to __localtime_r and __gmtime_r.
1952 (__gmtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
1953 Include "time_r.h" to get their implementations.
1955 * time/timegm.c: Allow use in GNU applications outside glibc.
1956 [defined HAVE_CONFIG_H]: Include <config.h>.
1957 [!defined _LIBC]: Include "timegm.h", <time_r.h>.
1958 Define __gmtime_r, and declare __mktime_internal.
1959 (timegm): Define via a prototype, since we can safely assume C89 now.
1961 * time/mktime.c (check_result): Use less-confusing report format.
1962 "long" -> "long int", as per usual GNU style.
1964 Don't loop if the iteration overflows time_t.
1965 Allow a negative step in the iteration.
1967 * time/mktime.c: Assume freestanding C89 or better.
1968 (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove;
1970 (__P): Remove; not used.
1971 (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
1972 (mktime, not_equal_tm, print_tm, check_result, main): Use prototypes.
1973 Prototypes use const * where appropriate.
1974 (main) [DEBUG]: Fix typo in testing code uncovered by above changes,
1975 which caused the testing code to dump core on some hosts.
1977 2003-12-31 Ulrich Drepper <drepper@redhat.com>
1979 * locale/setlocale.c (setlocale): Avoid duplicating locale names
1980 if we can reuse old strings.
1982 * inet/rcmd.c: Provide better error message in case of unknown
1983 host. Remove USE_IN_LIBIO.
1985 * nscd/nscd.init: Updated version, more conforming with current
1986 init file standards.
1988 * nscd/nscd-client.h (_PATH_NSCDPID): Move the file into
1989 /var/run/nscd directory.
1990 (_PATH_NSCDSOCKET): Likewise.
1992 * test-skeleton.c (timeout_handler): Fix error message.
1994 * elf/dl-dst.h (DL_DST_REQUIRED): Avoid the complex operations if
1997 2003-12-30 Jakub Jelinek <jakub@redhat.com>
1999 * posix/regexec.c (get_subexp): Only set bkref_str after the first
2000 loop, use buf + bkref_str_off in the loop instead.
2001 * posix/bug-regex11.c (tests): Add 3 new tests.
2003 * posix/regexec.c (clean_state_log_if_need): Rename to...
2004 (clean_state_log_if_needed): ...this.
2005 (transit_state_mb, get_subexp_sub): Adjust callers.
2007 * sunrpc/pmap_clnt.c (pmap_set): Do CLNT_DESTROY even if CLNT_CALL
2008 failed. Reported by Steve Grubb.
2010 2003-12-29 Ulrich Drepper <drepper@redhat.com>
2012 * elf/elf.h: Add a few definitions from Solaris 9.
2014 2003-12-29 Andreas Schwab <schwab@suse.de>
2016 * stdio-common/Makefile (CFLAGS-errlist.c, CFLAGS-siglist.c): Add
2017 $(fno_unit_at_a_time) to avoid reordering assembler output.
2019 2003-12-29 Jakub Jelinek <jakub@redhat.com>
2021 * posix/regexec.c (re_copy_regs): Revert comment change.
2022 Avoid memory leak if realloc fails.
2023 (proceed_next_node): Return -2 if re_node_set_insert fails.
2024 Return -2 if push_fail_stack fails.
2025 (push_fail_stack): Change fs->alloc only after successful realloc.
2026 (pop_fail_stack): Formatting.
2027 (set_regs): If proceed_next_node returns -2, free eps_via_nodes and fs.
2028 (check_arrival_add_next_nodes): Merge identical statements
2031 * signal/Makefile (tests): Add tst-raise.
2032 * signal/tst-raise.c: New test.
2034 2003-12-28 Ulrich Drepper <drepper@redhat.com>
2036 * posix/regcomp.c (mark_opt_subexp_iter): Declare IDX as int.
2038 * posix/regexec.c (re_copy_regs): Fix testing for failed allocation.
2039 (push_fail_stack): Add missing check for failed memory allocation.
2041 * libio/libio.h: Use __builtin_expect in _IO_getc_unlocked,
2042 _IO_peekc_unlocked, _IO_putc_unlocked, _IO_getwc_unlocked, and
2045 2003-12-28 Andreas Jaeger <aj@suse.de>
2047 * sysdeps/ieee754/dbl-64/e_j0.c (__ieee754_y0): Raise only
2048 overflow for 0 as argument. Raise Invalid exception for negative args.
2049 * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_yn): Likewise.
2050 * sysdeps/ieee754/dbl-64/e_j1.c (__ieee754_y0): Likewise.
2051 * sysdeps/ieee754/ldb-128/e_jnl.c (__ieee754_ynl): Likewise.
2052 * sysdeps/ieee754/ldb-128/e_j0l.c (__ieee754_y0l): Likewise.
2053 * sysdeps/ieee754/ldb-128/e_j1l.c (__ieee754_y1l): Likewise.
2054 * sysdeps/ieee754/ldb-96/e_jnl.c (__ieee754_ynl): Likewise.
2055 * sysdeps/ieee754/ldb-96/e_j0l.c (__ieee754_y0l): Likewise.
2056 * sysdeps/ieee754/ldb-96/e_j1l.c (__ieee754_y1l): Likewise.
2057 * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise.
2058 * sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Likewise.
2059 * sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Likewise.
2061 * math/libm-test.inc (yn_test): Expect invalid exception for
2063 (y0_test): Likewise.
2064 (y1_test): Likewise.
2066 * sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Do not raise
2067 execptions for exp(NaN).
2069 2003-12-23 Paolo Bonzini <bonzini@gnu.org>
2071 * posix/regex_internal.c (re_dfa_add_node): Initialize opt_subexp.
2072 * posix/regex_internal.h (re_token_type_t): Put OP_DUP_PLUS
2073 among the tokens, rather than among the epsilon-transiting nodes.
2074 (re_token_t): Add the opt_subexp flag.
2075 * posix/regcomp.c (optimize_utf8, calc_first,
2076 calc_next, calc_epsdest): Don't consider OP_DUP_PLUS.
2077 (mark_opt_subexp, mark_opt_subexp_iter): New functions.
2078 (parse_dup_op): Mostly rewritten, lowering OP_DUP_PLUS to
2079 OP_DUP_ASTERISK and marking optional subexpressions
2080 as such using mark_opt_subexp.
2081 * posix/regexec.c (set_regs): Initialize PREV_INDEX_MATCH
2082 and pass it to update_regs.
2083 (update_regs): Use the PREV_INDEX_MATCH parameter, together
2084 with the opt_subexp flag, in order to discard a final empty
2085 match of a repeated subexpression.
2086 * posix/BOOST.tests: Adjust test vectors.
2087 * posix/PCRE.tests: Likewise.
2088 * posix/rxspencer/tests: Likewise.
2090 2000-05-22 Jakub Jelinek <jakub@redhat.com>
2092 * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Avoid using ?:
2093 with omitted middle operand.
2095 2003-12-22 Jakub Jelinek <jakub@redhat.com>
2097 * posix/regcomp.c: Remove C99-ism.
2098 * posix/tst-rxspencer.c: Likewise.
2099 Based on a patch by Alex Davis <alex14641@yahoo.com>.
2101 2003-12-17 Paolo Bonzini <bonzini@gnu.org>
2103 * posix/regex_internal.h [!_LIBC] (internal_function): Define.
2104 (re_string_allocate, re_string_construct, re_string_reconstruct,
2105 re_string_realloc_buffers, build_wcs_buffer,
2106 build_wcs_upper_buffer, build_upper_buffer,
2107 re_string_translate_buffer, re_string_destruct,
2108 re_string_elem_size_at, re_string_char_size_at,
2109 re_string_wchar_at, re_string_context_at,
2110 re_node_set_alloc, re_node_set_init_1
2111 re_node_set_init_2, re_node_set_init_copy,
2112 re_node_set_add_intersect, re_node_set_init_union,
2113 re_node_set_merge, re_node_set_insert
2114 re_node_set_compare, re_node_set_contains
2115 re_node_set_remove_at, re_dfa_add_node,
2116 re_acquire_state, re_acquire_state_context,
2117 free_state): Add internal_function to declaration.
2119 * posix/regexec.c (match_ctx_init, match_ctx_clean,
2120 match_ctx_free, match_ctx_free_subtops,
2121 match_ctx_add_entry, search_cur_bkref_entry,
2122 match_ctx_clear_flag, match_ctx_add_subtop,
2123 match_ctx_add_sublast, sift_ctx_init,
2124 re_search_internal, re_search_2_stub, re_search_stub,
2125 re_copy_regs, acquire_init_state_context,
2126 prune_impossible_nodes, check_matching,
2127 check_halt_node_context, check_halt_state_context
2128 update_regs, proceed_next_node, push_fail_stack,
2129 pop_fail_stack, set_regs, free_fail_stack_return,
2130 sift_states_iter_mb, sift_states_backward
2131 update_cur_sifted_state, add_epsilon_src_nodes,
2132 sub_epsilon_src_nodes, check_dst_limits,
2133 check_dst_limits_calc_pos, check_subexp_limits,
2134 sift_states_bkref, clean_state_log_if_need,
2135 merge_state_array, transit_state,
2136 check_subexp_matching_top, transit_state_sb,
2137 transit_state_mb, transit_state_bkref,
2138 get_subexp, get_subexp_sub, find_subexp_node,
2139 check_arrival, check_arrival_add_next_nodes,
2140 find_collation_sequence_value, check_arrival_expand_ecl,
2141 check_arrival_expand_ecl_sub, expand_bkref_cache,
2142 build_trtable, check_node_accept_bytes, extend_buffers,
2143 group_nodes_into_DFAstates, check_node_accept): Likewise.
2145 * posix/regex_internal.c (re_string_construct_common,
2146 re_string_skip_chars, create_newstate_common,
2147 register_state, create_ci_newstate, create_cd_newstate,
2148 calc_state_hash): Likewise.
2149 (re_string_peek_byte_case, re_fetch_byte_case): Change
2150 declaration from ANSI to K&R.
2152 2003-12-16 Paolo Bonzini <bonzini@gnu.org>
2154 * posix/regexec.c (build_trtable): Don't allocate the trtable
2155 until state->word_trtable is known. Don't hardcode UINT_BITS
2156 iterations on each bitset item.
2158 2003-12-22 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
2160 * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init):
2161 Initialize REF before passing it to _dl_lookup_symbol.
2163 2003-12-21 Roland McGrath <roland@frob.com>
2165 * sysdeps/mach/hurd/dl-sysdep.c (_exit): Define with attribute_hidden.
2167 2003-12-21 Jakub Jelinek <jakub@redhat.com>
2169 * posix/regcomp.c (duplicate_node, duplicate_node_closure): Revert
2171 * posix/regexec.c (group_nodes_into_DFAstates): For CHARACTER with
2172 NEXT_{,NOT}WORD_CONSTRAINT check word_char bit.
2173 * posix/bug-regex19.c (tests): Add new tests.
2175 * posix/regexec.c (check_dst_limits_calc_pos): Fix formatting.
2177 * posix/regcomp.c (parse_dup_op): Return NULL if dup_elem is NULL,
2178 after checking syntax. Optimize.
2179 (calc_first): Fix comment.
2180 * posix/bug-regex13.c (tests): Add new tests.
2182 2003-12-21 Roland McGrath <roland@redhat.com>
2184 * manual/arith.texi (Parsing of Integers): Typo fix.
2186 2003-12-20 Roland McGrath <roland@frob.com>
2188 * sysdeps/generic/ifreq.c (__ifreq) [_HAVE_SA_LEN]: Fix typo:
2189 add missing dereference of IFREQS before counting loop.
2191 2003-12-21 Andreas Schwab <schwab@suse.de>
2193 * sysdeps/m68k/m68020/bits/atomic.h: Avoid matching memory
2196 2003-12-20 Ulrich Drepper <drepper@redhat.com>
2198 * elf/rtld.c (dl_main): Optimize order of subexpressions in if().
2200 2003-12-18 Ulrich Drepper <drepper@redhat.com>
2202 * stdio-common/printf_fp.c: Add support to use alternative decimal
2204 * stdio-common/vfprintf.c (vfprintf): Pass use_outdigits flags to
2205 __printf_fp. Patch by Hamed Malek <hamed@bamdad.org>.
2207 2003-12-18 Carlos O'Donell <carlos@baldric.uwo.ca>
2209 * sysdeps/unix/sysv/linux/hppa/clone.S (__clone) [PIC]: Save PIC,
2210 reload PIC if we need to call __syscall_error, cleanup asm.
2212 2003-12-17 Carlos O'Donell <carlos@baldric.uwo.ca>
2214 * sysdeps/hppa/fpu/fclrexcpt.c (feclearexcept): Right shift
2215 FE_ALL_EXCEPT before complimenting.
2216 * sysdeps/hppa/fpu/fegetenv.c (fegetenv): Use asm 'ma,' completer,
2217 and gcc '+r' constraint.
2218 * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Likewise.
2219 * sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
2220 * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Read raised
2221 exception bits, OR with envp, pass to fesetenv.
2222 * sysdeps/hppa/fpu/fraiseexcpt.c (feraiseexcept): Add delayed
2223 exception flushing, FE_UNDERFLOW is DBL_MIN/3.0, FE_INEXACT is
2224 triggered by M_PI/69.69 converted to single precision.
2225 * sysdeps/hppa/fpu/fsetexcptflg.c (fesetexceptflag): Set enable
2226 bits not raised exception bits.
2228 * sysdeps/hppa/Makefile: Add dl-symaddr and dl-fptr to the
2229 correct build strings.
2230 * sysdeps/hppa/dl-fptr.h: New file.
2231 * sysdeps/hppa/dl-fptr.c: Removed.
2232 * sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Use _dl_make_ftpr,
2233 remove const qualifier for map.
2234 (_dl_function_address): Removed.
2235 * sysdeps/hppa/dl-lookupcfg.h: DL_LOOKUP_ADDRESS must clear
2236 PLABEL32 bits, define DL_AUTO_FUNCTION_ADDRESS and
2237 DL_STATIC_FUNCTION_ADDRESS, DL_DT_INIT_ADDRESS and
2238 DL_DT_FINI_ADDRESS use the previous two macros.
2240 2003-12-17 Jakub Jelinek <jakub@redhat.com>
2242 * malloc/mtrace.c (tr_old_memalign_hook): New variable.
2243 (tr_memalignhook): New function.
2244 (mtrace): Register tr_memalignhook.
2245 (muntrace): Deregister tr_memalignhook.
2246 * malloc/malloc.c (__posix_memalign): If __memalign_hook != NULL,
2247 call it directly instead of memalign_internal.
2249 2003-12-17 Ulrich Drepper <drepper@redhat.com>
2251 * misc/mntent_r.c: Change encoding to match recently changed decoder.
2252 Patch by Alexander Achenbach <xela@slit.de>.
2254 2003-12-16 Steven Munroe <sjmunroe@us.ibm.com>
2256 * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct definition of
2259 2003-12-16 Steven Munroe <sjmunroe@us.ibm.com>
2261 * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [!__PPC64_ELF_H]: Extend
2262 conditional to include typedef elf_vrreg_t.
2264 2003-12-17 Paolo Bonzini <bonzini@gnu.org>
2266 * posix/regexec.c (re_search_internal): Limit search to the
2267 beginning of the buffer if the initial states are empty for
2268 contexts that do not include CONTEXT_BEGBUF or, if
2269 !preg->newline_anchor, that do not include any one of
2270 CONTEXT_BEGBUF and CONTEXT_NEWLINE.
2272 2003-12-17 Andreas Jaeger <aj@suse.de>
2274 * sysdeps/generic/system.c (__libc_system): Fix typo, reported by
2275 Kevin Pedretti <pedretti@ieee.org>.
2277 2003-12-17 Ulrich Drepper <drepper@redhat.com>
2279 * elf/rtld.c: Don't use strong_alias to define _rtld_local. This
2280 removes the visibility attributes which might be defined earlier
2281 for some gcc versions. Instead spell out what strong_alias does
2282 plus the visibility.
2284 2003-12-16 Petter Reinholdtsen <pere@hungry.com>
2286 * posix/regex_internal.h: Make sure the regex code compile
2287 with non-GCC compilers by hiding attributes.
2289 2003-12-16 Jakub Jelinek <jakub@redhat.com>
2290 Paolo Bonzini <bonzini@gnu.org>
2292 * posix/regexec.c (group_nodes_into_DFAstates): Never produce
2293 dests_ch items that are empty.
2295 2003-12-14 Paolo Bonzini <bonzini@gnu.org>
2297 * posix/regexec.c (check_arrival): Remove duplicate test.
2299 2003-12-15 Ulrich Drepper <drepper@redhat.com>
2301 * posix/regcomp.c: Make !RE_ENABLE_I18N work again.
2302 * posix/regex_internal.c: Likewise.
2303 * posix/regexec.c: Likewise.
2304 Patch by Paolo Bonzini.
2306 2003-12-14 Paolo Bonzini <bonzini@gnu.org>
2308 * posix/regex_internal.c (re_acquire_state_context):
2309 Compare the node sets after all the other comparisons.
2311 2003-12-13 Paolo Bonzini <bonzini@gnu.org>
2313 * posix/regexec.c (find_subexp_node, check_arrival,
2314 check_arrival_add_next_nodes, check_arrival_expand_ecl,
2315 check_arrival_expand_ecl_sub, expand_bkref_cache):
2316 Rename the FL_OPEN parameter to TYPE, which is either
2317 OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP. Callers adjusted.
2319 2003-12-12 Andreas Jaeger <aj@suse.de>
2321 * sysdeps/unix/sysv/linux/x86_64/syscall.S: Pass also 6th argument
2324 2003-12-11 Ulrich Drepper <drepper@redhat.com>
2326 * sysdeps/unix/sysv/linux/kernel-features.h: Remove __ASSUME_VSYSCALL.
2327 There might always be processes which have no vDSO.
2328 * sysdeps/generic/dl-sysdep.c: Remove __ASSUME_VSYSCALL uses.
2329 * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
2331 2003-12-11 Carlos O'Donell <carlos@baldric.uwo.ca>
2333 * sysdeps/generic/dl-fptr.c (COMPARE_AND_SWAP): Pass new and old
2336 2003-12-01 Jes Sorensen <jes@wildopensource.com>
2338 * rt/tst-clock.c (do_test): Print message when skipping
2339 CLOCK_PROCESS_CPUTIME_ID test.
2341 * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: New file.
2342 Provide CLOCK_PROCESS_CPUTIME_ID only if /proc/sal/itc_drift is 0.
2344 2003-12-02 David Mosberger <davidm@hpl.hp.com>
2346 * sysdeps/ia64/elf/initfini.c: Add unwind info.
2348 * sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
2350 (elf_machine_dynamic): Mark with attributes "unused" and "const".
2351 (elf_machine_runtime_setup): Likewise.
2353 * sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
2354 attribute "always_inline".
2355 * sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
2358 * configure.in: Check whether compiler has libunwind support.
2359 * config.make.in (have-cc-with-libunwind): New variable.
2360 * config.h.in (HAVE_CC_WITH_LIBUNWIND): New macro.
2361 * Makeconfig (gnulib): If have-cc-with-libunwind is "yes", also
2364 2003-11-12 David Mosberger <davidm@hpl.hp.com>
2366 * sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
2367 Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
2368 Likewise for DO_INLINE_SYSCALL. Make INTERNAL_SYSCALL use
2371 * sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
2372 instead of DO_CALL().
2374 * sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
2377 * sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
2378 to take advantage of DO_CALL() macro.
2379 * sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
2380 * sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
2382 * elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
2383 program header. On ia64, the check failed previously because
2384 there are two program headers.
2386 2003-12-10 Andreas Jaeger <aj@suse.de>
2387 Ruediger Oertel <ro@suse.de>
2389 * sysdeps/alpha/fpu/e_sqrt.c: Mark sqrt_data as used.
2391 2003-12-07 Ulrich Drepper <drepper@redhat.com>
2393 * sysdeps/i386/fpu/s_nexttowardf.c: Construct overflow value correctly.
2394 * sysdeps/i386/fpu/s_nexttoward.c: Likewise.
2395 * sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
2396 * sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
2397 * sysdeps/generic/s_nexttowardf.c: Likewise.
2398 * math/Makefile (tests): Add bug-nexttoward.
2399 * math/bug-nexttoward.c: New file.
2401 * sysdeps/generic/s_nextafter.c: Make sure overflow exception is set.
2402 * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
2403 * math/bug-nextafter.c (main): Add tests for overflow and negative
2406 2003-12-06 Ulrich Drepper <drepper@redhat.com>
2408 * math/Makefile (tests): Add bug-nextafter.
2409 * math/bug-nextafter.c: New file.
2410 * sysdeps/generic/s_nextafter.c: Construct overflow value correctly.
2411 * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
2412 * math/libm-test.inc (nextafter_test): Add test for overflow after
2415 2003-12-04 Steven Munroe <sjmunroe@us.ibm.com>
2417 * sysdeps/powerpc/fpu/fgetexcptflg.c (__fegetexceptflag): Add masking
2419 * sysdeps/powerpc/nofpu/fgetexcptflg.c (__fegetexceptflag): Likewise.
2421 2003-12-05 Martin Schwidefsky <schwidefsky@de.ibm.com>
2423 * sysdeps/s390/s390-32/elf/setjmp.S (setjmp, __setjmp): Add END
2425 * sysdeps/s390/s390-64/elf/setjmp.S (setjmp, __setjmp): Likewise.
2426 * sysdeps/s390/s390-32/sysdep.h (ENTRY): Add cfi_startproc directive.
2427 (END): Add cfi_endproc directive.
2428 * sysdeps/s390/s390-64/sysdep.h (ENTRY, END): Likewise.
2429 * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Remove
2430 cfi_startproc and cfi_endproc directive.
2431 * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
2432 * sysdeps/s390/s390-32/addmul_1.S (__mpn_addmul_1): Add CFI directives.
2433 * sysdeps/s390/s390-32/add_n.S (__mpn_add_n): Likewise.
2434 * sysdeps/s390/s390-64/add_n.S (__mpn_add_n): Likewise.
2435 * sysdeps/s390/s390-32/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
2437 * sysdeps/s390/s390-64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
2439 * sysdeps/s390/s390-32/mul_1.S (__mpn_mul_1): Likewise.
2440 * sysdeps/s390/s390-32/sub_n.S (__mpn_sub_n): Likewise.
2441 * sysdeps/s390/s390-64/sub_n.S (__mpn_sub_n): Likewise.
2442 * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S (__mmap64): Likewise.
2443 * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S (__mmap): Likewise.
2444 * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap): Likewise.
2445 * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Likewise.
2446 * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
2447 * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
2449 * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
2451 * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add CFI
2452 directives. Move thread_start out of ENTRY/PSEUDO_END block to
2453 make backchain terminate.
2454 * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
2456 * sysdeps/s390/s390-32/backtrace.c (trace_arg): New structure.
2457 (unwind_backtrace, unwind_getip): New variables.
2458 (init, __backchain_backtrace, backtrace_helper): New functions.
2459 (__backtrace): Use unwind info for backtrace instead of backchain
2460 walking if the unwind functions can be found.
2461 * sysdeps/s390/s390-64/backtrace.c: Likewise.
2463 * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c: New file.
2465 * sysdeps/unix/sysv/linux/s390/sys/procfs.h (ELF_NGREG32): New #define.
2466 (elf_greg_t32, elf_gregset_t32, elf_fpregset_t32): New types.
2467 (elf_prstatus32, elf_prpsinfo32): New structures.
2468 (prgregset32_t, prfpregset32_t, prstatus32_t, prpsinfo32_t): New types.
2470 * scripts/data/c++-types-s390-linux-gnu.data: New file.
2471 * scripts/data/c++-types-s390x-linux-gnu.data: New file.
2473 2003-11-30 Petter Reinholdtsen <pere@hungry.com>
2475 * stdlib/strfmon.c: Correct formatting of international currency
2476 values. The international currency formatting should prefer the
2477 int_* values if they are set for a locale, and use the domestic
2478 values if the int_* values are unset.
2480 2003-12-03 Jakub Jelinek <jakub@redhat.com>
2482 * posix/Makefile (distribute): Add BOOST.tests.
2483 (tests): Add tst-boost, depend on tst-boost-mem.
2484 (generated): Add tst-boost-mem and tst-boost.mtrace.
2485 (tst-boost-ARGS, tst-boost-ENV): Set.
2486 ($(objpfx)tst-boost-mem): New.
2487 * posix/tst-boost.c: New test.
2488 * posix/BOOST.tests: New file.
2490 * posix/Makefile (distribute): Add PCRE.tests.
2491 (tests): Add tst-pcre, depend on tst-pcre-mem.
2492 (generated): Add tst-pcre-mem and tst-pcre.mtrace.
2493 (tst-pcre-ARGS, tst-pcre-ENV): Set.
2494 ($(objpfx)tst-pcre-mem): New.
2495 * posix/tst-pcre.c: New test.
2496 * posix/PCRE.tests: New file.
2498 2003-12-02 Jakub Jelinek <jakub@redhat.com>
2500 * intl/locale.alias: Use nb_NO instead of no_NO for bokm.l.
2502 * sysdeps/powerpc/fpu/libm-test-ulps: Regenerated.
2503 * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2505 2003-12-03 Ulrich Drepper <drepper@redhat.com>
2507 * locale/programs/locarchive.c (enlarge_archive): Print size info
2508 only in verbose mode.
2510 * locale/iso-3166.def: Three letter code of Romania changed.
2512 2003-12-02 Roland McGrath <roland@redhat.com>
2514 * scripts/config.sub: Update from master, timestamp='2003-10-20'.
2515 * scripts/config.guess: Update from master, timestamp='2003-10-20'.
2517 2003-11-30 Andreas Jaeger <aj@suse.de>
2519 * config.make.in (fno-unit-at-a-time): Define.
2521 * configure.in: Add test for -fno-unit-at-a-time.
2524 * csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time).
2525 * locale/Makefile (CFLAGS-loadlocale.c): Likewise.
2527 2003-12-01 Automatic
2529 * version.h (VERSION): Bump to 2.3.3.
2531 2003-11-30 Andreas Jaeger <aj@suse.de>
2533 * stdio-common/vfprintf.c: Do not inline buffered_vfprintf to
2534 decrease stack usage.
2536 2003-11-30 Andreas Schwab <schwab@suse.de>
2538 * sysdeps/unix/sysv/linux/m68k/sysdep.h (PSEUDO_ERRVAL)
2539 (PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
2541 2003-11-29 Ulrich Drepper <drepper@redhat.com>
2543 * misc/mntent_r.c (decode_name): Be compatible with util-linux and
2544 recognize \134 as well.
2546 2003-10-09 H.J. Lu <hongjiu.lu@intel.com>
2548 * sysdeps/ia64/fpu/fraiseexcpt.c: Don't include <asm/fpu.h>.
2550 2003-10-08 H.J. Lu <hongjiu.lu@intel.com>
2552 * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Don't include
2554 (struct ia64_fpreg): New definition.
2556 * sysdeps/unix/sysv/linux/ia64/sys/procfs.h: Don't include
2558 (ELF_NGREG): New #define.
2559 (ELF_NFPREG): Likewise.
2560 (elf_greg_t): New type.
2561 (elf_gregset_t): Likewise.
2562 (elf_fpreg_t): Likewise.
2563 (elf_fpregset_t): Likewise.
2565 2003-10-08 H.J. Lu <hongjiu.lu@intel.com>
2567 * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Include
2569 (__ptrace_request): Add PTRACE_GETREGS and PTRACE_SETREGS.
2570 (pt_all_user_regs): New type.
2572 2003-10-10 Simon Josefsson <jas@extundo.com>
2574 * argp/argp-namefrob.h [!_LIBC]: Include mempcpy.h, strcase.h,
2575 strchrnul.h, strndup.h (from gnulib).
2576 * argp/argp-parse.c: Add alloca.h include snippet verbatim from
2578 * argp/argp-help.c: Replace alloca.h include snipper with verbatim
2579 Autoconf manual version.
2580 * argp/argp.h: Map __restrict to restrict or empty string when
2581 necessary, copied verbatim from posix/regex.h.
2583 2003-10-09 Steven Munroe <sjmunroe@us.ibm.com>
2585 * Makefile: Allow for c++-types-$(config-machine)-$(config-os).data in
2586 addition to c++-types-$(base-machine)-$(config-os).data.
2587 * scripts/data/c++-types-powerpc-linux-gnu.data: New file.
2588 * scripts/data/c++-types-powerpc64-linux-gnu.data: New file.
2590 2003-11-28 Ulrich Drepper <drepper@redhat.com>
2592 * misc/mntent_r.c (decode_name): Fix decoding of tab, add decoding
2594 * manual/sysinfo.texi (mtab): Adjust description accordingly.
2595 Reported by Andries.Brouwer@cwi.nl.
2597 * sysdeps/x86_64/fpu/libm-test-ulps: Add some more minor changes
2598 to compensate other setup.
2600 2003-11-27 Andreas Jaeger <aj@suse.de>
2602 * sysdeps/x86_64/fpu/libm-test-ulps: Add ulps for new atan2 test.
2604 * math/libm-test.inc (atan2_test): Add test that run infinitly.
2605 Reported by "Willus" <etc231etc231@willus.com>.
2607 2003-11-27 Michael Matz <matz@suse.de>
2609 * sysdeps/ieee754/dbl-64/mpsqrt.c (fastiroot): Fix 64-bit problem
2612 2003-11-28 Jakub Jelinek <jakub@redhat.com>
2614 * posix/regexec.c (acquire_init_state_context): Make inline.
2615 Add always_inline attribute.
2616 (check_matching): Add BE macro. Move if (cur_state->has_backref)
2617 into if (dfa->nbackref).
2618 (sift_states_backward): Fix comment.
2619 (transit_state): Add BE macro. Move if (next_state->has_backref)
2620 into if (dfa->nbackref && next_state). Don't check for next_state
2622 * posix/regcomp.c (peek_token): Use opr.ctx_type instead of opr.idx
2624 (parse_expression): Only call init_word_char if word context will be
2627 * posix/bug-regex11.c (tests): Add new tests.
2629 * posix/tst-regex.c: Include getopt.h.
2630 (timing): New variable.
2631 (main): Set timing to 1 if --timing argument is present.
2633 (run_test, run_test_backwards): Handle timing.
2635 2003-11-27 Jakub Jelinek <jakub@redhat.com>
2637 * posix/regex_internal.h (re_string_t): Remove mbs_case field.
2638 Add offsets, valid_raw_len, raw_len, raw_stop, mbs_allocated and
2639 offsets_needed fields. Change icase, is_utf8 and map_notascii
2640 type from int bitfield to unsigned char.
2641 (MBS_ALLOCATED, MBS_CASE_ALLOCATED): Remove.
2642 (build_wcs_upper_buffer): Change prototype to return int.
2643 (re_string_peek_byte_case, re_string_fetch_byte_case): Remove
2644 defines, add prototypes.
2645 * posix/regex_internal.c (re_string_allocate): Don't initialize
2646 stop here. Don't initialize mbs_case. Set valid_raw_len.
2647 Use mbs_allocated instead of MBS_* macros.
2648 (re_string_construct): Don't initialize stop and valid_len here.
2649 Don't initialize mbs_case. Use mbs_allocated instead of MBS_*
2650 macros. Reallocate buffers if build_wcs_upper_buffer converted
2651 too few bytes. Set valid_len to bufs_len only for single byte
2652 no translation and set in that case valid_raw_len as well.
2653 (re_string_realloc_buffers): Reallocate offsets if not NULL.
2654 Use mbs_allocated instead of MBS_ALLOCATED. Don't reallocate
2656 (re_string_construct_common): Initialize raw_len, mbs_allocated,
2658 (build_wcs_buffer): Apply pstr->trans before mbrtowc instead of
2659 after it. Set valid_raw_len. Don't set mbs_case.
2660 (build_wcs_upper_buffer): Return REG_NOERROR or REG_ESPACE.
2661 Only use the fast path if !pstr->offsets_needed. Apply pstr->trans
2662 before mbrtowc instead of after it. If upper case character
2663 uses different number of bytes than lower case, goto to the
2664 slow path. Don't call towupper unnecessarily twice. Set
2665 valid_raw_len as well. Handle in the slow path the case if
2666 lower and upper case use different number of characters.
2668 (re_string_skip_chars): Use valid_raw_len instead of valid_len.
2669 (build_upper_buffer): Don't set mbs_case. Add BE macro. Set
2671 (re_string_translate_buffer): Set mbs instead of mbs_case. Set
2673 (re_string_reconstruct): Use raw_len/raw_stop to initialize
2674 len/stop. Clear valid_raw_len and offsets_needed when clearing
2675 valid_len. Use mbs_allocated instead of MBS_* macros.
2676 Check original offset against valid_raw_len instead of valid_len.
2677 Remove mbs_case handling. Adjust valid_raw_len together with
2678 valid_len. If is_utf8 and looking for tip context, apply
2679 pstr->trans first. If buffers start with partial multi-byte
2680 character, initialize mbs array as well if mbs_allocated.
2681 Check return value of build_wcs_upper_buffer.
2682 (re_string_peek_byte_case): New function.
2683 (re_string_fetch_byte_case): New function.
2684 (re_string_destruct): Use mbs_allocated instead of MBS_ALLOCATED.
2685 Don't free mbs_case. Free offsets.
2686 * posix/regcomp.c (init_dfa): Only check if charset name is UTF-8
2688 * posix/regexec.c (re_search_internal): Initialize input.raw_stop
2689 as well. Use valid_raw_len instead of valid_len when looking
2690 through fastmap. Adjust registers through input.offsets.
2691 (extend_buffers): Allow build_wcs_upper_buffer to fail.
2692 * posix/bug-regex18.c (tests): Enable #ifdefed out tests. Add new
2695 2003-11-26 Jakub Jelinek <jakub@redhat.com>
2697 * posix/regexec.c (check_subexp_limits): Only check close
2698 subexpression limitation if one is found. Formatting.
2699 (sift_states_backward, check_arrival, check_arrival_add_next_nodes):
2701 * posix/bug-regex11.c (tests): Enable most #ifdefed out tests.
2704 2003-11-26 Ulrich Drepper <drepper@redhat.com>
2706 * sysdeps/unix/sysv/linux/kernel-features.h
2707 (__ASSUME_PROT_GROWSUPDOWN): Define for 2.6.1 and up.
2708 * sysdeps/unix/sysv/linux/dl-execstack.c: Omit compatibility code
2709 if __ASSUME_PROT_GROWSUPDOWN is defined.
2711 2003-11-26 Andreas Jaeger <aj@suse.de>
2713 * sysdeps/unix/sysv/linux/dl-execstack.c
2714 (_dl_make_stack_executable): Set dl_stack_flags always for
2717 2003-06-22 Petter Reinholdtsen <pere@hungry.com>
2719 * locale/program/ld-monetary.c: Only check the first three
2720 characters in int_curr_symbol against ISO-4217, to make the
2721 separator character used by a locale independent of the content
2723 * locale/iso-4217.def: Remove the space character from all
2724 currency values to get the new test code in ld-monetary.c working.
2726 2003-11-21 David Mosberger <davidm@hpl.hp.com>
2728 * elf/soinit.c (_fini): Put _fini() in .init_array section if
2729 HAVE_INITFINI_ARRAY is defined.
2731 2003-11-25 Ulrich Drepper <drepper@redhat.com>
2733 * sysdeps/i386/fpu/bits/mathinline.h: Introduce __libc_sqrtl symbol.
2734 Define it appropriately after last change. Use it where __sqrtl
2737 2003-11-25 H.J. Lu <hongjiu.lu@intel.com>
2739 * sysdeps/i386/fpu/bits/mathinline.h (sqrt): Don't inline
2740 sqrt for gcc 3.3 and above.
2742 2003-11-25 Ulrich Drepper <drepper@redhat.com>
2744 * posix/runptests.c (main): Make errors fatal.
2745 * posix/PTESTS: One test in GA135 and GA136 check functionality
2746 which seems not guaranteed.
2748 2003-11-25 Jakub Jelinek <jakub@redhat.com>
2750 * posix/regexec.c (re_search_internal): If prune_impossible_nodes
2751 returned REG_NOMATCH, set match_last to -1. Don't initialize
2752 pmatch[0] needlessly. Fix comment.
2753 (prune_impossible_nodes): Don't segfault on NULL state_log entry.
2754 (set_regs): Fix comment.
2755 * posix/regcomp.c (parse_bracket_exp): Only set has_plural_match
2756 if adding both SIMPLE_BRACKET and COMPLEX_BRACKET.
2757 (build_charclass_op): Set has_plural_match if adding both
2758 SIMPLE_BRACKET and COMPLEX_BRACKET.
2759 * posix/bug-regex11.c (tests): Fix register values for one commented
2760 out test. Add new tests.
2762 * posix/regex_internal.c (re_string_allocate): Make sure init_len
2763 is at least dfa->mb_cur_max.
2764 (re_string_reconstruct): If is_utf8, don't fall back into
2765 re_string_skip_chars just because idx points into a middle of
2766 valid UTF-8 character. Instead, set the wcs bytes which correspond
2767 to the partial character bytes to WEOF.
2768 * posix/regexec.c (re_search_internal): Allocate input.bufs_len + 1
2769 instead of dfa->nodes_len + 1 state_log entries initially.
2770 * posix/bug-regex20.c (main): Uncomment backwards case insensitive
2773 2003-11-24 Jakub Jelinek <jakub@redhat.com>
2775 * posix/regex_internal.h (re_token_t): Add word_char bit. Add
2777 (re_dfa_t): Add sb_char field.
2778 (bitset_mask): New function.
2779 * posix/regcomp.c (free_dfa_content): Free sb_char.
2780 (init_dfa): Don't initialize word_char unnecessarily.
2782 (duplicate_node): Don't duplicate !word_char CHARACTERs with
2783 NEXT_WORD_CONSTRAINT constraint or word_char CHARACTERs with
2784 NEXT_NOTWORD_CONSTRAINT. Return -1 in *new_idx instead.
2785 (duplicate_node_closure): Handle clone_dest == -1 from
2787 (peek_token): Initialize word_char bit.
2788 (parse_expression, parse_dup_op): Add comments.
2789 (parse_bracket_exp): Don't set bitmask bits for multi-byte char
2790 starting bytes here at the beginning. Mask off the bits right
2791 before creating SIMPLE_BRACKET.
2792 (build_charclass_op): Likewise.
2793 * posix/regexec.c (group_nodes_into_DFAstates) <case OP_PERIOD>: Only
2794 set accept bits for single-byte characters.
2795 (group_nodes_into_DFAstates): Don't rely on characters 0 .. 127
2796 being single byte encoded and the rest multi-byte.
2797 * posix/bug-regex19.c (tests): Add new tests.
2798 (do_mb_tests): Initialize t to *test.
2799 (main): Fail even on do_mb_tests errors.
2801 2003-11-23 Ulrich Drepper <drepper@redhat.com>
2803 * posix/regexec.c: Correct several memory allocation problems.
2805 * posix/regex_internal.c: Likewise.
2806 * posix/regcomp.c: Likewise.
2808 * posix/regexec.c: Add const in a number of places.
2809 * posix/regex_internal.h: Make EPSILON_BIT a macro to help
2810 debugging. Its value isn't important.
2812 2003-11-22 Ulrich Drepper <drepper@redhat.com>
2814 * posix/PTESTS: Fix first test of GA143.
2816 2003-11-21 Ulrich Drepper <drepper@redhat.com>
2818 * posix/regex_internal.c (re_dfa_add_node): Add BE, reallocation
2821 * locale/programs/charmap.c (charmap_read): If encoding is found
2822 not ASCII compatible, set enc_not_ascii_compatible.
2823 * locale/programs/charmap.h: Declare enc_not_ascii_compatible.
2824 * locale/programs/ld-ctype.c (ctype_startup): If
2825 enc_not_ascii_compatible is set, initialize to_nonascii to 1.
2827 2003-11-22 Jakub Jelinek <jakub@redhat.com>
2829 * elf/rtld.c (process_envvars): Only honor LD_USE_LOAD_BIAS
2830 if !__libc_enable_secure.
2832 * sysdeps/generic/ldsodefs.h (_dl_use_load_bias): New _rtld_global
2834 * elf/rtld.c (_rtld_global): Initialize _dl_use_load_bias field.
2835 (dl_main): Set GL(dl_use_load_bias) default.
2836 (process_envvars): Set GL(dl_use_load_bias) from LD_USE_LOAD_BIAS.
2837 Add EXTRA_LD_ENVVARS_13.
2838 * elf/dl-support.c (_dl_use_load_bias): New variable.
2839 * elf/dl-load.c (_dl_map_object_from_fd): Mask c->mapstart
2840 with GL(dl_use_load_bias).
2841 * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add
2843 * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Remove.
2844 (EXTRA_LD_ENVVARS_LINUX): Renamed to...
2845 (EXTRA_LD_ENVVARS_13): ... this. Remove case at the beginning.
2846 * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
2847 Don't undefine first. Remove EXTRA_LD_ENVVARS_LINUX.
2849 2003-11-21 Ulrich Drepper <drepper@redhat.com>
2851 * posix/regcomp.c (duplicate_node): Remove unnecessary local variable.
2853 * posix/regcomp.c (re_dfa_add_tree_node): Make fourth parameter a
2854 pointer. Adjust callers.
2856 * posix/regcomp.c (fetch_token): Change interface to match
2857 peek_token. This avoids some copying and reduces code size.
2859 2003-11-21 Jakub Jelinek <jakub@redhat.com>
2861 * posix/bug-regex19.c (tests): Add more tests.
2863 * posix/bug-regex11.c: And one more commented out test.
2865 * posix/tst-rxspencer.c (mb_tests): Don't run identical multi-byte
2866 tests multiple times unnecessarily.
2868 * posix/bug-regex19.c (BRE, ERE): Define.
2869 (tests): Add many new tests, remove UTF-8 ones.
2870 (do_one_test, do_mb_tests): New functions.
2871 (main): Rewritten using do_one_test and do_mb_tests.
2873 2003-11-20 Ulrich Drepper <drepper@redhat.com>
2875 * posix/PTESTS: Fix first test in GA143.
2877 2003-11-20 Jakub Jelinek <jakub@redhat.com>
2879 * posix/regex_internal.h (re_dfastate_t): Remove trtable_search.
2881 * posix/regex_internal.c (create_newstate_common, free_state):
2882 Don't free trtable_search.
2883 * posix/regexec.c (check_matching): Remove fl_search argument.
2884 (transit_state_sb): Likewise. #ifdef out as unused.
2885 (build_trtable): Remove fl_search argument. Set state->word_trtable
2886 and state->trtable. Build separate word and non-word tables if
2887 multi-byte and they differ for some character.
2888 (transit_state): Remove fl_search argument. Don't update
2889 state->trtable here. Handle state->word_trtable.
2890 #ifdef out unused call to transit_state_sb.
2891 (re_search_internal): Update check_matching caller.
2892 (group_nodes_into_DFAstates): Don't clear non-ascii chars in accepts
2893 bitmask for multi-byte locales.
2894 * posix/bug-regex19.c (tests): Enable some commented out tests, add
2896 * posix/tst-rxspencer.c (mb_tests): Don't test [[=b=]] for now as
2897 multi-byte. Don't run identical multi-byte tests multiple times
2899 (main): Check setlocale return value.
2900 * posix/Makefile (tst-rxspencer-ARGS): Add --utf8 argument.
2901 (tst-rxspencer-ENV): Remove MALLOC_TRACE, add LOCPATH.
2902 ($(objpfx)tst-rxspencer-mem): Run another tst-rxspencer test
2903 here, without --utf8 argument but with MALLOC_TRACE.
2905 2003-11-19 Jakub Jelinek <jakub@redhat.com>
2907 * posix/regexec.c (extend_buffers): Don't allocate
2908 twice as big state_log as needed. Don't modify pstr->valid_len
2909 for mb_cur_max == 1 !icase !trans.
2911 * posix/regcomp.c (free_bin_tree): Removed.
2912 (create_tree): Add dfa argument. Don't call re_malloc for
2913 each tree, instead allocate from str_tree_storage.
2914 (re_dfa_add_tree_node): New function.
2915 (free_dfa_content): Handle freeing if dfa->nodes == NULL
2916 or dfa->state_table == NULL.
2917 (re_compile_internal): Call free_dfa_content if init_dfa
2918 fails. Call free_workarea_compile, re_string_destruct
2919 and free_dfa_content for most of the other failure paths.
2920 (init_dfa): Initialize str_tree_storage_idx.
2921 Don't clear any fields on allocation failure.
2922 (free_workarea_compile): Free str_tree_storage chunks
2923 instead of free_bin_tree (dfa->str_tree).
2924 (parse): Call re_dfa_add_tree_node instead of re_dfa_add_node
2925 followed by create_tree. Add dfa argument to remaining
2926 create_tree calls. Remove new_idx variable. Remove calls
2928 (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp,
2929 parse_dup_op, parse_bracket_exp, build_charclass_op): Likewise.
2930 (duplicate_tree): Remove calls to free_bin_tree, add dfa
2931 argument to create_tree.
2932 * posix/regex_internal.h (BIN_TREE_STORAGE_SIZE): Define.
2933 (bin_tree_storage_t): New type.
2934 (re_dfa_t): Add str_tree_storage and str_tree_storage_idx
2936 * posix/Makefile (tests): Add bug-regex21.
2937 (generated): Add bug-regex21-mem, bug-regex21.mtrace,
2938 tst-rxspencer-mem and tst-rxspencer.mtrace.
2939 (tests): Depend on $(objpfx)bug-regex21-mem
2940 and $(objpfx)tst-rxspencer-mem.
2941 (bug-regex21-ENV, tst-rxspencer-ENV): Set.
2942 ($(objpfx)bug-regex21-mem, $(objpfx)tst-rxspencer-mem): New.
2943 * posix/tst-rxspencer.c (main): Add call to mtrace.
2944 Free line at the end.
2945 * posix/bug-regex21.c: New test.
2947 2003-11-19 Ulrich Drepper <drepper@redhat.com>
2949 * posix/bug-regex20.c: Correct invalid UTF-8 sequences.
2951 * posix/regex_internal.c (build_wcs_upper_buffer): If mbrtowc
2952 fails, just use the byte, do no fancy conversions.
2954 * posix/regex_internal.h (re_string_first_byte): Use ->valid_len
2956 (re_string_is_single_byte_char): Likewise.
2958 2003-11-18 Ulrich Drepper <drepper@redhat.com>
2960 * posix/regexec.c (get_subexp): After calling get_subexp_sub
2961 reload buf and bkref_str. Little optimization by avoiding memcmp.
2963 2003-11-14 David Mosberger <davidm@hpl.hp.com>
2965 * sysdeps/unix/sysv/linux/ia64/sysdep.h
2966 (GAS_ALIGN_BREAKS_UNWIND_INFO): Define this macro to indicate
2967 that all existing GAS versions have a problem with .align inside
2969 * sysdeps/ia64/memccpy.S: Work around GAS_ALIGN_BREAKS_UNWIND_INFO bug.
2970 * sysdeps/ia64/memcpy.S: Likewise.
2971 * sysdeps/ia64/memset.S: Likewise.
2972 * sysdeps/ia64/memmove.S: Likewise. Also move the jump-table to
2973 out of .text into .rodata, where it belongs.
2975 * sysdeps/unix/sysv/linux/ia64/pipe.S: There is no need to
2976 save/restore input-arguments, because they're necessarily
2977 preserved by the kernel to support syscall-restart.
2979 2003-11-18 Jakub Jelinek <jakub@redhat.com>
2981 * posix/regex_internal.h (re_token_type_t): Remove unused ALT,
2982 END_OF_RE_TOKEN_T and SUBEXP. Reorder values. Add OP_UTF8_PERIOD
2984 (IS_EPSILON_NODE): Just test if EPSILON_BIT is set.
2985 (ACCEPT_MB_NODE): Return 1 for OP_UTF8_PERIOD as well.
2986 * posix/regex_internal.c (create_ci_newstate, create_cd_newstate):
2987 Handle OP_UTF8_PERIOD.
2988 (re_string_reconstruct): Set valid_len for single byte char searching
2989 with no translation and case sensitivity.
2990 * posix/regcomp.c (re_compile_fastmap_iter, calc_first): Handle
2992 (re_compile_internal): Don't call optimize_utf8 if preg->translate
2994 (optimize_utf8): Remove BACK_SLASH case.
2995 Transform OP_PERIOD into OP_UTF8_PERIOD if the searching can be
2997 (parse_bracket_exp): Don't create SIMPLE_BRACKET if it doesn't have
2998 any bits set and COMPLEX_BRACKET is used.
2999 * posix/regexec.c (transit_state_mb): Fix comment typo.
3000 (group_nodes_into_DFAstates, check_node_accept): Handle
3002 (check_node_accept_bytes): Likewise. Reorder slightly so that
3003 re_string_char_size_at and re_string_elem_size_at are called
3005 * posix/bug-regex20.c (BRE, ERE): Define.
3006 (tests): Use them to make lines shorter. Expect . to be
3007 optimized. Add lots of new tests.
3008 (main): Run (ATM just case sensitive) test with backwards searching
3011 2003-11-18 Jakub Jelinek <jakub@redhat.com>
3013 * io/bug-ftw4.c: Include string.h.
3014 * posix/fnmatch.c (mbsinit): Remove define.
3016 2003-11-17 Jakub Jelinek <jakub@redhat.com>
3018 * posix/regcomp.c (optimize_utf8): Optimize multi-byte chars as
3020 * posix/bug-regex20.c (tests): Add new tests. Multi-byte char
3021 followed by dup operator is expected to be optimized.
3023 * posix/regexec.c (check_node_accept_bytes): Move nrules and j
3024 variables to the block where they are only used, initialize
3025 nrules only immediately before using it.
3027 2003-11-15 Andreas Jaeger <aj@suse.de>
3029 * sysdeps/x86_64/fpu/s_scalbnl.S: New file.
3030 * sysdeps/x86_64/fpu/s_truncl.S: New file.
3031 * sysdeps/x86_64/fpu/s_nearbyintl.S: New file.
3032 * sysdeps/x86_64/fpu/s_floorl.S: New file.
3033 * sysdeps/x86_64/fpu/s_ilogbl.S: New file.
3034 * sysdeps/x86_64/fpu/e_remainderl.S: New file.
3036 * math/libm-test.inc (floor_test): Test also ±0.25.
3037 (ceil_test): Test -0.25.
3039 2003-11-17 Ulrich Drepper <drepper@redhat.com>
3041 * sysdeps/posix/getaddrinfo.c: Add support for destination address
3042 selection according to RFC 3484.
3044 2003-11-15 Ulrich Drepper <drepper@redhat.com>
3046 * posix/regex_internal.h: Add forward declaration of re_dfa_t.
3047 Replace last two parameters of re_string_allocate and
3048 re_string_construct with pointer to DFA.
3049 (re_dfa_t): Add map_notascii field.
3050 * posix/regcomp.c (re_compile_internal): Add call of
3051 re_string_construct.
3052 (init_dfa): Initialize map_notascii.
3053 * posix/regex_internal.c: Adjust definitions of re_string_allocate
3054 and re_string_construct.
3055 Pass DFA to re_string_construct. Adjust definition. Initialize
3057 (build_wcs_upper_buffer): If map_notascii is zero use simplified
3058 method to map ASCII values to upper case.
3059 * posix/regex.c: Include localeinfo.h.
3060 * posix/regexec.c: Adjust call of re_string_allocate.
3062 * locale/langinfo.h: Add _NL_CTYPE_MAP_TO_NONASCII.
3063 * locale/localeinfo.h (LIMAGIC): Change value.
3064 * locale/categories.def. Add entry for _NL_CTYPE_MAP_TO_NONASCII.
3065 * locale/C-ctype.h: Likewise.
3066 * locale/programs/ld-ctype.c: Compute whether any mapping maps from
3067 ASCII to non-ASCII value. Write out that value.
3069 * wcsmbs/mbsinit.c: Undef mbsinit and __mbsinit.
3070 * include/wchar.h: Provide inline versions of mbsinit and __mbsinit.
3072 2003-11-14 Jakub Jelinek <jakub@redhat.com>
3074 * posix/tst-rxspencer.c (check_match): @ without any following
3075 characters must match only end of string.
3076 (main): Fix filename in error message.
3078 2003-11-12 David Mosberger <davidm@hpl.hp.com>
3080 * sysdeps/ia64/dl-machine.h: Force inlining of
3081 elf_machine_runtime_setup().
3083 2003-11-13 Andreas Jaeger <aj@suse.de>
3085 * math/Makefile (CFLAGS-test-float.c): Add -fno-builtin.
3086 (CFLAGS-test-double.c): Likewise.
3087 (CFLAGS-test-ldouble.c): Likewise.
3088 (CPPFLAGS-test-ifloat.c): Likewise.
3089 (CPPFLAGS-test-idouble.c): Likewise.
3090 (CPPFLAGS-test-ildoubl.c): Likewise.
3092 * math/libm-test.inc (ceil_test): Test ceil (0.25).
3094 2003-11-04 Ulrich Drepper <drepper@redhat.com>
3096 * sysdeps/unix/sysv/linux/ifaddrs.c: Make sure it's the kernel who
3097 sends the netlink data.
3098 * sysdeps/unix/sysv/linux/check_pf.c: Likewise.
3100 2003-11-13 Jakub Jelinek <jakub@redhat.com>
3102 * posix/regcomp.c (optimize_utf8): Optimize even if SIMPLE_BRACKET
3103 with no bits set for >= 0x80 chars is seen.
3104 * posix/bug-regex20.c (tests): Add new tests. Expect [ABC] to be
3106 (main): Run all tests with RE_ICASE as well.
3108 2003-11-13 Ulrich Drepper <drepper@redhat.com>
3110 * posix/Makefile: Add rules to build and run tst-rxspencer.
3111 (distribute): Add rxspencer/tests and rxspencer/COPYRIGHT.
3112 * posix/tst-rxspencer.c: New file.
3113 * posix/rxspencer/tests: New file.
3114 * posix/rxspencer/COPYRIGHT: New file.
3115 Patch mostly by Jakub Jelinek.
3117 * posix/regcomp.c (parse_bracket_exp): Don't check for range if
3118 this is no option given the first token.
3120 * posix/regcomp.c (parse_bracket_exp): Fix test for EOS after
3121 hyphen in range expression. Return EBRACK in this case.
3123 * posix/regcomp.c (parse_bracket_element): Reject hyphens unless
3124 we expect them or it's the last element in the bracket expression.
3125 Indicated by new parameter. Adjust all callers.
3127 * posix/runtests.c (run_a_test): If regcomp failed, reset last_pattern.
3128 Prettier error messages.
3130 * posix/regcomp.c (parse_dup_op): Fail with REG_BADBR is first
3131 number in {,} expression is larger.
3133 2003-11-13 Andreas Jaeger <aj@suse.de>
3135 * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_TGKILL):
3136 Define appropriately for x86_64.
3137 (__ASSUME_UTIMES): Likewise.
3138 (__ASSUME_CLONE_THREAD_FLAGS): Likewise.
3140 * sysdeps/x86_64/fpu/s_ceill.S: New file.
3142 2003-11-13 Ulrich Drepper <drepper@redhat.com>
3144 * posix/regcomp.c (parse_expression): In BRE consecutive
3145 duplications are not allowed.
3147 2003-11-12 Ulrich Drepper <drepper@redhat.com>
3149 * posix/regcomp.c (parse_bracket_exp): If end of expression is
3150 seen, return EBRACK error, not BADPAT.
3152 * posix/regcomp.c (parse_expression): If token is OP_OPEN_DUP_NUM
3153 and RE_CONTEXT_INVALID_DUP syntax flag is set, fail.
3154 * posix/regex.h (RE_CONTEXT_INVALUD_OPS): New macro.
3155 (RE_SYNTAX_POSIX_BASIC): Use RE_CONTEXT_INVALUD_OPS.
3157 * posix/regcomp.c (parse_sub_exp): In case of not-matching ( )
3160 * posix/PTESTS: Cleanup. Fix typoes. Correct bugs in 2003.2.
3161 * posix/runptests.c (main): Handle comments.
3162 * posix/PTESTS2C.sed: Handle comments.
3164 2003-11-12 Jakub Jelinek <jakub@redhat.com>
3166 * posix/regcomp.c (optimize_utf8): New function.
3167 (re_compile_fastmap_iter): Use dfa->mb_cur_max > 1 instead
3169 (re_compile_internal): Call optimize_utf8 if not case insensitive
3170 and in UTF-8 locale.
3171 * posix/regex_internal.h: Ifdef out some prototypes if
3172 RE_NO_INTERNAL_PROTOTYPES is defined to shut up warnings.
3173 * posix/Makefile (tests): Add bug-regex20.
3174 (bug-regex20-ENV): Add LOCPATH.
3175 * posix/bug-regex20.c: New test.
3177 2003-11-12 Jakub Jelinek <jakub@redhat.com>
3179 * io/ftw.c (NFTW_NEW_NAME, NFTW_OLD_NAME): Add prototypes.
3181 2003-11-12 Jakub Jelinek <jakub@redhat.com>
3183 * posix/tst-regex.c (umemlen): New variable.
3184 (test_expr): Add expectedicase argument. Test case insensitive
3185 searches as well as backwards searches (case sensitive and
3187 (run_test): Add icase argument. Use it to compute regcomp flags.
3188 (run_test_backwards): New function.
3189 (main): Cast read to size_t to avoid warning. Set umemlen.
3190 Add expectedicase arguments to test_expr.
3191 * posix/regex_internal.c (re_string_reconstruct): If is_utf8,
3192 find previous character by walking back instead of converting
3193 all chars from beginning.
3195 2003-11-12 Jakub Jelinek <jakub@redhat.com>
3197 * posix/regex_internal.h (struct re_string_t): Add is_utf8
3198 and mb_cur_max fields.
3199 (struct re_dfa_t): Likewise. Reorder fields to make structure
3200 smaller on 64-bit arches.
3201 (re_string_allocate, re_string_construct): Add mb_cur_max and
3203 (re_string_char_size_at, re_string_wchar_at): Use pstr->mb_cur_max
3204 instead of MB_CUR_MAX.
3205 * posix/regcomp.c (re_compile_fastmap_iter): Use dfa->mb_cur_max
3206 instead of MB_CUR_MAX.
3207 (re_compile_internal): Pass new arguments to re_string_construct.
3208 (init_dfa): Initialize mb_cur_max and is_utf8 fields.
3209 (peek_token, peek_token_bracket): Use input->mb_cur_max instead
3211 (parse_expression, parse_bracket_exp, parse_charclass_op): Use
3212 dfa->mb_cur_max instead of MB_CUR_MAX.
3213 * posix/regex_internal.c (re_string_construct_common): Add
3214 mb_cur_max and is_utf8 arguments. Initialize fields with them.
3215 (re_string_allocate, re_string_construct): Add mb_cur_max and
3216 is_utf8 arguments, pass them to re_string_construct_common.
3217 Use mb_cur_max instead of MB_CUR_MAX.
3218 (re_string_realloc_buffers): Use pstr->mb_cur_max instead of
3220 (re_string_reconstruct): Likewise.
3221 (re_string_context_at): Use input->mb_cur_max instead of
3223 (create_ci_newstate, create_cd_newstate): Use dfa->mb_cur_max
3224 instead of MB_CUR_MAX.
3225 * posix/regexec.c (re_search_internal): Likewise.
3226 Pass new arguments to re_string_allocate.
3227 (check_matching, transit_state_sb): Use dfa->mb_cur_max instead of
3229 (extend_buffers): Use pstr->mb_cur_max instead of MB_CUR_MAX.
3231 2003-11-12 Jakub Jelinek <jakub@redhat.com>
3233 * posix/Makefile (tests): Add bug-regex19.
3234 (bug-regex19-ENV): Add LOCPATH.
3235 * posix/bug-regex19.c: New test.
3237 2003-11-11 Jakub Jelinek <jakub@redhat.com>
3239 * posix/regcomp.c (re_compile_fastmap_iter): Handle RE_ICASE
3240 with MB_CUR_MAX > 1 locales in the fastmap.
3242 2003-11-11 Jakub Jelinek <jakub@redhat.com>
3244 * posix/regex_internal.c (build_wcs_buffer): Fix comment typo.
3245 (build_wcs_upper_buffer): Likewise. Use towupper for wchar_t instead
3247 * posix/Makefile (tests): Add bug-regex17 and bug-regex18.
3248 (bug-regex17-ENV, bug-regex18-ENV): Add LOCPATH.
3249 * posix/bug-regex17.c: New file
3250 * posix/bug-regex18.c: New file.
3252 2003-10-08 Thorsten Kukuk <kukuk@suse.de>
3254 * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (pread, pwrite):
3255 Define __NR_pread/__NR_pwrite if not done in kernel headers
3257 2003-11-11 Roland McGrath <roland@redhat.com>
3259 * manual/xtract-typefun.awk: Swallow [(){}*] from function names.
3261 * manual/Makefile (info): Don't depend on dir-add.info.
3262 (libc.dvi libc.pdf libc.info): Depend on dir-add.texi.
3263 (dir-add.info): Target removed, replaced with ...
3264 (dir-add.texi): New target.
3265 (distribute): Add it.
3266 (install): Remove variant with --section arguments.
3267 Let the @dircategory directives do their work.
3268 (mostlyclean): Don't remove dir-add.info here.
3269 (realclean): Remove dir-add.texi here.
3270 * manual/libc.texinfo: @include dir-add.texi
3271 * configure.in: Remove check for old Debian install-info.
3272 * configure: Regenerated.
3273 * config.make.in (OLD_DEBIAN_INSTALL_INFO): Variable removed.
3275 2003-11-08 Andreas Schwab <schwab@suse.de>
3277 * scripts/data/c++-types-ia64-linux-gnu.data: New file.
3279 2003-11-10 Carlos O'Donell <carlos@baldric.uwo.ca>
3281 * io/ftwtest-sh: Fix nested sed commands.
3283 2003-11-10 Jakub Jelinek <jakub@redhat.com>
3285 * posix/regex_internal.h (re_string_char_size_at): Don't look beyond
3286 valid_len wide chars.
3288 2003-11-09 Roland McGrath <roland@redhat.com>
3290 * manual/examples/dir2.c (one): Add const to argument type.
3291 Reported by J de Haan <j.de.haan@home.nl>.
3293 2003-11-07 Ulrich Drepper <drepper@redhat.com>
3295 * po/pl.po: Update from translation team.
3297 2003-11-07 Jakub Jelinek <jakub@redhat.com>
3299 * io/ftw.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
3300 (ftw_dir, ftw_startup): Add __attribute ((noinline)).
3301 (NFTW_OLD_NAME, NFTW_NEW_NAME): New functions.
3302 (NFTW_NAME): Only define if !_LIBC, add versioned_symbol
3304 * io/ftw64.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
3305 * io/Versions (libc): Export nftw@@GLIBC_2.3.3
3306 and nftw64@@GLIBC_2.3.3.
3308 * io/ftw.h (FTW_ACTIONRETVAL): New flag.
3309 (FTW_CONTINUE, FTW_STOP, FTW_SKIP_SUBTREE, FTW_SKIP_SIBLINGS): New.
3310 * io/ftw.c (ftw_dir): Add old_dir argument.
3311 Clear result if it was FTW_SKIP_SIBLINGS after processing all
3312 dir entries. Change cwd back if old_dir != NULL.
3313 (process_entry): Adjust caller. Don't change cwd back here.
3314 Change FTW_SKIP_SUBTREE result to 0.
3315 (ftw_startup): Adjust ftw_dir caller.
3316 Clear result if it was FTW_SKIP_SUBTREE or FTW_SKIP_SIBLINGS.
3317 * io/ftwtest.c (skip_subtree, skip_siblings): New variables.
3318 (options, main): Add --skip-subtree and --skip-siblings options.
3319 (cb): Use return FTW_CONTINUE instead of return 0.
3320 Handle --skip-subtree and --skip-siblings.
3321 * io/ftwtest-sh: Add tests for FTW_ACTIONRETVAL.
3322 * manual/filesys.texi: Document FTW_ACTIONRETVAL.
3324 2003-11-04 Jakub Jelinek <jakub@redhat.com>
3326 * io/ftw.c (ftw_dir): Close dir if callback with FTW_D type returns
3328 * io/Makefile (tests): Add bug-ftw4.
3329 * io/bug-ftw4.c: New test.
3331 2003-10-27 Daniel Jacobowitz <drow@mvista.com>
3333 * libio/libioP.h [_IO_USE_OLD_IO_FILE]
3334 (struct _IO_FILE_complete_plus): New type.
3335 * libio/oldiofopen.c (_IO_old_fopen): Use _IO_FILE_complete_plus.
3336 * libio/oldiofdopen.c (_IO_old_fdopen): Likewise.
3337 * libio/oldiopopen.c (struct _IO_proc_file, _IO_old_popen): Likewise.
3338 Call _IO_old_init instead of _IO_init.
3340 2003-11-03 Ulrich Drepper <drepper@redhat.com>
3342 * intl/locale.alias: nb_NO is now the correct name, not no_NO.
3344 * locale/iso-639.def: Add Blin.
3345 Patch by Daniel Yacob <locales@geez.org>.
3347 2003-10-31 Steven Munroe <sjmunroe@us.ibm.com>
3349 * sysdeps/powerpc/powerpc32/strncmp.S: New File.
3350 * sysdeps/powerpc/powerpc64/strncmp.S: New File.
3352 2003-11-01 Randolph Chung <tausq@debian.org>
3354 * sysdeps/unix/sysv/linux/hppa/sysdep.h (LOAD_ARGS_0, LOAD_ARGS_1,
3355 LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4, LOAD_ARGS_5, LOAD_ARGS_6):
3356 Add missing parentheses.
3358 2003-11-01 Roland McGrath <roland@redhat.com>
3360 * libio/bug-ftell.c (do_test): Add a cast.
3362 2003-09-26 Daniel Jacobowitz <drow@mvista.com>
3364 * Makerules (shlib.lds): Make sure that ld doesn't try to link
3365 anything while generating the linker script.
3367 2003-10-31 Roland McGrath <roland@redhat.com>
3369 * locale/lc-ctype.c (_nl_postload_ctype): Update _nl_global_locale's
3372 2003-10-29 Ulrich Drepper <drepper@redhat.com>
3374 * po/be.po: Update from translation team.
3376 2003-10-27 Ulrich Drepper <drepper@redhat.com>
3378 * elf/rtld.c (map_doit): Pass __RTLD_OPENEXEC in last parameter to
3381 * elf/sprof.c (load_shobj): Use l_map_start not l_addr to locate
3384 * inet/rcmd.c (__validuser2_sa): Remove unnecessary code to skip
3385 rest of line. We use getline which means this cannot happen.
3387 2003-10-26 Ulrich Drepper <drepper@redhat.com>
3389 * sysdeps/unix/sysv/linux/internal_statvfs.c (__internal_statvfs):
3390 Avoid infinite loops in case the mounts file is hosed.
3391 * io/Makefile: Add rules to build and run tst-statvfs.
3392 * io/tst-statvfs.c: New file.
3394 * include/dlfcn.h (__RTLD_OPENEXEC): Define.
3395 * elf/dl-load.c (_dl_map_object_from_fd): Don't allow loading
3396 executables unless __RTLD_OPENEXEC flag is present.
3397 * elf/rtld.c (dl_main): Pass __RTLD_OPENEXEC flag to
3398 _dl_map_object when loading the executable.
3400 * sysdeps/generic/glob.c (glob): Handle GLOB_BRACE and escaping
3402 * posix/globtest.sh: Add tests for GLOB_BRACE and escaping.
3404 * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Default
3405 reverse lookup format for IPv6 addresses is using bitstring and
3407 * resolv/ns_name.c: Implement encoding and decoding bitstring in
3410 2003-10-23 Jakub Jelinek <jakub@redhat.com>
3412 * locale/programs/locale.c (show_info): Fix printing word values on
3413 64-bit big-endian architectures.
3415 2003-10-19 Bruno Haible <bruno@clisp.org>
3417 * intl/hash-string.c (hash_string): Zero-extend each char from the
3418 string; the old code did a sign-extend on some platforms.
3420 2003-10-22 Steven Munroe <sjmunroe@us.ibm.com>
3422 * sysdeps/powerpc/powerpc32/Makefile (+cflags, asm-CPPFLAGS): Don't
3423 append options to these.
3424 * sysdeps/powerpc/powerpc64/Makefile (+cflags, asm-CPPFLAGS): Likewise.
3426 2003-10-18 Carlos O'Donell <carlos@baldric.uwo.ca>
3428 * sysdeps/unix/sysv/linux/hppa/sysdep.h: Fix merge error.
3430 2003-10-15 Roland McGrath <roland@redhat.com>
3432 * elf/dl-iteratephdr.c [! SHARED] (dl_iterate_phdr): New function.
3433 Fake an entry for the main executable and then call __dl_iterate_phdr.
3434 * elf/Makefile (routines): Remove dl-iteratephdr-static.
3435 (elide-routines.os): Likewise.
3436 (CFLAGS-dl-iterate-phdr-static.c): Variable removed.
3437 * sysdeps/generic/dl-iteratephdr-static.c: File removed.
3438 * sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c: File removed.
3440 2003-10-15 Jakub Jelinek <jakub@redhat.com>
3442 * elf/rtld.c (print_statistics): Print also number of relative
3445 2003-10-12 Carlos O'Donell <carlos@baldric.uwo.ca>
3447 * sysdeps/hppa/sysdep.h: Undef JUMPTARGET before use.
3448 * sysdeps/unix/sysv/linux/hppa/sysdep.h: Define PSEUDO_ERRVAL,
3449 SYSCALL_ERROR_LABEL under all conditions, INTERNAL_SYSCALL_DECL,
3450 INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO, INTERNAL_SYSCALL,
3451 and undef JUMPTARGET before use.
3452 [PIC]: Save pic register around syscall.
3453 * sysdeps/unix/sysv/linux/hppa/sysdep.c (syscall):
3454 Cleanup asm statment.
3456 2003-10-13 Kaz Kojima <kkojima@rr.iij4u.or.jp>
3458 * sysdeps/unix/sysv/linux/sh/sysdep.h (DO_CALL): Add SYSCALL_INST_PAD
3459 after trapa instruction.
3461 2003-10-09 Kaz Kojima <kkojima@rr.iij4u.or.jp>
3463 * sysdeps/unix/sysv/linux/sh/syscalls.list: Add waitpid.
3465 2003-10-10 Carlos O'Donell <carlos@baldric.uwo.ca>
3467 * sysdeps/hppa/Makefile (CFLAGS-malloc.c): Variable removed.
3469 2003-10-09 Roland McGrath <roland@redhat.com>
3471 * elf/rtld.c (dl_main): Don't set l_name for sysinfo DSO, since there
3474 2003-10-08 Jakub Jelinek <jakub@redhat.com>
3476 * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): Don't generate
3477 two identical copies of strings.
3479 2003-10-06 Ulrich Drepper <drepper@redhat.com>
3481 * posix/bug-regex11.c: Add some more tests which fail so far.
3482 Disable them. Patch by Paolo Bonzini <bonzini@gnu.org>.
3484 2003-10-05 Paolo Bonzini <bonzini@gnu.org>
3486 * posix/bug-regex11.c: Add more backreference-related test cases.
3487 (main): Show the failing regex in the error messages.
3488 * posix/regexec.c (check_dst_limits_calc_pos):
3489 Simplify some nested conditionals. Replace if's with a switch
3491 (check_dst_limits_calc_pos <TYPE_BKREF>): Rename parameter NODE to
3492 FROM_NODE, it shadows a local variable; don't recurse if FROM_NODE
3493 does not change in the recursive invocation, fixing an infinite loop
3494 in the ()\1*\1* regex.
3495 (sift_states_backward): Fix function comment.
3496 * posix/regcomp.c (calc_epsdest): Add an assertion.
3498 2003-10-06 Ulrich Drepper <drepper@redhat.com>
3500 * manual/examples/testopt.c: Fix warnings. Better error message
3501 for missing -c argument.
3502 Patch mostly by Gitonga Marete <bgmarete@comcast.net>.
3504 * timezone/asia: Update from tzdata2003d.
3505 * timezone/australasia: Likewise.
3506 * timezone/backward: Likewise.
3507 * timezone/europe: Likewise.
3508 * timezone/iso3166.tab: Likewise.
3509 * timezone/northamerica: Likewise.
3510 * timezone/southamerica: Likewise.
3511 * timezone/zone.tab: Likewise.
3513 2003-10-05 Jakub Jelinek <jakub@redhat.com>
3515 * sysdeps/ia64/backtrace.c: New file.
3516 * sysdeps/x86_64/backtrace.c: New file.
3517 * sysdeps/generic/unwind.h (_Unwind_Trace_Fn): New type.
3518 (_Unwind_Backtrace): New prototype.
3520 2003-10-03 Ulrich Drepper <drepper@redhat.com>
3522 * sysdeps/i386/elf/bsd-setjmp.S: Use linkonce section for PIC stub.
3523 * sysdeps/i386/elf/setjmp.S: Likewise.
3525 2003-10-02 Roland McGrath <roland@redhat.com>
3527 * argp/argp-help.c (__argp_short_program_name): Move inside [! _LIBC].
3528 * argp/argp-namefrob.h
3529 [_LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME]
3530 (__argp_short_program_name): Don't declare fn, define it as a macro.
3532 2003-08-22 Simon Josefsson <jas@extundo.com>
3534 * argp/argp-fmtstream.h [!__attribute__]: Define to nothing.
3536 * argp/argp-help.c: Don't include malloc.h, some platforms
3537 complain and it doesn't appear to be used.
3538 [!_LIBC && HAVE_STRERROR_R && !HAVE_DECL_STRERROR_R]: Declare
3540 [!_LIBC && !HAVE_STRERROR_R && !HAVE_DECL_STRERROR]: Declare
3542 (hol_entry_long_iterate): Change __attribute to __attribute__.
3543 (_help, __argp_error, __argp_failure) [!_LIBC && (HAVE_FLOCKFILE
3544 && HAVE_FUNLOCKFILE)]: Protect call to flockfile and funlockfile.
3545 (__argp_basename) [!_LIBC]: New. Taken from LSH, by Niels Möller,
3546 modified after comments from Ulrich Drepper.
3547 (__argp_short_program_name): Ditto.
3548 (__argp_state_help, __argp_error, __argp_failure): Use it.
3549 (__argp_failure): Use strerror when necessary.
3551 * argp/argp-namefrob.h (__flockfile, __funlockfile, __mempcpy)
3552 (__strchrnul, __strerror_r, __strndup) [!_LIBC]: Remove __-prefix.
3553 (clearerr_unlocked, feof_unlocked, ferror_unlocked)
3554 (fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked)
3555 (fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked)
3556 (putc_unlocked, putchar_unlocked) [!_LIBC && !HAVE_DECL_*]: Map to
3557 non-unlocked functions.
3558 [!_LIBC]: Add prototypes for __argp_basename and
3559 __argp_short_program_name.
3561 * argp/argp-parse.c (argp_default_parser): Only use
3562 program_invocation{_short,}_name if declared.
3563 (parser_init): Use __argp_short_program_name.
3565 * argp/argp-xinl.c [_LIBC || HAVE_FEATURES_H]: Add CPP check for
3566 '#include features.h'.
3568 * argp/argp.h [!__attribute__]: Define to nothing.
3570 2003-09-26 Paolo Bonzini <bonzini@gnu.org>
3572 * posix/regcomp.c (parse_sub_exp): Pass RE_CARET_ANCHORS_HERE
3573 for the first token in a subexpression as well.
3575 2003-10-02 Jakub Jelinek <jakub@redhat.com>
3577 * posix/regcomp.c (peek_token): Add 2003-09-20 changes for anchor
3579 (parse_reg_exp): Likewise.
3580 * posix/regex.h (RE_CARET_ANCHORS_HERE): Define.
3582 * posix/bug-regex11.c (tests): Add new tests.
3583 * posix/bug-regex12.c (tests): Add new test.
3585 2003-10-01 Thorsten Kukuk <kukuk@suse.de>
3587 * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
3588 variables only used if TLS_DTV_AT_TP is defined into the #if branch.
3590 2003-10-02 Jeroen Dekkers <jeroen@dekkers.cx>
3592 * sysdeps/mach/hurd/malloc-machine.h: Copy the tsd code from
3593 the old thread-m.h header too.
3595 2003-10-02 Ulrich Drepper <drepper@redhat.com>
3597 * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ): Go
3598 back to 131027 since this is what the kernel enforces.
3600 * inet/getnameinfo.c: Move domain out of nrl_domainname scope and
3601 define it with libc_freeres_ptr.
3603 2003-10-01 Roland McGrath <roland@redhat.com>
3605 * elf/rtld.c (dl_main): Add cast in last change.
3607 2003-09-10 Chris Demetriou <cgd@broadcom.com>
3609 * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Remove
3610 "#if 0" surrounding most of contents.
3611 (SYSCALL_ERROR_LABEL): Define.
3612 (__SYSCALL_CLOBBERS): Add $10.
3613 (internal_syscall7): Remove.
3614 * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
3616 2003-09-30 Ulrich Drepper <drepper@redhat.com>
3618 * elf/rtld.c (dl_main): Also set l_map_start.
3620 2003-09-30 Daniel Jacobowitz <drow@mvista.com>
3622 * elf/rtld.c (dl_main): Set l_libname and l_name for the sysinfo DSO
3623 to work around kernel problem.
3625 2003-09-27 Wolfram Gloger <wg@malloc.de>
3627 * malloc/malloc.c: Include <malloc-machine.h> earlier instead of
3628 "thread-m.h", so that default parameters can be overridden in a
3629 system-specific malloc-machine.h. Remove extra ; from extern "C"
3631 * sysdeps/generic/malloc-machine.h: New file.
3632 * sysdeps/mach/hurd/malloc-machine.h: New file.
3633 * malloc/thread-m.h: Removed.
3634 * malloc/Makefile: Remove CFLAGS-malloc.c parameter addition, it
3635 is in sysdeps/generic/malloc-machine.h now.
3637 2003-09-29 Ulrich Drepper <drepper@redhat.com>
3639 * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
3640 variables only used if TLS_TCB_AT_TP is defined into the #if
3643 * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add __extension__ as
3644 well to cover using long long in C90.
3646 2003-09-28 Alfred M. Szmidt <ams@kemisten.nu>
3648 * sysdeps/mach/hurd/bits/libc-lock.h (__libc_cleanup_pop):
3649 Redefine and use __libc_cleanup_region_end instead.
3651 2003-09-29 Thorsten Kukuk <kukuk@suse.de>
3653 * sysdeps/unix/sysv/linux/sys/sysmacros.h: Use __inline and
3654 fix prototypes for picky C++ compilers.
3656 2003-09-27 Ulrich Drepper <drepper@redhat.com>
3658 * sysdeps/unix/sysv/linux/ustat.c (ustat): Set errno to EINVAL if
3659 the device ID is invalid and return -1.
3660 * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
3662 2003-09-26 Andreas Schwab <schwab@suse.de>
3664 * sysdeps/unix/sysv/linux/ia64/getcontext.S: Pass fourth argument to
3665 rt_sigprocmask system call.
3667 2003-09-25 Roland McGrath <roland@redhat.com>
3669 * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
3670 Don't check for zero __libc_stack_end, it should be initialized.
3671 [_STACK_GROWS_DOWN] [PROT_GROWSDOWN]: Try using PROT_GROWSDOWN flag
3672 and fall back if it fails with EINVAL.
3673 [_STACK_GROWS_UP] [PROT_GROWSUP]: Likewise for PROT_GROWSUP.
3675 2003-09-25 Jakub Jelinek <jakub@redhat.com>
3677 * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: Include
3678 sysdeps/i386/dl-procinfo.c instead of
3679 sysdeps/unix/sysv/linux/i386/dl-procinfo.c.
3680 * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Avoid using
3683 2003-09-25 Ulrich Drepper <drepper@redhat.com>
3685 * posix/regcomp.c (peek_token): Remove recent changes for anchor
3687 (parse_reg_exp): Likewise.
3688 * posix/regex.h: Remove RE_CARET_ANCHORS_HERE.
3690 * csu/Makefile ($(objpfx)version-info.h): Fix sed script to handle
3693 * nis/nis_table.c (nis_list): Always strdup string used with
3694 ibreq->ibr_name. Add several NULL pointer checks.
3696 * nis/nss_nisplus/nisplus-alias.c: Add check for NULL return value
3698 * nis/nss_nisplus/nisplus-ethers.c: Likewise.
3699 * nis/nss_nisplus/nisplus-grp.c: Likewise.
3700 * nis/nss_nisplus/nisplus-hosts.c: Likewise.
3701 * nis/nss_nisplus/nisplus-netgrp.c: Likewise.
3702 * nis/nss_nisplus/nisplus-network.c: Likewise.
3703 * nis/nss_nisplus/nisplus-proto.c: Likewise.
3704 * nis/nss_nisplus/nisplus-publickey.c: Likewise.
3705 * nis/nss_nisplus/nisplus-pwd.c: Likewise.
3706 * nis/nss_nisplus/nisplus-rpc.c: Likewise.
3707 * nis/nss_nisplus/nisplus-service.c: Likewise.
3708 * nis/nss_nisplus/nisplus-spwd.c: Likewise.
3710 * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Define PROT_GROWSDOWN
3712 * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
3713 * sysdeps/unix/sysv/linux/cris/bits/mman.h: Likewise.
3714 * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
3715 * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
3716 * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
3717 * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
3718 * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise.
3719 * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
3720 * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise.
3721 * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise.
3722 * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise.
3724 2003-09-25 Jakub Jelinek <jakub@redhat.com>
3726 * misc/syslog.c: Include locale.h.
3727 (vsyslog): Add date always in C locale %h %e %T format.
3729 2003-09-24 Paul Eggert <eggert@twinsun.com>
3731 * argp/argp-fmtstream.c (__argp_fmtstream_ensure): Check for
3732 size_t overflow when reallocating storage.
3733 * argp/argp-help.c (make_hol, hol_append): Likewise.
3734 (SIZE_MAX): New macro.
3736 2003-08-07 Alfred M. Szmidt <ams@kemisten.nu>
3738 * sysdeps/mach/hurd/bits/libc-lock.h
3739 (__libc_cleanup_push, __libc_cleanup_pop): New macros.
3741 2003-08-01 Alfred M. Szmidt <ams@kemisten.nu>
3743 * sysdeps/i386/dl-procinfo.h: New file, contents taken from ...
3744 * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: ... here.
3745 #include_next dl-procinfo.h to get them.
3746 (_DL_HWCAP_COUNT): Moved to sysdeps/i386/dl-procinfo.h.
3747 (_DL_PLATFORMS_COUNT): Likewise.
3748 (_DL_FIRST_PLATFORM): Likewise.
3749 (_DL_HWCAP_PLATFORM): Likewise.
3750 (HWCAP_I386_FPU, HWCAP_I386_VME, HWCAP_I386_DE, HWCAP_I386_PSE,
3751 HWCAP_I386_TSC, HWCAP_I386_MSR, HWCAP_I386_PAE, HWCAP_I386_MCE,
3752 HWCAP_I386_CX8, HWCAP_I386_APIC, HWCAP_I386_SEP, HWCAP_I386_MTRR,
3753 HWCAP_I386_PGE, HWCAP_I386_MCA, HWCAP_I386_CMOV,
3754 HWCAP_I386_FCMOV, HWCAP_I386_MMX, HWCAP_I386_OSFXSR,
3755 HWCAP_I386_XMM, HWCAP_I386_XMM2, HWCAP_I386_AMD3D,
3756 HWCAP_IMPORTANT): Likewise.
3757 (_DL_PROCINFO_H_): Likewise.
3758 (_dl_hwcap_string, _dl_platform_string, _dl_string_hwcap): Likewise.
3759 (_dl_string_platform): Likewise.
3760 * sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Moved to ...
3761 * sysdeps/i386/dl-procinfo.c: ... here, new file.
3763 2003-09-24 Ulrich Drepper <drepper@redhat.com>
3765 * sysdeps/unix/sysv/linux/dl-execstack.c
3766 (_dl_make_stack_executable): Remember that we changed the permission.
3768 * sysdeps/ia64/dl-machine.h (RTLD_START): Remove setting of
3769 __libc_stack_end. Patch by David Mosberger.
3771 2003-09-24 Jakub Jelinek <jakub@redhat.com>
3773 * elf/Versions (ld): Export __libc_stack_end@GLIBC_2.1 instead of
3774 __libc_stack_end@GLIBC_PRIVATE.
3776 * sysdeps/generic/dl-sysdep.c (DL_STACK_END): Define if not defined.
3777 (_dl_sysdep_start): Set __libc_stack_end here.
3778 * sysdeps/alpha/dl-machine.h (RTLD_START): Remove setting of
3780 * sysdeps/arm/dl-machine.h (RTLD_START): Likewise.
3781 * sysdeps/cris/dl-machine.h (RTLD_START): Likewise.
3782 * sysdeps/i386/dl-machine.h (RTLD_START): Likewise.
3783 * sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
3784 * sysdeps/s390/s390-32/dl-machine.h (RTLD_START): Likewise.
3785 * sysdeps/s390/s390-64/dl-machine.h (RTLD_START): Likewise.
3786 * sysdeps/sh/dl-machine.h (RTLD_START): Likewise.
3787 * sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise.
3788 * sysdeps/ia64/dl-machine.h (DL_STACK_END): Define.
3789 * sysdeps/sparc/sparc32/dl-machine.h (DL_STACK_END): Define.
3790 (RTLD_START): Remove setting of __libc_stack_end.
3791 * sysdeps/sparc/sparc64/dl-machine.h (DL_STACK_END): Define.
3792 (RTLD_START): Remove setting of __libc_stack_end.
3794 2003-09-24 Ulrich Drepper <drepper@redhat.com>
3796 * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add gnu_dev_ prefix to
3797 function definitions. Adjust macro expansions accordingly.
3798 * sysdeps/unix/sysv/linux/Versions: Add gnu_dev_ prefix to major,
3799 minor, makedev name.
3800 * sysdeps/unix/sysv/linux/makedev.c: Likewise.
3802 2003-09-24 Jakub Jelinek <jakub@redhat.com>
3804 * sysdeps/unix/sysv/linux/sys/sysmacros.h (major, minor, makedev):
3807 2003-09-24 Jakub Jelinek <jakub@redhat.com>
3809 * nscd/Makefile (others): Add nscd before including ../Rules.
3811 2003-09-24 Ulrich Drepper <drepper@redhat.com>
3813 * nscd/Makefile: Add rules to build nscd as a PIE.
3814 * configure.in: Check for -fpie and -pie compiler options.
3815 * config.make.in (have-fpie): Define.
3817 2003-09-23 Ulrich Drepper <drepper@redhat.com>
3819 * sysdeps/unix/sysv/linux/sys/sysmacros.h: Adjust for larger
3821 * sysdeps/unix/sysv/linux/alpha/sys/sysmacros.h: Removed.
3822 * sysdeps/unix/sysv/linux/sparc/sys/sysmacros.h: Removed.
3823 * sysdeps/unix/sysv/linux/makedev.c: New file.
3824 * sysdeps/unix/sysv/linux/Dist: Add makedev.c.
3825 * sysdeps/unix/sysv/linux/Makefile [subdir=misc]
3826 (sysdep_routines): Add makedev.
3827 * sysdeps/unix/sysv/linux/Versions [libc] (GLIBC_2.3.3): Add
3828 major, minor, makedev.
3829 * sysdeps/unix/sysv/linux/ustat.c (ustat): Adjust for 32-bit
3831 * sysdeps/unix/sysv/linux/alpha/ustat.c: Removed.
3832 * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
3833 * sysdeps/unix/sysv/linux/alpha/xmknod.c: Removed.
3834 Code by Alexander Viro <aviro@redhat.com>.
3836 2003-09-23 Ulrich Drepper <drepper@redhat.com>
3838 * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions [libc]
3839 (GLIBC_2.3.3): Add setcontext, getcontext, swapcontext, and
3841 * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct change
3842 for include Altivec support for PPC32. It was not compatible.
3843 * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: Adjust
3844 offsets for ucontext_t change.
3845 * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Adjust
3846 for ucontext_t change. Add compatibility code.
3847 * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise.
3848 * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
3849 * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
3850 Patch by Paul Mackerras <paulus@samba.org>.
3852 2003-02-25 Randolph Chung <tausq@debian.org>
3854 * sysdeps/hppa/Makefile: Include compat code in build.
3855 * sysdeps/hppa/libgcc-compat.c: New file.
3856 * sysdeps/hppa/Dist: Add libgcc-compat.c.
3857 * sysdeps/hppa/Versions [GLIBC_2.2]: Add __clz_tab.
3859 2003-09-23 Roland McGrath <roland@redhat.com>
3861 * elf/rtld.c (dl_main): In rtld_is_main case, reinitialize
3862 GL(dl_stack_flags) according to rtld's own PT_GNU_STACK.
3863 Move GL(dl_make_stack_executable_hook) initialization up.
3864 * elf/tst-execstack-prog.c: New file.
3865 * elf/Makefile (tests-execstack-yes): Add it.
3866 (LDFLAGS-tst-execstack-prog): New variable.
3868 2003-09-23 Jakub Jelinek <jakub@redhat.com>
3870 * sysdeps/x86_64/dl-machine.h (RTLD_START): Set __libc_stack_end
3871 before calling _dl_start, using %rip relative access.
3872 Use %rip relative access to _dl_skip_args, _rtld_local._dl_loaded
3875 2003-09-23 Roland McGrath <roland@redhat.com>
3877 * sysdeps/i386/dl-machine.h (RTLD_START): Set __libc_stack_end before
3878 calling _dl_start, using GOTOFF access.
3880 * configure.in (libc_cv_z_execstack): New check.
3881 * configure: Regenerated.
3882 * config.make.in (have-z-execstack): New variable set by it.
3883 * elf/tst-execstack.c: New file.
3884 * elf/tst-execstack-mod.c: New file.
3885 * elf/tst-execstack-needed.c: New file.
3886 * elf/Makefile (tests-execstack-yes, modules-execstack-yes): New
3888 (tests, modules-names): Conditionally include them.
3889 (distribute): Add tst-execstack-mod.c here.
3890 ($(objpfx)tst-execstack, $(objpfx)tst-execstack.out): New targets.
3891 (LDFLAGS-tst-execstack, LDFLAGS-tst-execstack-mod): New variables.
3892 ($(objpfx)tst-execstack-needed): New target.
3893 (LDFLAGS-tst-execstack-needed): New variable.
3895 * sysdeps/generic/ldsodefs.h (struct rtld_global): Add _dl_stack_flags
3896 and _dl_make_stack_executable_hook. Declare _dl_make_stack_executable.
3897 * elf/rtld.c (_rtld_global): Add initializer for _dl_stack_flags.
3898 (dl_main): Reset _dl_stack_flags according to PT_GNU_STACK phdr.
3899 Initialize _dl_make_stack_executable_hook.
3900 * elf/dl-support.c: Define those new variables.
3901 (_dl_non_dynamic_init): Scan phdrs for PT_GNU_STACK.
3902 (_dl_phdr): Fix type.
3903 * elf/dl-load.c (_dl_map_object_from_fd): Grok PT_GNU_STACK phdr and
3904 enable execute permission for the stack if necessary.
3905 * sysdeps/generic/dl-execstack.c: New file.
3906 * elf/Makefile (dl-routines): Add it.
3907 * elf/Versions (ld: GLIBC_PRIVATE): Add _dl_make_stack_executable.
3908 * sysdeps/unix/sysv/linux/dl-execstack.c: New file.
3910 2003-09-23 Ulrich Drepper <drepper@redhat.com>
3912 * sysdeps/posix/sprofil.c (pc_to_index): Remove inline marker.
3914 2003-09-20 Alfred M. Szmidt <ams@kemisten.nu>
3916 * sysdeps/generic/utmp_file.c (setutent_file, LOCK_FILE,
3917 UNLOCK_FILE, setutent_file): Use fcntl_not_cancel instead of
3920 2003-09-22 Ulrich Drepper <drepper@redhat.com>
3922 * malloc/malloc.c: Include <stdint.h>.
3924 2003-09-20 Paolo Bonzini <bonzini@gnu.org>
3926 * posix/regcomp.c (build_word_op): Rename like...
3927 (build_charclass_op): ...this. Accept two extra parameters,
3928 CLASS_NAME and EXTRA. Add EXTRA to the result, not only _.
3929 (peek_token): Accept \s and \S as OP_SPACE and OP_NOTSPACE.
3930 (parse_expression): Replace build_word_op with
3931 build_charclass_op, add new arguments, accept OP_SPACE
3933 * posix/regex_internal.h (re_token_type_t): Add OP_SPACE
3936 * posix/regcomp.c (peek_token): Don't look back for ( or |
3937 to check whether to treat a caret as special. It fails
3938 for the (extended) regex \(^.
3939 (parse, parse_reg_exp): Pass RE_CARET_ANCHORS_HERE to fetch_token.
3940 * posix/regex.h: Define RE_CARET_ANCHORS_HERE.
3942 * posix/regexec.c: Check out of bounds value before shifting.
3944 * posix/regex_internal.h: Define __attribute for non-gcc.
3946 2003-09-22 Jakub Jelinek <jakub@redhat.com>
3948 * include/atomic.h (atomic_compare_and_exchange_val_rel,
3949 atomic_compare_and_exchange_bool_rel): Swap oldval/newval arguments
3952 * sysdeps/unix/opendir.c: Include string.h.
3954 2003-09-22 Ulrich Drepper <drepper@redhat.com>
3956 * timezone/zdump.c: Update from tzcode2003c.
3957 * timezone/zic.c: Likewise.
3958 * timezone/leapseconds: Update from tzdata2003c.
3960 2003-09-19 Ulrich Drepper <drepper@redhat.com>
3962 * elf/Makefile ($(objpfx)librtld.os): Create link map also for
3963 final build to ease quality control.
3965 * sysdeps/unix/sysv/linux/getcwd.c (__getcwd): If compiled for
3966 ld.so, don't include NULL buffer pointer handling.
3968 2003-09-19 Jakub Jelinek <jakub@redhat.com>
3970 * dlfcn/dlopen.c (dlopen): Add static_link_warning.
3972 2003-09-18 Jakub Jelinek <jakub@redhat.com>
3974 * libio/memstream.c (open_memstream): Use _IO_init instead of
3977 2003-09-17 Ulrich Drepper <drepper@redhat.com>
3979 * sysdeps/generic/wordexp.c (eval_expr_val): Use strtol since we
3980 have to recognize octal and hexadecimal numbers as well. Simplify
3981 function, signs are handled in strtol.
3982 * posix/wordexp-test.c: Add tests for octal and hexadecimal
3983 numbers in arithmetic expressions.
3985 2003-09-17 Jakub Jelinek <jakub@redhat.com>
3987 * elf/Makefile (distribute): Add tst-alignmod.c.
3988 (tests): Add tst-align.
3989 (modules-names): Add tst-alignmod.
3990 (CFLAGS-tst-align.c, CFLAGS-tst-alignmod.c): Add
3991 $(stack-align-test-flags).
3992 ($(objpfx)tst-align): Depend on libdl.
3993 ($(objpfx)tst-align.out): Depend on tst-alignmod.so.
3994 * elf/tst-align.c: New file.
3995 * elf/tst-alignmod.c: New file.
3996 * misc/Makefile (CFLAGS-tst-tsearch.c): Add $(stack-align-test-flags).
3997 * misc/tst-tsearch.c: Include tst-stack-align.h.
3998 (stack_align_check): New array.
3999 (cmp_fn, walk_action): Use TEST_STACK_ALIGN ().
4000 (main): Report error if stack was not enough aligned
4001 in cmp_fn or walk_action.
4002 * stdlib/Makefile (CFLAGS-tst-qsort.c): Add $(stack-align-test-flags).
4003 * stdlib/tst-qsort.c: Include tst-stack-align.h.
4004 (align_check): New var.
4005 (compare): Use TEST_STACK_ALIGN () macro.
4006 (main): Report error if stack was not enough aligned in compare.
4007 * sysdeps/i386/i686/Makefile (stack-align-test-flags): Remove
4008 unneeded -mpreferred-stack-boundary=4.
4009 * sysdeps/x86_64/tst-stack-align.h: New file.
4011 * libio/memstream.c (_IO_wmem_jumps): Remove unused structure.
4012 (_IO_wmem_sync, _IO_wmem_finish): Remove unused functions.
4014 2003-09-17 Philip Blundell <philb@gnu.org>
4016 * sysdeps/arm/dl-machine.h (CALL_ROUTINE): Deleted.
4018 (ELF_MACHINE_RUNTIME_TRAMPOLINE): Optimise a little.
4020 * sysdeps/arm/sysdep.h (DO_RET): New.
4022 * sysdeps/unix/sysv/linux/arm/vfork.S: Add #error if __NR_vfork
4023 required but not defined. Improve test of error code.
4025 2003-09-17 Jakub Jelinek <jakub@redhat.com>
4027 * sysdeps/i386/Makefile (stack-align-test-flags): Add
4028 -malign-double -mpreferred-stack-boundary=4.
4030 2003-09-17 Ulrich Drepper <drepper@redhat.com>
4032 * sysdeps/posix/utimes.c (__utimes): Truncate instead of round.
4033 * sysdeps/unix/sysv/linux/utimes.c (__utimes): Likewise.
4035 2003-09-15 Jakub Jelinek <jakub@redhat.com>
4037 * sysdeps/i386/Makefile (sysdep-CFLAGS): If not in math or csu
4038 subdir, add -mpreferred-stack-boundary=4, with few exceptions.
4040 2003-09-17 Jakub Jelinek <jakub@redhat.com>
4042 * Makeconfig (stack-align-test-flags): Set.
4043 * stdlib/Makefile (CFLAGS-tst-bsearch.c): Add
4044 $(stack-align-test-flags).
4045 * stdlib/tst-bsearch.c: Include tst-stack-align.h.
4046 (align_check): New var.
4047 (comp): Use TEST_STACK_ALIGN macro.
4048 (do_test): Fail if align_check != 1.
4049 * sysdeps/generic/tst-stack-align.h: New file.
4050 * sysdeps/i386/i686/Makefile (stack-align-test-flags): Add -msse.
4051 * sysdeps/i386/i686/tst-stack-align.h: New file.
4053 2003-09-17 Ulrich Drepper <drepper@redhat.com>
4055 * sysdeps/unix/sysv/linux/i386/clone.S: Make sure child gets a
4056 stack which is aligned (mod 16).
4058 2003-09-17 Uwe Reimann <Uwe_Reimann@gmx.net>
4059 Hans-Peter Nilsson <hp@axis.com>
4061 * sysdeps/cris/dl-machine.h (elf_machine_type_class): Classify
4062 R_CRIS_GLOB_DAT as ELF_RTYPE_CLASS_PLT. Clarify comment.
4064 2003-09-17 Jakub Jelinek <jakub@redhat.com>
4066 * dirent/scandir.c: Include bits/libc-lock.h.
4067 (struct scandir_cancel_struct): New type.
4068 (cancel_handler): New function.
4069 (SCANDIR): Add __libc_cleanup_{push,pop}, save state into
4070 scandir_cancel_struct.
4072 2003-09-16 Ulrich Drepper <drepper@redhat.com>
4074 * sysdeps/unix/sysv/linux/Dist: Remove internal_statvfs.c.
4075 * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
4076 Add internal_statvfs.
4077 * sysdeps/unix/sysv/linux/fstatvfs.c: Call __internal_statvfs
4078 instead of including "internal_statvfs.c".
4079 * sysdeps/unix/sysv/linux/statvfs.c: Likewise.
4080 * sysdeps/unix/sysv/linux/internal_statvfs.c: Make it a real function.
4081 Add code to avoid the stat calls on all the reported mount points
4082 when we can determine mismatch in advance.
4083 * sysdeps/unix/sysv/linux/linux_fsinfo.h: Add AUTOFS_SUPER_MAGIC and
4084 USBDEVFS_SUPER_MAGIC.
4086 2003-09-16 Jakub Jelinek <jakub@redhat.com>
4088 * posix/Versions (sched_getaffinity, sched_setaffinity): Change
4089 from GLIBC_2.3.2 to GLIBC_2.3.3 symbol version.
4091 2003-09-16 Bruno Haible <bruno@clisp.org>
4093 * intl/tst-gettext2.sh: Set GCONV_PATH and LOCPATH only after
4094 invoking msgfmt, not before.
4096 2003-09-15 Jakub Jelinek <jakub@redhat.com>
4098 * argp/argp.h (argp_parse, __argp_parse): Remove __THROW.
4099 * argp/Makefile (CFLAGS-argp-help.c, CFLAGS-argp-parse.c): Add
4101 * dirent/Makefile (CFLAGS-scandir.c, CFLAGS-scandir64.c): Likewise.
4102 * elf/Makefile (CFLAGS-dl-iterate-phdr.c,
4103 CFLAGS-dl-iterate-phdr-static.c): Add $(uses-callbacks).
4104 * elf/dl-iteratephdr.c (cancel_handler): New function.
4105 (__dl_iterate_phdr): Add __libc_cleanup_{push,pop}.
4106 * elf/link.h (dl_iterate_phdr): Remove __THROW.
4107 * io/Makefile (CFLAGS-fts.c): Merge into one assignment.
4108 Add $(uses-callbacks).
4109 (CFLAGS-ftw.c, CFLAGS-ftw64.c): Add $(uses-callbacks).
4110 * misc/Makefile (CFLAGS-tsearch.c, CFLAGS-lsearch.c): Change
4111 $(exceptions) to $(uses-callbacks).
4112 * Makeconfig (uses-callbacks): Set to $(exceptions).
4113 * posix/Makefile (CFLAGS-glob.c, CFLAGS-glob64.c): Add