* time/asctime.c (asctime_internal): New function, derived from
asctime_r. Takes additional parameter which is the buffer length.
Use snprintf instead sprintf, if it overflows, fail.
(asctime_r): Call asctime_internal with 26 as buffer length.
(asctime): Call asctime_internal with length of internal buffer.
* time/Makefile (tests): Add bug-asctime_r.
* time/bug-asctime_r.c: New file.
* time/asctime.c (__asctime_r): Check for tm_year computation to
overflow and fail in this case.
* time/Makefile (tests): Add bug-asctime.
* time/bug-asctime.c: New file.
* sysdeps/generic/s_csqrt.c (__csqrt): For zero real part, return
principal square root.
* sysdeps/generic/s_csqrtf.c (__csqrtf): Likewise.
* sysdeps/generic/s_csqrtl.c (__csqrtl): Likewise.
* math/libm-test.inc (csqrt_test): Add test for returning
principal value.
* malloc/malloc.c (struct malloc_state): Replace max_fast with flags
fields.
(global_max_fast): New variable.
(set_max_fast): Change to not require arena parameter and to modify
global_max_fast. Change all callers.
(get_max_fast): New macro. Use this instead of directly accessing
now removed max_fast arena member.
(have_fastchunks): Use flags instead of max_fast.
(clear_fastchunks): Likewise.
(set_fastchunks): Likewise.
(contiguous): Likewise.
(noncontiguous): Likewise.
(set_noncontiguous): Likewise.
(set_contiguous): Likewise.
(malloc_init_state): Explicitly set FASTCHUNKS_BIT. Call set_max_fast
only for main arena.
* malloc/hooks.c (public_sET_STATe): Adjust set_max_fast use.
2005-10-07 Roland McGrath <roland@redhat.com>
[BZ #1438]
* include/features.h: Make tests on _FORTIFY_SOURCE and __OPTIMIZE__
friendly to -Wundef.
(__USE_FORTIFY_LEVEL): Always define it, to 0 if nothing else.
2005-10-07 Roland McGrath <roland@redhat.com>
[BZ #1438]
* include/features.h: Make tests on _FORTIFY_SOURCE and __OPTIMIZE__
friendly to -Wundef.
(__USE_FORTIFY_LEVEL): Always define it, to 0 if nothing else.
Use ARCH_PLTENTER_MEMBERS and ARCH_PLTEXIT_MEMBERS macros if defined.
* elf/tst-auditmod1.c: Include <tst-audit.h> to define more
architecture-specific code.
* sysdeps/generic/tst-audit.h: New file.
* elf/Makefile (distribute): Add it.
Jakub Jelinek <jakub@redhat.com>
* descr.h: Define SETXID_BIT and SETXID_BITMASK. Adjust
CANCEL_RESTMASK.
(struct pthread): Move specific_used field to avoid padding.
Add setxid_futex field.
* init.c (sighandler_setxid): Reset setxid flag and release the
setxid futex.
* allocatestack.c (setxid_signal_thread): New function. Broken
out of the bodies of the two loops in __nptl_setxid. For undetached
threads check whether they are exiting and if yes, don't send a signal.
(__nptl_setxid): Simplify loops by using setxid_signal_thread.
* pthread_create.c (start_thread): For undetached threads, check
whether setxid bit is set. If yes, wait until signal has been
processed.
* allocatestack.c (STACK_VARIABLES): Initialize them.
* pthread_create.c (__pthread_create_2_1): Initialize pd.
check_arrival_add_next_nodes): Avoid using uninitialized variable.
* malloc/memusage.c (dest): Fix a bunch of warnings on 32-bit arches.
* sysdeps/i386/fpu/libm-test-ulps: Update for GCC 4.0.x.
check_arrival_add_next_nodes): Avoid using uninitialized variable.
* malloc/memusage.c (dest): Fix a bunch of warnings on 32-bit arches.
* sysdeps/i386/fpu/libm-test-ulps: Update for GCC 4.0.x.
IBM1008, IBM1008_420, IBM1097, IBM1112, IBM1123, IBM1130, IBM1140,
IBM1141, IBM1142, IBM1143, IBM1144, IBM1145, IBM1146, IBM1147, IBM1148,
IBM1149, IBM1166, IBM1167, IBM4517, IBM4899, IBM4909, IBM4971,
IBM5347, IBM9030, IBM9066, IBM9448, IBM12712, IBM16804.
(distribute): Add ibm803.c, ibm803.h, ibm901.c, ibm901.h, ibm902.c,
ibm902.h, ibm921.c, ibm921.h, ibm1008.c, ibm1008.h, ibm1008_420.c,
ibm1097.c, ibm1097.h, ibm1112.c, ibm1112.h, ibm1123.c, ibm1123.h,
ibm1130.c, ibm1130.h, ibm1140.c, ibm1140.h, ibm1141.c, ibm1141.h,
ibm1142.c, ibm1142.h, ibm1143.c, ibm1143.h, ibm1144.c, ibm1144.h,
ibm1145.c, ibm1145.h, ibm1146.c, ibm1146.h, ibm1147.c, ibm1147.h,
ibm1148.c, ibm1148.h, ibm1149.c, ibm1149.h, ibm1166.c, ibm1166.h,
ibm1167.c, ibm1167.h, ibm4517.c, ibm4517.h, ibm4899.c, ibm4899.h,
ibm4909.c, ibm4909.h, ibm4971.c, ibm4971.h, ibm5347.c, ibm5347.h,
ibm9030.c, ibm9030.h, ibm9066.c, ibm9066.h, ibm9448.c, ibm9448.h,
ibm12712.c, ibm12712.h, ibm16804.c, ibm16804.h.
* iconvdata/TESTS: Add entries for new modules.
* iconvdata/gconv-modules: Likewise.
* iconvdata/ibm803.c: New file.
* iconvdata/ibm803.h: New file.
* iconvdata/ibm901.c: New file.
* iconvdata/ibm901.h: New file.
* iconvdata/ibm902.c: New file.
* iconvdata/ibm902.h: New file.
* iconvdata/ibm921.c: New file.
* iconvdata/ibm921.h: New file.
* iconvdata/ibm1008.c: New file.
* iconvdata/ibm1008.h: New file.
* iconvdata/ibm1008_420.c: New file.
* iconvdata/ibm1097.c: New file.
* iconvdata/ibm1097.h: New file.
* iconvdata/ibm1112.c: New file.
* iconvdata/ibm1112.h: New file.
* iconvdata/ibm1123.c: New file.
* iconvdata/ibm1123.h: New file.
* iconvdata/ibm1130.c: New file.
* iconvdata/ibm1130.h: New file.
* iconvdata/ibm1140.c: New file.
* iconvdata/ibm1140.h: New file.
* iconvdata/ibm1141.c: New file.
* iconvdata/ibm1141.h: New file.
* iconvdata/ibm1142.c: New file.
* iconvdata/ibm1142.h: New file.
* iconvdata/ibm1143.c: New file.
* iconvdata/ibm1143.h: New file.
* iconvdata/ibm1144.c: New file.
* iconvdata/ibm1144.h: New file.
* iconvdata/ibm1145.c: New file.
* iconvdata/ibm1145.h: New file.
* iconvdata/ibm1146.c: New file.
* iconvdata/ibm1146.h: New file.
* iconvdata/ibm1147.c: New file.
* iconvdata/ibm1147.h: New file.
* iconvdata/ibm1148.c: New file.
* iconvdata/ibm1148.h: New file.
* iconvdata/ibm1149.c: New file.
* iconvdata/ibm1149.h: New file.
* iconvdata/ibm1166.c: New file.
* iconvdata/ibm1166.h: New file.
* iconvdata/ibm1167.c: New file.
* iconvdata/ibm1167.h: New file.
* iconvdata/ibm4517.c: New file.
* iconvdata/ibm4517.h: New file.
* iconvdata/ibm4899.c: New file.
* iconvdata/ibm4899.h: New file.
* iconvdata/ibm4909.c: New file.
* iconvdata/ibm4909.h: New file.
* iconvdata/ibm4971.c: New file.
* iconvdata/ibm4971.h: New file.
* iconvdata/ibm5347.c: New file.
* iconvdata/ibm5347.h: New file.
* iconvdata/ibm9030.c: New file.
* iconvdata/ibm9030.h: New file.
* iconvdata/ibm9066.c: New file.
* iconvdata/ibm9066.h: New file.
* iconvdata/ibm9448.c: New file.
* iconvdata/ibm9448.h: New file.
* iconvdata/ibm12712.c: New file.
* iconvdata/ibm12712.h: New file.
* iconvdata/ibm16804.c: New file.
* iconvdata/ibm16804.h: New file.
* iconvdata/testdata/IBM803: New file.
* iconvdata/testdata/IBM803..UTF8: New file.
* iconvdata/testdata/IBM901: New file.
* iconvdata/testdata/IBM901..UTF8: New file.
* iconvdata/testdata/IBM902: New file.
* iconvdata/testdata/IBM902..UTF8: New file.
* iconvdata/testdata/IBM921: New file.
* iconvdata/testdata/IBM921..UTF8: New file.
* iconvdata/testdata/IBM1008: New file.
* iconvdata/testdata/IBM1008..UTF8: New file.
* iconvdata/testdata/IBM1097: New file.
* iconvdata/testdata/IBM1097..UTF8: New file.
* iconvdata/testdata/IBM1112: New file.
* iconvdata/testdata/IBM1112..UTF8: New file.
* iconvdata/testdata/IBM1123: New file.
* iconvdata/testdata/IBM1123..UTF8: New file.
* iconvdata/testdata/IBM1130: New file.
* iconvdata/testdata/IBM1130..UTF8: New file.
* iconvdata/testdata/IBM1140: New file.
* iconvdata/testdata/IBM1140..UTF8: New file.
* iconvdata/testdata/IBM1141: New file.
* iconvdata/testdata/IBM1141..UTF8: New file.
* iconvdata/testdata/IBM1142: New file.
* iconvdata/testdata/IBM1142..UTF8: New file.
* iconvdata/testdata/IBM1143: New file.
* iconvdata/testdata/IBM1143..UTF8: New file.
* iconvdata/testdata/IBM1144: New file.
* iconvdata/testdata/IBM1144..UTF8: New file.
* iconvdata/testdata/IBM1145: New file.
* iconvdata/testdata/IBM1145..UTF8: New file.
* iconvdata/testdata/IBM1146: New file.
* iconvdata/testdata/IBM1146..UTF8: New file.
* iconvdata/testdata/IBM1147: New file.
* iconvdata/testdata/IBM1147..UTF8: New file.
* iconvdata/testdata/IBM1148: New file.
* iconvdata/testdata/IBM1148..UTF8: New file.
* iconvdata/testdata/IBM1149: New file.
* iconvdata/testdata/IBM1149..UTF8: New file.
* iconvdata/testdata/IBM1166: New file.
* iconvdata/testdata/IBM1166..UTF8: New file.
* iconvdata/testdata/IBM1167: New file.
* iconvdata/testdata/IBM1167..UTF8: New file.
* iconvdata/testdata/IBM4517: New file.
* iconvdata/testdata/IBM4517..UTF8: New file.
* iconvdata/testdata/IBM4899: New file.
* iconvdata/testdata/IBM4899..UTF8: New file.
* iconvdata/testdata/IBM4909: New file.
* iconvdata/testdata/IBM4909..UTF8: New file.
* iconvdata/testdata/IBM4971: New file.
* iconvdata/testdata/IBM4971..UTF8: New file.
* iconvdata/testdata/IBM5347: New file.
* iconvdata/testdata/IBM5347..UTF8: New file.
* iconvdata/testdata/IBM9030: New file.
* iconvdata/testdata/IBM9030..UTF8: New file.
* iconvdata/testdata/IBM9066: New file.
* iconvdata/testdata/IBM9066..UTF8: New file.
* iconvdata/testdata/IBM9448: New file.
* iconvdata/testdata/IBM9448..UTF8: New file.
* iconvdata/testdata/IBM12712: New file.
* iconvdata/testdata/IBM12712..UTF8: New file.
* iconvdata/testdata/IBM16804: New file.
* iconvdata/testdata/IBM16804..UTF8: New file.
* iconvdata/run-iconv-test.sh: Run ASCII->encoding->ASCII suntzus
test only if $subset is N.
2005-09-29 Roland McGrath <roland@redhat.com>
[BZ #1392]
* posix/sys/wait.h (__WAIT_INT): Rewrite using an initializer,
in case __typeof yields a const-qualified type.
2005-09-29 Roland McGrath <roland@redhat.com>
[BZ #1392]
* posix/sys/wait.h (__WAIT_INT): Rewrite using an initializer,
in case __typeof yields a const-qualified type.
* dirent/Versions: Export fdopendir for GLIBC_2.4.
* dirent/Makefile (routines): Add fdopendir.
(tests): Add tst-fdopendir.
* dirent/tst-fdopendir.c: New file.
* include/dirent.h: Declare __alloc_dir.
* sysdeps/generic/fdopendir.c: New file.
* sysdeps/unix/fdopendir.c: New file.
* sysdeps/unix/opendir.c: Split off back part of opendir into new
function __alloc_dir.