
1: 2007-10-17 Jakub Jelinek <jakub@redhat.com> 2: 3: * sysdeps/x86_64/memset.S (bzero): Renamed to __bzero. Add 4: weak_alias. 5: 6: 2007-10-17 Roland McGrath <roland@frob.com> 7: 8: * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU__] (F_DUPFD_CLOEXEC): New. 9: * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Implement it. 10: 11: 2007-10-17 Ulrich Drepper <drepper@redhat.com> 12: 13: * version.h (VERSION): Bump to 2.7. 14: * include/features.h (__GLIBC_MINOR__): Bump to 7. 15: 16: [BZ #5186] 17: * time/tzset.c (__tz_convert): Don't force testing for a change of 18: TZ if not called from localtime. But then also see whether the 19: file changed, in case __use_tzfile is set. 20: 21: * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define F_DUPFD_CLOEXEC. 22: * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. 23: * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise. 24: * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. 25: * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise. 26: * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. 27: * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. 28: * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise. 29: 30: 2007-10-17 Jakub Jelinek <jakub@redhat.com> 31: 32: * sysdeps/posix/getaddrinfo.c (getaddrinfo): When sorting addresses 33: and admin selects to be able to replace the gai.conf file, lock 34: data structures around the qsort call. 35: 36: 2007-10-17 Ulrich Drepper <drepper@redhat.com> 37: 38: * sysdeps/x86_64/cacheinfo.c: Comment out code added in support of 39: new memset. 40: * sysdeps/x86_64/memset.S: Revert to old version for now. The cost is 41: too high for the improvements. Implement bzero unconditionally for 42: use in libc. 43: 44: 2007-10-17 Ulrich Drepper <drepper@redhat.com> 45: Jakub Jelinek <jakub@redhat.com> 46: 47: * time/tzfile.c (__tzfile_read): Read POSIX TZ string if available 48: even when time_t is 32-bit. 49: (__tzfile_compute): Override POSIX TZ string STD/DST zone names if 50: timezone data read by __tzfile_default. Ensure __tzname[0] is 51: always set after the search. 52: 53: 2007-10-16 Ulrich Drepper <drepper@redhat.com> 54: 55: * time/tzfile.c (__tzfile_read): Help the compiler recognize 56: unreachable code on 32-bit machines. 57: 58: 2007-10-16 Jakub Jelinek <jakub@redhat.com> 59: 60: [BZ #5184] 61: * time/strftime_l.c: Include stdbool.h. 62: (my_strftime): New wrapper, old function renamed to... 63: (__strftime_internal): ... new function. Add tzset_called 64: argument, pass it down to recursive calls, don't call tzset () 65: if already true, set to true after call to tzset (). 66: 67: 2007-10-16 Ulrich Drepper <drepper@redhat.com> 68: 69: * time/tzfile.c (__tzfile_read): Take extra memory requested by caller 70: into account when copying TZ string. 71: 72: 2007-10-16 Jakub Jelinek <jakub@redhat.com> 73: 74: * time/tzfile.c (__tzfile_compute): For use_last case set i to 75: num_transition rather than num_transitions - 1. 76: 77: 2007-10-16 Jakub Jelinek <jakub@redhat.com> 78: 79: * sysdeps/x86_64/memset.S (memset): Fix sse2_nt_move 80: PIC indirect jump. 81: 82: * sysdeps/x86_64/memset.S: Jump from bzero to memset using 83: a local label rather than HIDDEN_JUMPTARGET. 84: 85: 2007-10-15 Ulrich Drepper <drepper@redhat.com> 86: 87: * sysdeps/x86_64/cacheinfo.c (__x86_64_shared_cache_size): Define. 88: (init_cacheinfo): Initialize it. 89: * sysdeps/x86_64/memset.S: Use __x86_64_shared_cache_size. 90: Always define bzero. 91: Remove non-glibc code. 92: * sysdeps/x86_64/bzero.S: Make an empty file. 93: 94: 2007-10-15 H.J. Lu <hongjiu.lu@intel.com> 95: 96: * sysdeps/x86_64/cacheinfo.c 97: (__x86_64_preferred_memory_instruction): New. 98: (init_cacheinfo): Initialize __x86_64_preferred_memory_instruction. 99: 100: * sysdeps/x86_64/memset.S: Rewrite. 101: 102: 2007-10-15 Roland McGrath <roland@redhat.com> 103: 104: * po/libc.pot: Regenerated. 105: 106: 2007-10-15 Ulrich Drepper <drepper@redhat.com> 107: 108: * nss/getXXbyYY_r.c (REENTRANT_NAME): Mangle startp and start_fct 109: pointers. 110: 111: [BZ #3425] 112: * resolv/nss_dns/dns-host.c (getanswer_r): Fail with 113: NSS_STATUS_NOTFOUND if the server replied with only a CNAME and no 114: address record to T_A/T_AAAA requests. 115: 116: 2007-10-14 Ulrich Drepper <drepper@redhat.com> 117: 118: * posix/glob.c: Reimplement link_exists_p to use fstatat64. 119: 120: * posix/glob.c: Add some branch prediction throughout. 121: 122: * nscd/nscd_getgr_r.c (nscd_getgr_r): Store result of successful 123: read from nscd. 124: 125: * sysdeps/posix/getaddrinfo.c (struct sort_result): Add 126: service_order. 127: (rfc3484_sort): Make sure that even if qsort doesn't support 128: stable sorting out sorting here is stable by comparing service_order. 129: (getaddrinfo): Initialize service_order. 130: * posix/tst-rfc3484.c (do_test): Adjust for addition of 131: service_order field to sorting structure. 132: * posix/tst-rfc3484-2.c (do_test): Likewise. 133: 134: * include/time.h: Declare __tzset_parse_tz and __tzset_compute. 135: * time/tzset.c (tzset_internal): Break TZ string parsing out into 136: __tzset_parse_tz and updating of daylight, timezone, tzname into 137: update_vars. 138: (__tz_compute): Renamed from tz_compute. Take additional parameters. 139: (__tz_convert): Updating of tm_isdst, tm_zone, and tm_gmtoff now 140: happens in __tz_compute. 141: * time/tzfile.c (__tzfile_read): Also read TZ string. 142: (find_transition): Fold into __tzfile_compute. 143: (__tzfile_compute): For times beyond the last transition try to 144: use the TZ string. 145: * timezone/tst-timezone.c: Information in daylight and tzname does 146: change for Asia/Tokyo timezone with more concrete information. 147: Remove the test. 148: 149: * include/stdio.h: Add libc_hidden_proto for ftello. 150: * libio/ftello.c: Add libc_hidden_def. 151: 152: [BZ #1140] 153: * time/tzfile.c (__tzfile_compute): Compute tzname[] values based 154: on the specified time and not the last entries in the file. Move 155: code to determine tzname[] to... 156: (find_transition): ...here. Add ugly guess for times before the 157: first transition. 158: 159: 2007-10-13 Ulrich Drepper <drepper@redhat.com> 160: 161: [BZ #3195] 162: * nscd/nscd_getai.c (__nscd_getai): Set errno to 0 in case we found 163: no entry. 164: * nscd/nscd_getgr.c (nscd_getgr_r): Likewise. 165: * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise. 166: * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise. 167: * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise. 168: 169: * nscd/nscd_getgr_r.c (nscd_getgr_r): Optimize a bit: use simpler 170: read mechanism when there are no group members and avoid no-op 171: read syscall in this case. 172: 173: [BZ #3242] 174: * nscd/nscd_helper.c (wait_on_socket): Take timeout as parameter. 175: (__readall): If reading failed due to EAGAIN error wait a bit 176: and possibly try again. 177: (__readvall): Likewise. 178: 179: 2007-10-13 Bruno Haible <bruno@clisp.org> 180: 181: * intl/dcigettext.c (_nl_find_msg): Unlock the conversions_lock 182: when we cannot recode the message. 183: 184: 2007-10-13 Ulrich Drepper <drepper@redhat.com> 185: 186: [BZ #4359] 187: * libio/__freading.c (__freading): Don't return true for 188: write-only streams. For read/write streams, check whether we 189: performed a read operation already. 190: * libio/Makefile (tests): Add tst-ext2. 191: * libio/tst-ext2.c: New file. 192: 193: 2007-10-12 Ulrich Drepper <drepper@redhat.com> 194: 195: * locale/programs/repertoire.c (repertoire_read): Always free 196: memory for repertoire file name [Coverity CID 270]. 197: 198: * elf/cache.c (save_aux_cache): Free memory allocated for 199: temporary file name [Coverity CID 267]. 200: 201: 2007-10-12 Jakub Jelinek <jakub@redhat.com> 202: 203: * misc/Makefile (headers): Add bits/error.h. 204: 205: 2007-10-12 Ulrich Drepper <drepper@redhat.com> 206: 207: * posix/fnmatch_loop.c: Take rule index returned as part of 208: findidx return value into account when accessing weights. 209: * posix/regcomp.c: Likewise. 210: * posix/regexec.c: Likewise. 211: 212: * locale/programs/ld-collate.c (collate_read): Optimize a bit. 213: (skip_to): Fix problems with parameter of elifdef/elifndef. 214: 215: 2007-10-11 Ulrich Drepper <drepper@redhat.com> 216: 217: * iconv/gconv_simple.c: Add some branch prediction. 218: 219: 2007-10-12 Jakub Jelinek <jakub@redhat.com> 220: 221: * locale/programs/ld-collate.c (collate_read): If ignore_content 222: and nowtok is tok_define, eat any tok_eol tokens. 223: 224: 2007-10-11 Jakub Jelinek <jakub@redhat.com> 225: 226: * sysdeps/gnu/netinet/tcp.h: Include sys/socket.h if __USE_MISC. 227: (struct tcp_md5sig): Change tcpm_addr type to struct sockaddr_storage. 228: 229: * inet/netinet/in.h: Don't include bits/socket.h. 230: * sysdeps/unix/sysv/linux/bits/socket.h: Only check _SYS_SOCKET_H 231: macro. 232: * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise. 233: 234: 2007-10-10 Ulrich Drepper <drepper@redhat.com> 235: 236: * locale/programs/locfile-token.h: Remove tok_elif, add tok_elifdef 237: and tok_elifndef. 238: * locale/programs/locfile-kw.gperf: Likewise. 239: * locale/programs/ld-collate.c: Implement primitive preprocessor. 240: 241: 2007-10-10 Jakub Jelinek <jakub@redhat.com> 242: 243: * stdio-common/printf-parse.h: Include string.h and wchar.h. 244: (__find_specwc): Change into __extern_always_inline function. 245: (__find_specmb): Likewise. Remove ps argument. Use __strchrnul. 246: (__parse_one_specmb): Remove ps argument. 247: * stdio-common/vfprintf.c (vfprintf): Remove mbstate variable. 248: Adjust __find_specmb and __parse_one_specmb callers. 249: * stdio-common/printf-prs.c (parse_printf_format): Likewise. 250: * stdio-common/printf-parsemb.c (__find_specwc, __find_specmb): 251: Removed. 252: (__parse_one_specmb): Remove ps argument, adjust __find_specmb 253: caller. 254: 255: 2007-10-09 Ulrich Drepper <drepper@redhat.com> 256: 257: * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Work around problem 258: with some Pentium Ds. 259: 260: 2007-10-08 Ulrich Drepper <drepper@redhat.com> 261: 262: * sysdeps/unix/sysv/linux/eventfd_read.c (eventfd_read): Use 263: __read not read. 264: * sysdeps/unix/sysv/linux/eventfd_write.c (eventfd_write): Use 265: __write not write. 266: 267: 2007-10-07 Ulrich Drepper <drepper@redhat.com> 268: 269: [BZ #181] 270: * locale/C-time.c: Set week_1stday data to 19971201. 271: * locale/programs/ld-time.c (time_finish): Default for 272: first_workday is Monday. 273: 274: [BZ #2633] 275: * wcsmbs/wchar.h: Move many C99 functions into std namespace. 276: 277: [BZ #5103] 278: * posix/glob.c (glob): Recognize patterns starting \/. 279: * posix/tst-gnuglob.c (find_file): Handle absolute path names. 280: (main): Add test for pattern starting \/. 281: 282: * misc/error.h: Use __const instead of const. 283: * misc/bits/error.h: Likewise. 284: 285: 2007-10-07 Andreas Jaeger <aj@suse.de> 286: 287: * include/bits/error.h: New file. 288: 289: * misc/bits/error.h (error_at_line): Fix prototype. 290: 291: 2007-10-06 Ulrich Drepper <drepper@redhat.com> 292: 293: [BZ #3924] 294: * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Fix a few 295: more little bugs in creating the stack frame when pltexit has to 296: be called. 297: 298: * nscd/nscd_helper.c (__nscd_cache_search): Prevent endless loops. 299: * nscd/connections.c (verify_persistent_db): Recognize circular lists. 300: 301: [BZ #4407] 302: * sysdeps/ieee754/dbl-64/e_lgamma_r.c: Fix *signgamp for -0.0. 303: * sysdeps/ieee754/flt-32/e_lgammaf_r.c: Likewise. 304: * sysdeps/ieee754/ldbl-96/e_lgammal_r.c: Likewise. 305: * math/libm-test.inc: Add test for this case. 306: 307: [BZ #5010] 308: * sunrpc/svc.c (struct svc_callout): Add sc_mapped element. 309: (svc_register): Initialize sc_mapped. Set to TRUE if call to 310: map service succeeded. 311: (svc_is_mapped): New function. 312: (svc_unregister): Use it before trying to unmap service. 313: 314: 2007-10-05 Ulrich Drepper <drepper@redhat.com> 315: 316: * timezone/zic.c: Update from tzcode2007h. 317: 318: [BZ #5063] 319: * timezone/africa: Update from tzdata2007h. 320: * timezone/antarctica: Likewise. 321: * timezone/asia: Likewise. 322: * timezone/australasia: Likewise. 323: * timezone/europe: Likewise. 324: * timezone/leapseconds: Likewise. 325: * timezone/northamerica: Likewise. 326: * timezone/southamerica: Likewise. 327: * timzeone/zone.tab: Likewise. 328: 329: [BZ #5104] 330: * elf/do-lookup.h (do_lookup_x): Don't ignore STT_COMMON symbols. 331: 332: [BZ #5113] 333: * string/bits/string2.h (__strdup): Cast parameters to calloc to 334: avoid warning with -Wconversion. 335: (__strndup): Likewise. 336: Half the patch by Christian Iseli <christian.iseli@licr.org>. 337: 338: [BZ #5112] 339: * nscd/connections.c (restart): Don't resync if database is 340: disabled. Patch mostly by Brian De Wolf <bldewolf@csupomona.edu>. 341: 342: * sysdeps/gnu/netinet/tcp.h: Define TCP_MD5SIG, TCP_MD5SIG_MAXKEYLEN, 343: struct tcp_md5sig. Extend struct tcp_info according to recent kernels. 344: 345: * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add eventfd, 346: evetnfd_read, eventfd_write. 347: * sysdeps/unix/sysv/linux/eventfd.c: New file. 348: * sysdeps/unix/sysv/linux/eventfd_read.c: New file. 349: * sysdeps/unix/sysv/linux/eventfd_write.c: New file. 350: * sysdeps/unix/sysv/linux/sys/eventfd.h: New file. 351: * sysdeps/unix/sysv/linux/Versions: Export eventfd, eventfd_read, 352: eventfd_write for GLIBC_2.7. 353: 354: * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add signalfd. 355: * sysdeps/unix/sysv/linux/signalfd.c: New file. 356: * sysdeps/unix/sysv/linux/sys/signalfd.h: New file. 357: * sysdeps/unix/sysv/linux/Versions: Export signalfd for GLIBC_2.7. 358: 359: 2007-10-04 Jakub Jelinek <jakub@redhat.com> 360: 361: * stdlib/msort.c: Include stdint.h. 362: (struct msort_param): New type. 363: (msort_with_tmp): Use struct msort_param pointer for unchanging 364: parameters. Add optimized handling for several common sizes 365: and indirect sorting mode. 366: (qsort): Adjust msort_with_tmp callers. For big S use indirect 367: sorting. 368: Suggested by Belazougui Djamel . 369: 370: * stdlib/Makefile (tests): Add tst-qsort2. 371: * stdlib/tst-qsort2.c: New test. 372: 373: 2007-10-04 Ulrich Drepper <drepper@redhat.com> 374: 375: * login/login_tty.c (login_tty): The Linux kernel can return EBUSY 376: for dup2 in case another thread races with the current one. Retry 377: in this case. 378: 379: * misc/error.h: Remove support for use outside of libc. We have to 380: include <features.h> now. Include <bits/error.h> if possible. 381: * misc/bits/error.h: New file. 382: 383: 2007-10-03 Jakub Jelinek <jakub@redhat.com> 384: 385: * string/bits/string3.h (memcpy, memmove, mempcpy, memset, bcopy, 386: bzero, strcpy, stpcpy, strncpy, strcat, strncat): Use 387: __extern_always_inline functions unconditionally, drop macros. 388: 389: * misc/sys/cdefs.h (__REDIRECT_LDBL, __REDIRECT_NTH_LDBL): New macros. 390: * wcsmbs/bits/wchar2.h (__swprintf_alias, __vswprintf_alias): Use 391: __REDIRECT_NTH_LDBL macro rather than __REDIRECT_NTH. 392: 393: * misc/sys/cdefs.h (__extern_always_inline): For GCC 4.3+ 394: add __artificial__ attribute. 395: 396: 2007-10-02 Ulrich Drepper <drepper@redhat.com> 397: 398: * string/strcoll_l.c (STRCOLL): Correct handling of switching from 399: backward to forward direction. 400: 401: * string/strcoll_l.c (STRCOLL): Correct test for alloca use. 402: 403: [BZ #645] 404: * locale/programs/ld-collate.c (collate_finish): Compare against last 405: used section which is known to have rules defined. 406: (collate_read): After order_start, correctly record order of sections 407: and queue sections up. 408: 409: 2007-10-01 Ulrich Drepper <drepper@redhat.com> 410: 411: [BZ #5071] 412: * malloc/malloc.c (mremap_chunk): Avoid resizing of new block has 413: the same number of pages. 414: Patch by Tomash Brechko <tomash.brechko@gmail.com>. 415: 416: * locale/programs/ld-collate.c (collate_read): After initial copy 417: statement, continue in state 0. 418: 419: * include/stdio_ext.h (__fsetlocking): Define as macro. 420: 421: 2007-09-30 Ulrich Drepper <drepper@redhat.com> 422: 423: * locale/programs/ld-collate.c (collate_finish): Compare all bytes 424: of section order. 425: 426: * po/pt_BR.po: Fix typo. 427: 428: 2007-09-29 Ulrich Drepper <drepper@redhat.com> 429: 430: * iconvdata/Makefile (modules): Add ISO8859-9E. 431: (distribute): Add iso8859-9e.c. 432: (gen-8bit-gap-modules): Add iso8859-9e. 433: * iconvdata/iso8859-9e.c: New file. 434: * iconvdata/gconv-modules: Add entries for ISO-8859-9E. 435: * iconvdata/TESTS: Likewise. 436: * iconvdata/tst-tables.sh: Likewise. 437: 438: * iconvdata/koi8-r.c (HAS_HOLES): Define to 0. 439: 440: * locale/iso-639.def: Add several new entries. 441: 442: 2007-09-24 Jakub Jelinek <jakub@redhat.com> 443: 444: * sysdeps/generic/ldsodefs.h (struct dl_scope_free_list): Store 445: void * pointers instead of struct link_map **. 446: (_dl_scope_free): Change argument type to void *. 447: * include/link.h (struct link_map): Change type of l_reldeps 448: to struct link_map_reldeps, move l_reldepsact into that 449: struct too. 450: * elf/dl-deps.c: Include atomic.h. 451: (_dl_map_object_deps): Only change l->l_initfini when it is 452: fully populated, use _dl_scope_free for freeing it. Optimize 453: removal of libs from reldeps by using l_reserved flag, when 454: some removal is needed, allocate a new list instead of 455: reallocating and free the old with _dl_scope_free. Adjust 456: for l_reldeps and l_reldepsact changes. 457: * elf/dl-lookup.c (add_dependency): Likewise. Reorganize to allow 458: searching in l_initfini and l_reldeps without holding dl_load_lock. 459: * elf/dl-fini.c (_dl_sort_fini): Adjust for l_reldeps and 460: l_reldepsact changes. 461: * elf/dl-close.c (_dl_close_worker): Likewise. 462: * elf/dl-open.c (_dl_scope_free): Change argument type to void *. 463: 464: 2007-09-28 Ulrich Drepper <drepper@redhat.com> 465: 466: * iconvdata/Makefile (modules): Add KOI8-RU. 467: (distribute): Add koi8-ru.c. 468: (gen-8bit-gap-modules): Add koi8-ru. 469: * iconvdata/koi8-ru.c: New file. 470: * iconvdata/gconv-modules: Add entries for KOI8-RU. 471: * iconvdata/TESTS: Likewise. 472: * iconvdata/tst-tables.sh: Likewise. 473: 474: * iconvdata/koi8-r.c (HAS_HOLES): Define to 0. 475: 476: 2007-09-26 Jakub Jelinek <jakub@redhat.com> 477: 478: * misc/sys/cdefs.h (__warndecl, __errordecl): For GCC 4.3+ define 479: with __warning__/__error__ attributes. 480: (__warnattr): Define. 481: * stdlib/bits/stdlib.h (__realpath_chk_warn, __ptsname_r_chk_warn, 482: __mbstowcs_chk_warn, __wcstombs_chk_warn): New aliases with 483: __warnattr. 484: (realpath, ptsname_r, mbstowcs, wcstombs): Call __*_chk_warn instead 485: of __*_chk if compile time detectable overflow is found. 486: * libio/bits/stdio2.h (__fgets_chk_warn, __fread_chk_warn, 487: __fgets_unlocked_chk_warn, __fread_unlocked_chk_warn): New aliases 488: with __warnattr. 489: (fgets, fread, fgets_unlocked, fread_unlocked): Call __*_chk_warn 490: instead of __*_chk if compile time detectable overflow is found. 491: (__gets_alias): Rename to... 492: (__gets_warn): ... this. Add __warnattr. 493: (gets): Call __gets_warn instead of __gets_alias. 494: * socket/bits/socket2.h (__recv_chk_warn, __recvfrom_chk_warn): New 495: aliases with __warnattr. 496: (recv, recvfrom): Call __*_chk_warn instead of __*_chk if compile 497: time detectable overflow is found. 498: * posix/bits/unistd.h (__read_chk_warn, __pread_chk_warn, 499: __pread64_chk_warn, __readlink_chk_warn, __readlinkat_chk_warn, 500: __getcwd_chk_warn, __confstr_chk_warn, __getgroups_chk_warn, 501: __ttyname_r_chk_warn, __getlogin_r_chk_warn, __gethostname_chk_warn, 502: __getdomainname_chk_warn): New aliases with __warnattr. 503: (read, pread, pread64, readlink, readlinkat, getcwd, confstr, 504: getgroups, ttyname_r, getlogin_r, gethostname, getdomainname): Call 505: __*_chk_warn instead of __*_chk if compile time detectable overflow 506: is found. 507: (__getgroups_chk): Rename argument to __listlen from listlen. 508: (__getwd_alias): Rename to... 509: (__getwd_warn): ... this. Add __warnattr. 510: (getwd): Call __getwd_warn instead of __getwd_alias. 511: * wcsmbs/bits/wchar2.h (__wmemcpy_chk_warn, __wmemmove_chk_warn, 512: __wmempcpy_chk_warn, __wmemset_chk_warn, __wcsncpy_chk_warn, 513: __wcpncpy_chk_warn, __fgetws_chk_warn, __fgetws_unlocked_chk_warn, 514: __mbsrtowcs_chk_warn, __wcsrtombs_chk_warn, __mbsnrtowcs_chk_warn, 515: __wcsnrtombs_chk_warn): New aliases with __warnattr. 516: (wmemcpy, wmemmove, wmempcpy, wmemset, mbsrtowcs, wcsrtombs, 517: mbsnrtowcs, wcsnrtombs): Call __*_chk_warn instead of __*_chk if 518: compile time detectable overflow is found. 519: (wcsncpy, wcpncpy): Likewise. For constant __n fix check whether 520: to use __*_chk or not. 521: (fgetws, fgetws_unlocked): Divide __bos by sizeof (wchar_t), both 522: in comparisons which function should be called and in __*_chk* 523: arguments. Call __*_chk_warn instead of __*_chk if compile time 524: detectable overflow is found. 525: (swprintf, vswprintf): Divide __bos by sizeof (wchar_t) in 526: __*_chk argument. 527: * debug/tst-chk1.c (do_test): Add a few more tests. 528: 529: 2007-09-24 Ulrich Drepper <drepper@redhat.com> 530: 531: [BZ #5058] 532: * intl/gettextP.h (struct loaded_domain): Add conversions_lock member. 533: * intl/loadmsgcat.c (_nl_load_domain): Initialize conversions_lock. 534: (_nl_unload_domain): Finalize conversions_lock. 535: * intl/dcigettext.c (_nl_find_msg): Take conversions_lock before 536: handling table of known conversions. 537: 538: 2007-09-24 Jakub Jelinek <jakub@redhat.com> 539: 540: * sysdeps/posix/getaddrinfo.c (getaddrinfo): Use 541: close_not_cancel_no_status instead of close. 542: 543: 2007-09-13 Aurelien Jarno <aurelien@aurel32.net> 544: 545: [BZ #5028] 546: * posix/regcomp.c (lookup_collation_sequence_value): Check that 547: nrules != 0 for multibyte chars. 548: 549: 2007-09-23 Ulrich Drepper <drepper@redhat.com> 550: 551: * resolv/ns_print.c (ns_sprintrrf): Handle ns_t_a6 and ns_t_opt. 552: Provide better error message in case the type is unknown. 553: 554: [BZ #4963] 555: * wcsmbs/wcsnlen.c: Don't reference before checking the length. 556: * string/stratcliff.c: Make usable to test wide char functions. 557: * wcsmbs/wcsatcliff.c: New file. 558: * wcsmbs/Makefiel (tests): Add wcsatcliff. 559: 560: [BZ #4972] 561: * iconvdata/Makefile (modules): Add MAC-CENTRALEUROPE. 562: (distribute): Add mac-centraleurope.c. 563: (gen-8bit-gap-modules): Add mac-centraleurope. 564: * iconvdata/mac-centraleurope.c: New file. 565: * iconvdata/gconv-modules: Add entries for MAC-CENTRALEUROPE. 566: * iconvdata/TESTS: Likewise. 567: * iconvdata/tst-tables.sh: Likewise. 568: 569: [BZ #5043] 570: * iconv/iconv_open.c (iconv_open): For large codeset names use malloc. 571: 572: 2007-09-21 Ulrich Drepper <drepper@redhat.com> 573: 574: * sysdeps/x86_64/cacheinfo.c (__x86_64_data_cache_size_half): Renamed 575: from __x86_64_core_cache_size_half. 576: (init_cacheinfo): Compute shared cache size for AMD processors with 577: shared L3 correctly. 578: * sysdeps/x86_64/memcpy.S: Adjust for __x86_64_data_cache_size_half 579: name change. 580: Patch in large parts by Evandro Menezes. 581: 582: 2007-09-19 Ulrich Drepper <drepper@redhat.com> 583: 584: * elf/dl-lookup.c (add_dependency): Handle failing memory 585: allocation for dependency list. Remove unnecessary check. 586: 587: * sysdeps/posix/getaddrinfo.c (getaddrinfo): Avoid unnecessary 588: open/close when determining source addresses. 589: 590: * crypt/Makefile (libcrypt-routines): Add sha256-crypt, sha256, 591: sha512-crypt, and sha512. 592: (tests): Add sha256test, sha256c-test, sha512test, and sha512c-test. 593: (distribute): Add sha256.h and sha512.h. 594: * crypt/crypt-entry.c (crypt): Recognize the new $5$ and $6$ prefixes 595: and call the appropriate code. 596: * crypt/sha256-crypt.c: New file. 597: * crypt/sha256.c: New file. 598: * crypt/sha256.h: New file. 599: * crypt/sha256c-test.c: New file. 600: * crypt/sha256test.c: New file. 601: * crypt/sha512-crypt.c: New file. 602: * crypt/sha512.c: New file. 603: * crypt/sha512.h: New file. 604: * crypt/sha512c-test.c: New file. 605: * crypt/sha512test.c: New file. 606: 607: 2007-09-19 Jakub Jelinek <jakub@redhat.com> 608: 609: * misc/bits/syslog.h (syslog): Remove extraneous argument from 610: the inline, pass __USE_FORTIFY_LEVEL - 1 as second argument to 611: __syslog_chk. 612: 613: 2007-09-18 Jakub Jelinek <jakub@redhat.com> 614: 615: * locale/programs/charmap-dir.c (charmap_aliases): Use %ms instead of 616: %as in fscanf format strings. 617: 618: * sysdeps/sparc/sparc32/elf/start.S: Remove cfi_* markup. 619: * sysdeps/sparc/sparc64/elf/start.S: Likewise. 620: * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__thread_start): 621: Likewise. 622: * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__thread_start): 623: Likewise. 624: 625: * sysdeps/generic/ldsodefs.h (DL_LOOKUP_GSCOPE_LOCK): New definition. 626: * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Or in 627: DL_LOOKUP_GSCOPE_LOCK into flags after THREAD_GSCOPE_SET_FLAG (). 628: * elf/dl-sym.c (do_sym): Likewise. 629: * include/link.h (struct link_map): Add l_serial field. 630: * elf/dl-object.c (_dl_new_object): Initialize l_serial. 631: * elf/dl-lookup.c (add_dependency): Add flags argument. 632: Remember map->l_serial, if DL_LOOKUP_GSCOPE_LOCK is among 633: flags, use THREAD_GSCOPE_RESET_FLAG before and 634: THREAD_GSCOPE_SET_FLAG after 635: __rtld_lock_lock_recursive (GL(dl_load_lock)) to avoid deadlock. 636: Don't dereference map until it has been found on some list. 637: If map->l_serial changed, return -1. 638: 639: 2007-09-17 Jakub Jelinek <jakub@redhat.com> 640: 641: * include/stdio.h (__isoc99_fscanf, __isoc99_scanf, 642: __isoc99_sscanf, __isoc99_vscanf): New prototypes. 643: (__isoc99_vsscanf, __isoc99_vfscanf): New prototypes, add 644: libc_hidden_proto. 645: * include/wchar.h (__isoc99_fwscanf, __isoc99_wscanf, 646: __isoc99_swscanf, __isoc99_vwscanf): New prototypes. 647: (__isoc99_vswscanf, __isoc99_vfwscanf): New prototypes, 648: add libc_hidden_proto. 649: * libio/stdio.h (fscanf, scanf, sscanf, vfscanf, vscanf, 650: vsscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX 651: conformance requested. 652: * wcsmbs/wchar.h (fwscanf, wscanf, swscanf, vfwscanf, vwscanf, 653: vswscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX 654: conformance requested. 655: * libio/bits/stdio-ldbl.h (fscanf, scanf, sscanf, vfscanf, vscanf, 656: vsscanf): Redirect to __nldbl___isoc99_* if strict ISO C99 or POSIX 657: conformance requested. 658: * wcsmbs/bits/wchar-ldbl.h (fwscanf, wscanf, swscanf, vfwscanf, 659: vwscanf, vswscanf): Redirect to __nldbl___isoc99_* if strict 660: ISO C99 or POSIX conformance requested. 661: * stdio-common/Versions (libc): Export __isoc99_scanf@@GLIBC_2.7, 662: __isoc99_vscanf@@GLIBC_2.7, __isoc99_fscanf@@GLIBC_2.7, 663: __isoc99_vfscanf@@GLIBC_2.7, __isoc99_sscanf@@GLIBC_2.7 664: and __isoc99_vsscanf@@GLIBC_2.7. 665: * stdio-common/Makefile (routines): Add isoc99_scanf, isoc99_vscanf, 666: isoc99_fscanf, isoc99_vfscanf, isoc99_sscanf and isoc99_vsscanf. 667: (tests): Add scanf14. 668: (CFLAGS-vfprintf.c, CFLAGS-fprintf.c, CFLAGS-printf.c, 669: CFLAGS-vfwprintf.c, CFLAGS-vfscanf.c, CFLAGS-vfwscanf.c, 670: CFLAGS-fscanf.c, CFLAGS-scanf.c, CFLAGS-isoc99_vfscanf.c, 671: CFLAGS-isoc99_vscanf.c, CFLAGS-isoc99_fscanf.c, 672: CFLAGS-isoc99_scanf.c): Add $(exceptions). 673: (CFLAGS-scanf15.c): Add various -I paths to prevent the compiler 674: from using internal headers. 675: * wcsmbs/Versions (libc): Export __isoc99_wscanf@@GLIBC_2.7, 676: __isoc99_vwscanf@@GLIBC_2.7, __isoc99_fwscanf@@GLIBC_2.7, 677: __isoc99_vfwscanf@@GLIBC_2.7, __isoc99_swscanf@@GLIBC_2.7 678: and __isoc99_vswscanf@@GLIBC_2.7. 679: * wcsmbs/Makefile (routines): Add isoc99_wscanf, isoc99_vwscanf, 680: isoc99_fwscanf, isoc99_vfwscanf, isoc99_swscanf and isoc99_vswscanf. 681: (CFLAGS-isoc99_wscanf.c, CFLAGS-isoc99_fwscanf.c, 682: CFLAGS-isoc99_vwscanf.c, CFLAGS-isoc99_vfwscanf.c): Add $(exceptions). 683: (CPPFLAGS): Add -D_IO_MTSAFE_IO if needed. 684: * stdio-common/isoc99_scanf.c: New file. 685: * stdio-common/isoc99_vsscanf.c: New file. 686: * stdio-common/isoc99_vscanf.c: New file. 687: * stdio-common/isoc99_vfscanf.c: New file. 688: * stdio-common/isoc99_fscanf.c: New file. 689: * stdio-common/isoc99_sscanf.c: New file. 690: * wcsmbs/isoc99_fwscanf.c: New file. 691: * wcsmbs/isoc99_vswscanf.c: New file. 692: * wcsmbs/isoc99_swscanf.c: New file. 693: * wcsmbs/isoc99_wscanf.c: New file. 694: * wcsmbs/isoc99_vwscanf.c: New file. 695: * wcsmbs/isoc99_vfwscanf.c: New file. 696: * libio/libio.h (_IO_FLAGS2_SCANF_STD): Define. 697: * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Also 698: clear _IO_FLAGS2_SCANF_STD bit from _flags2. 699: * stdio-common/vfscanf.c (_IO_vfscanf_internal): Don't 700: handle %as, %aS and %a[ if _IO_FLAGS2_SCANF_STD is set in _flags2. 701: * stdio-common/scanf14.c: New test. 702: * stdio-common/scanf15.c: New test. 703: * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add 704: isoc99_scanf, isoc99_fscanf, isoc99_sscanf, 705: isoc99_vscanf, isoc99_vfscanf, isoc99_vsscanf, 706: isoc99_wscanf, isoc99_fwscanf, isoc99_swscanf, 707: isoc99_vwscanf, isoc99_vfwscanf and isoc99_vswscanf. 708: * sysdeps/ieee754/ldbl-opt/Versions (libc): Export 709: __nldbl___isoc99_scanf@@GLIBC_2.7, 710: __nldbl___isoc99_fscanf@@GLIBC_2.7, 711: __nldbl___isoc99_sscanf@@GLIBC_2.7, 712: __nldbl___isoc99_vscanf@@GLIBC_2.7, 713: __nldbl___isoc99_vfscanf@@GLIBC_2.7, 714: __nldbl___isoc99_vsscanf@@GLIBC_2.7, 715: __nldbl___isoc99_wscanf@@GLIBC_2.7, 716: __nldbl___isoc99_fwscanf@@GLIBC_2.7, 717: __nldbl___isoc99_swscanf@@GLIBC_2.7, 718: __nldbl___isoc99_vwscanf@@GLIBC_2.7, 719: __nldbl___isoc99_vfwscanf@@GLIBC_2.7 720: and __nldbl___isoc99_vswscanf@@GLIBC_2.7. 721: * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__isoc99_scanf, 722: __isoc99_fscanf, __isoc99_sscanf, __isoc99_vscanf, 723: __isoc99_vfscanf, __isoc99_vsscanf, __isoc99_wscanf, 724: __isoc99_fwscanf, __isoc99_swscanf, __isoc99_vwscanf, 725: __isoc99_vfwscanf, __isoc99_vswscanf): Add NLDBL_DECL. 726: * sysdeps/ieee754/ldbl-opt/nldbl-compat.c 727: (__nldbl___isoc99_scanf, __nldbl___isoc99_fscanf, 728: __nldbl___isoc99_sscanf, __nldbl___isoc99_vscanf, 729: __nldbl___isoc99_vfscanf, __nldbl___isoc99_vsscanf, 730: __nldbl___isoc99_wscanf, __nldbl___isoc99_fwscanf, 731: __nldbl___isoc99_swscanf, __nldbl___isoc99_vwscanf, 732: __nldbl___isoc99_vfwscanf, __nldbl___isoc99_vswscanf): New 733: functions. 734: * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfscanf.c: New file. 735: * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_swscanf.c: New file. 736: * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vwscanf.c: New file. 737: * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_wscanf.c: New file. 738: * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_scanf.c: New file. 739: * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_sscanf.c: New file. 740: * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vsscanf.c: New file. 741: * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fwscanf.c: New file. 742: * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfwscanf.c: New file. 743: * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vswscanf.c: New file. 744: * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vscanf.c: New file. 745: * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fscanf.c: New file. 746: 747: * stdio-common/Makefile (tests): Add scanf13. 748: (scanf13-ENV): New. 749: * stdio-common/vfscanf.c (_IO_vfscanf_internal): Handle 750: m modifier followed by l. 751: (STRING_ARG): Add width argument. 752: (_IO_vfscanf_internal) <case L_('c')>: Handle %mc. 753: <case L_('C')>: Handle %mlc and %mC. 754: <case L_('s'), case L_('S'), case L_('[')>: Adjust STRING_ARG 755: arguments. 756: * stdio-common/scanf13.c: New test. 757: 758: * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Clear 759: the _IO_FLAGS2_FORTIFY bit from _flags2 rather than _flags. 760: 761: 2007-09-18 Ulrich Drepper <drepper@redhat.com> 762: 763: * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Correct return value 764: type and __THROW marker of splice, vmsplice, and tee. 765: * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. 766: * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise. 767: * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. 768: * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise. 769: * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. 770: * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. 771: * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise. 772: * sysdeps/unix/sysv/linux/syscalls.list: Mark splice, vmsplice, and tee 773: <