(linenum→info "unix/slp.c:2238")

glibc/2.7/ChangeLog

    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: <