Patches applied to glibc-2.19

Please include a change to this file with each patch, *and* each
subsequent modification of the patch.  Do NOT combine patch
checkins, keep them separate.

Append new entries to the end of this file. Each entry shall include:
 * The list of files modified by the patch,
 * The status of the patch. Should be one of:
   - already upstream (indicate upstream revision),
   - not yet upstream, or
   - google-local (not applicable upstream).
 * The local 'owner' responsible for the patch, and
 * A description of the patch (preferably including bug numbers).

Please include entries for both local patches and for patches which
have been checked in to (or back-ported from) the upstream sources.
When checking in changes made upstream, add an entry to this file but
DO NOT add entries to the GNU ChangeLog files.

elf/Versions
elf/dl-misc.c
elf/dl-open.c
elf/dl-reloc.c
elf/dl-tls.c
nptl/Makefile
nptl/allocatestack.c
nptl/tst-tls7.c
nptl/tst-tls7mod.c
sysdeps/generic/ldsodefs.h
  Revert upstream removal of async-safe TLS patches.  These patches were
  removed at the last minute from the glibc 2.19 release, as follows:
  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=8b6785f0836011cace9a77f3c24e51a7379238a0
  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=dd654bf9ba1848bf9ed250f8ebaa5097c383dcf8
  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=73d61e4f6c65da714c0f8a3a233725322553ceba
  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=bf06bcee84d4c19a99925c0f58026a8cbd87a688
  (ahh, not yet upstream)

google-nsl-stub/Makefile
google-nsl-stub/configure
google-nsl-stub/shlib-versions
google-nsl-stub/ypclnt.c
  For b/2832143 and b/10385480, add a stub libnsl library as an add-on, to
  replace the libnsl removed in the previous change.  Although we do not use
  libnsl normally, we have precompiled third-party binaries that need to
  dynamically link to it, and this stub satisfies that need.
  (bmoses, google-local)

Versions.def
shlib-versions
include/grp.h
include/pwd.h
include/shadow.h
nss/Makefile
nss/Versions
nss/function.def
nss/nss_borg/borg-pwd.c
nss/nss_cache/nss_cache.c
nss/nss_cache/nss_cache.h
  Forward-port nss_borg and nss_cache from glibc-2.18
  (ppluzhnikov, google-local)

nis/Makefile
nss/Makefile
  For b/2476399, disable libnss_db (not used in google).
  Likewise ibnsl and related libnss_* libraries.
  Forward-ported from cl/52538169 and cl/52538711.
  (ppluzhnikov, bmoses, google-local)

hesiod/Makefile
  For b/2476399, disable Hesiod (not used in google).
  Forward-ported from cl/52537558.
  (ppluzhnikov, google-local)

Makerules
nptl/Makefile
  Don't put absolute pathnames into libc.so and libpthread.so linker
  scripts -- absolute pathnames interfere with --sysroot.
  cl/51074128 from eglibc-2.18
  (ppluzhnikov, google-local)

csu/Makefile
  For bit-identical rebuilds, remove `date` invocations.
  Forward-ported from cl/51218346 (from cl/37734-p2).
  (ppluzhnikov, google-local)

elf/Versions
elf/dl-init.c
sysdeps/i386/elf/start.S
sysdeps/x86_64/elf/start.S
  Add __google_auxv.
  Forward-ported from cl/51271693 (from cl/38027-p2).
  (ppluzhnikov, google-local)

dlfcn/dlmopen.c
dlfcn/dlopen.c
sysdeps/gnu/errlist-compat.awk
  Disable static linking warning for dlopen and dlmopen, and disable linking
  warning for sys_errlist and sys_nerr.
  Forward-ported from cl/51276043 (from part of cl/38025-p2).
  (ppluzhnikov, google-local)

include/features.h
  Add __GOOGLE_GRTE_VERSION__ for GRTEv4 usage.
  Forward-ported with date and comment changed from cl/51277131.
  (ppluzhnikov, google-local)

elf/Versions
elf/dl-debug.c
  Add _google_dl_debug_state_hook.  This is used by libunwind; see comment
  in //google3/third_party/grte/google_glibc_extensions.h.
  Forward-ported from cl/51330448 (from cl/38429-p2).
  (ppluzhnikov, google-local)

include/alloca.h
  Set __MAX_ALLOCA_CUTOFF to 8kb to avoid stack overflow, as described in
  b/2425017.  The stack protection in //google3/thread/thread.cc creates a
  large stack with only 64kb of remaining space, which the upstream alloca
  heuristic is ill-equipped to deal with.
  Forward-ported from cl/51331379 (from cl/38559-p2).
  (ppluzhnikov, google-local)

locale/programs/locarchive.c
  Reduce starting table sizes for locale-archive file, since we use only a
  small fraction of the entries.
  Forward-ported from cl/51331729 (from cl/39296-p2).
  (cgd, google-local)

sysdeps/unix/grantpt.c
  For b/2723095, allow grantpt() to succeed even if it can't chgrp
  the slave pty to the "tty" group.
  Forward-ported from cl/51332316 (from cl/41538-p2).
  (ppluzhnikov, google-local)

elf/rtld.c
  For b/4268901, disable "/etc/ld.so.preload", but allow other builds to
  re-enable it by setting -DENABLE_ETC_LD_SO_PRELOAD in CFLAGS.
  Forward-ported from cl/51332859 (from cl/51576-p2 and cl/51620-p2).
  (ppluzhnikov, google-local)

misc/sys/cdefs.h
  g/grte-team/browse_thread/thread/d08601e9f5542d94
  Disable gcc's __warn_unused_result__ attribute in glibc headers when
  _GOOGLE_FORTIFY_SOURCE_NO_WARN_UNUSED_RESULT is specified, even if
  _FORTIFY_SOURCE is set.  Some google3 code does not compile when this
  attribute is set on some glibc functions.
  Forward-ported from cl/51334004 (from cl/53404-p2).
  (swiecki, google-local)

stdio-common/print_fp.c
stdio-common/print_fphex.c
stdio-common/tstdiomisc.c
  Effectively revert an upstream patch to print signs on NaN values.  This
  change causes many google3 test failures, and the signs are meaningless.
  Forward-ported from cl/51376114 (from cl/41709-p2).
  (ppluzhnikov, google-local)

posix/glob.c
sysdeps/unix/readdir.c
sysdeps/unix/readdir_r.c
  For b/3162458, don't skip files with d_ino==0 -- our tmpfs systems
  sometimes create them due to inode wraparound.
  Forward-ported from cl/51430993 (from cl/45000-p2).
  (ppluzhnikov, google-local)

elf/Makefile
elf/dl-cache.c
elf/dl-support.c
elf/rtld.c
sysdeps/generic/ldsodefs.h
sysdeps/generic/unsecvars.h
  For b/2471323, implement multi-level cache search for shared libraries.
  Currently, two-level: $prefix/etc/ld.so.conf and /etc/ld.so.conf.
  Allow build-time configuration override via GOOGLE_LD_SO_CACHE_LIST.
  Allow run-time override via LD_GOOGLE_LD_SO_CACHE_LIST environment
  variable.
  Forward-ported from cl/51433387 (from cl/38694-p2, cl/38725-p2, and
  cl/38741-p2).
  (ppluzhnikov, google-local)

elf/dl-cache.c
elf/dl-load.c
include/dlfcn.h
sysdeps/generic/ldsodefs.h
  For b/3133396, ignore system ld.so.cache when looking for
  nss and iconv modules.
  Forward-ported from cl/51433604 (from cl/44863-p2).
  (ppluzhnikov, google-local)

nptl/sysdeps/pthread/unwind-forcedunwind.c
  For b/5836136, do dlsym(0, "_Unwind..."), i.e. ignore libgcc_s.so.1
  dlopen failure.
  Forward-ported from cl/51438157.
  (ppluzhnikov, google-local)

nptl/Makefile
  For b/5013921, build pthread_join.c and pthread_timedjoin.c with
  frame pointers.
  Forward-ported from cl/51440285 (from cl//54512-p2).
  Note: this is redundant with http://cr/62476718 that builds entire glibc
  with -fno-omit-frame-pointer, but I am forward-porting it anyway in case
  we decide to revert cr/62476718 later.
  (ppluzhnikov, google-local)

elf/dl-close.h
elf/dl-load.c
elf/dl-lookup.c
elf/dl-support.c
elf/dl-version.c
elf/rtld.c
sysdeps/generic/ldsodefs.h
  Add "fastload" support.  This reduces the linear search for symbols when
  loading dynamic libraries to a hash-table lookup, dramatically reducing
  the startup time of Google3 binaries with large numbers of dynamic-library
  dependencies.
  Forward-ported from cl/56574617.
  (ppluzhnikov, google-local)

sysdeps/unix/sysv/linux/i386/nptl/libc.abilist
sysdeps/unix/sysv/linux/i386/nptl/libnsl.abilist
sysdeps/unix/sysv/linux/x86_64/64/nptl/libc.abilist
sysdeps/unix/sysv/linux/x86_64/64/nptl/libnsl.abilist
  Adjust the size value on _nl_default_dirname to match the directory
  name that we use in GRTE builds so that "make check-abi" will pass, as
  described in the glibc wiki:
  http://sourceware.org/glibc/wiki/Testing/Testsuite#Known_testsuite_failures
  Also adjust list of exported symbols for google-nsl-stub.
  Similar to cr/51166205
  (ppluzhnikov, google-local)

Makerules
  For b/13350520, disable check-abi
  (ppluzhnikov, google-local)

elf/Versions
  Export __signal_safe* functions from ld.so so we can use a different
  implementation.
  (ppluzhnikov, google-local)

elf/dl-dst.h
elf/dl-load.c
elf/dl-support.c
elf/rtld.c
sysdeps/generic/ldsodefs.h
  For b/4074041, add EXEC_ORIGIN support.
  Forward-ported from cl/56955623 and cl/59961863.
  (bmoses, google-local)

nptl/Versions
nptl/pthread_key_create.c
nptl/sysdeps/pthread/pthread.h
nptl/sysdeps/unix/sysv/linux/bits/local_lim.h
nptl/sysdeps/unix/sysv/linux/powerpc/bits/local_lim.h
nptl/sysdeps/unix/sysv/linux/sparc/bits/local_lim.h
nptl/tst-key1.c
nptl/tst-key4.c
ports/sysdeps/unix/sysv/linux/aarch64/nptl/bits/local_lim.h
ports/sysdeps/unix/sysv/linux/alpha/nptl/bits/local_lim.h
ports/sysdeps/unix/sysv/linux/mips/nptl/bits/local_lim.h
ports/sysdeps/unix/sysv/linux/tile/bits/local_lim.h
  Add pthread_signal_safe_key_create.
  Forward ported from cl/59612021, cl/59817832, and cl/59176280.
  (ahh, google-local)

Versions.def
dlfcn/Versions
dlfcn/dlfcn.h
dlfcn/dlmopen.c
dlfcn/dlopen.c
dlfcn/dlopenold.c
elf/dl-deps.c
elf/dl-libc.c
elf/dl-load.c
elf/dl-open.c
elf/rtld.c
include/dlfcn.h
sysdeps/generic/ldsodefs.h
  For Google b/8315591, experimental implementation of dlopen_with_offset.
  Forward-ported from cl/59286541, cl/59438930
  (ppluzhnikov, google-local)

malloc/malloc.c
ports/sysdeps/unix/sysv/linux/aarch64/nptl/localplt.data
sysdeps/generic/localplt.data
sysdeps/unix/sysv/linux/i386/nptl/localplt.data
sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/localplt.data
  For b/5732800, expose calls from malloc to mmap, munmap, and sbrk.
  Forward ported from cl/42670015, with changes.
  (ppluzhnikov, google-local)

elf/rtld.c
  For b/12342355, remove inappropriate assert in EXEC_ORIGIN support.
  (bmoses, google-local)

sysdeps/powerpc/powerpc32/power4/multiarch/bzero.c
sysdeps/powerpc/powerpc32/power4/multiarch/bzero-ppc32.S
sysdeps/powerpc/powerpc64/multiarch/memset-ppc64.S
  For b/14302447, backport upstream patches for __bzero_ppc:
  https://sourceware.org/bugzilla/show_bug.cgi?id=16683
  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=4facea473059914983b7da8dd654c06b8e3dcc41
  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=dd3946c615184e1957a0cb09352cac72be5d6d5b
  (bmoses, already upstream)

sysdeps/unix/sysv/linux/sys/ptrace.h
  For b/13432624, add PTRACE_EVENT_STOP to __ptrace_eventcodes enum.
  (bmoses, not yet upstream)

nptl/Makefile
  For b/14616463, add -fno-function-sections to events.c compilation.
  (bmoses, google-local)

libio/Makefile
libio/fileops.c
libio/iofdopen.c
libio/iofwide.c
libio/libioP.h
libio/tst-ftell-active-handler.c
libio/wfileops.c
  For b/15017950, backport upstream patches for PR16532 (separate
  ftell, fseek logic) and subsequent optimization and cleanup:
  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=000232b9bcbf194f1e5fd0ff380000f341505405
  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=fa3cd24827d34a49e0a3a5cac56abbf8df74d8ac
  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=091eff71a5edacb5a321c6e573f09a5358540675
  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=d4b17258bba38f206079fbae1e7255779db1b74c
  (bmoses, already upstream)

sysdeps/powerpc/powerpc64/fpu/s_copysign.S
  For b/13737066, backport upstream patches for PR16786 (s_copysign
  stack temp bugfix on PPC ELFv2):
  https://sourceware.org/ml/libc-alpha/2014-04/msg00000.html
  (bmoses, already upstream)

elf/rtld.c
  For b/13901604, set correct __google_auxv before unsetting insecure
  environment variables.
  (ppluzhnikov, google-local)

posix/spawn_faction_addopen.c
posix/spawn_faction_destroy.c
posix/spawn_int.h
tst-spawn.c
  For b/15568332, backport patch to copy path argument to
  posix_spawn_file_actions_addopen.
  https://sourceware.org/bugzilla/show_bug.cgi?id=17048
  (bmoses, backport)

libio/Makefile
libio/iofdopen.c
libio/fileops.c
libio/tst-ftell-active-handler.c
libio/tst-ftell-append.c
libio/wfileops.c
  For b/15017950, backport patch to fix offset computation for append+
  mode on switching from read, and preceeding patches to fix another
  issue with append files and ftell, and to adjust test environments.
  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=ea33158c96c53a64402a772186956c1f5cb556ae
  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=003e49ed5d2034d73bfcf5324c461785687b7e88
  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=2482ae433a4249495859343ae1fba408300f2c2e
  https://sourceware.org/bugzilla/show_bug.cgi?id=16724
  (bmoses, backport)

misc/mktemp.c
stdio-common/tempnam.c
stdio-common/tmpnam.c
  For Crosstool v18 disable link-time warning about mktemp,tempnam and tmpnam.
  b/6115789
  TODO(ppluzhnikov): revert this after cleanup.
  (ppluzhnikov, google-local)

csu/elf-init.c
sysdeps/i386/start.S
sysdeps/x86_64/start.S
  For b/13901604, revert local changes to sysdeps/{i386,x86_64}/elf/start.S,
  and initialize __google_auxv in __libc_csu_init instead.
  (ppluzhnikov, google-local)

csu/elf-init.c
elf/dl-support.c
  For b/15780211, revert local change to csu/elf-init.c and move
  initialization of __google_auxv earlier (in the fully-static link).
  (ppluzhnikov, google-local)

elf/ldd.bash.in
  Import ldd patches from Ubuntu source package.  This fixes the ability
  of ldd to trace dependencies in non-executable dynamic libraries.
  (bmoses, google-local)

stdlib/secure-getenv.c
  Export a __secure_getenv weak symbol for backwards compatibility at link
  time.
  (bmoses, google-local)

elf/dl-load.c
include/link.h
  For b/18243822, fix dlopen_with_offset to not reuse the same link_map
  entry when called on the same file with different offsets.
  (ppluzhnikov, google-local)

dlfcn/dlopen.c
elf/dl-load.c
  To fix AARCH64 build, make code added to dl-load.c in previous CL
  conditional on SHARED. Disable dlopen_with_offet in fully-static links.
  (ppluzhnikov, google-local)

wordexp.c
posix/wordexp-test.c
  For b/18473397 and CVE-2014-7817, properly handle the WRDE_NOCMD
  flag when processing certain arithmetic inputs.
  (backport)
  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=a39208bd7fb76c1b01c127b4c61f9bfd915bfe7c

sysdeps/x86_64/start.S
  For b/18331558, use ENTRY and END macros to get a .size directive.
  (backport)
  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=467fec0bb47464ff49e7075194342b028c75c72f

dlfcn/dlopen.c
  Re-fix b/18243822 which got broken by cr/80600560 (AARCH64 build fix).
  (ppluzhnikov, google-local)

resolv/res_libc.c
  For b/18473393, port r9102, r11566, and r14311 from eglibc sources.

resolv/nss_dns/dns-resolve.c
  For b/18752432, backport infinite loop fix in getnetbyname (PR17630)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=11e3417af6e354f1942c68a271ae51e892b2814d

stdio-common/tst-sscanf.c
stdio-common/vfscanf.c
  For b/19289207, backport memory allocation fix for wscanf (PR16618)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5bd80bfe9ca0d955bfbbc002781bc7b01b6bcb06

socket/sys/un.h
  Replace null dereference in the SUN_LEN macro with offsetof.
  (nlewycky, not yet upstream)

elf/dl-load.c
  For b/8315591, b/20141439 correct off-by-one error that resulted in last
  byte of l_name being random garbage.
  (ppluzhnikov, google-local)

libio/fmemopen.c
libio/test-fmemopen.c
  For b/22167761, backport fix buffer overflow for writes to memory buffer stream (PR18549)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=7c2ce714d4e853aadbec13b920576fdfada520f1
  (stanshebs, backport)

string/string.h
math/bits/mathcalls.h
misc/sys/cdefs.h
  Re-declare hot libc functions with "noplt" attribute available GCC 4.9
  onwards.  This attribute allows calls to these functions to avoid the
  PLT and improves the performance of some of our code via better icache
  and iTLB performance.
  (tmsriram, google-local)

elf/dl-tls.c
nptl/Makefile
nptl/tst-tls77.c
nptl/tst-tls77mod.c
  Fix b/19824366 with tweaks to TLS dynamic loading, and add a test.  Note that
  upstream commit
  https://sourceware.org/git/?p=glibc.git&a=commit&h=f8aeae347377f3dfa8cbadde057adf1827fb1d44
  fixes this problem in a different way, so this patch is not needed upstream.
  (stanshebs, google-local)

elf/link.h
socket/sys/un.h
  Correct locations of __BEGIN_DECLS and #includes, as neeeded for C++
  module compatibility.
  (chandlerc, google-local)

resolv/nss_dns/dns-host.c
  For b/21023324, backport buffer overflow in getanswer_r (PR18287, CVE-2015-1781)
  https://sourceware.org/git/?p=glibc.git;a=commit;h=2959eda9272a03386
  (stanshebs, backport)

nss/nss_borg/borg-pwd.c
  Improve documentation, remove dead code.
  (stanshebs, google-local)

posix/fnmatch_loop.c
posix/Makefile
posix/tst-fnmatch3.c
  For b/19524869 and b/19533947, backport buffer overflow fixes in fnmatch.
  (PR18032, PR18036)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4a28f4d55a6cc33474c0792fe93b5942d81bf185
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c2c6d39fab901c97c18fa3a3a3658d9dc3f7df61
  (stanshebs, backport)

nss/nss_files/files-XXX.c
nss/Makefile
nss/tst-nss-getpwent.c
  For b/19498319, backport fix for nss_files file management (PR18007, CVE-2014-8121)
  https://sourceware.org/git/?p=glibc.git;a=commit;h=03d2730b44cc2236318fd978afa2651753666c55
  (stanshebs, backport)

elf/dl-load.c
  For b/20141439, don't add "foo.so" as alternate name for already loaded foo.so/@0x<offset>
  (ppluzhnikov, google-local)

elf/dl-load.c
  For b/22641205, #include _itoa.h
  (ppluzhnikov, google-local)

nptl/pthread_getspecific.c
nptl/tst-key5.c
  Fix for b/18722637 : make pthread_getspecific signal safe.
  (ahh, google-local, proposed upstream)

include/resolv.h
resolv/gethnamaddr.c
resolv/res_query.c
resolv/res_send.c
resolv/nss_dns/dns-canon.c
resolv/nss_dns/dns-host.c
resolv/nss_dns/dns-network.c
  For b/24580666, backport fix for memory leak in getaddrinfo() (PR16574)
  https://sourceware.org/git/?p=glibc.git;a=commit;h=d668061994a7486a3ba9c7d5e7882d85a2883707
  https://sourceware.org/git/?p=glibc.git;a=commit;h=ab7ac0f2cf8731fe4c3f3aea6088a7c0127b5725
  https://sourceware.org/git/?p=glibc.git;a=commit;h=ab09bf616ad527b249aca5f2a4956fd526f0712f
  (stanshebs, backport)

include/features.h
  Allow suppressing the definition of __USE_FILE_OFFSET64 by defining
  SUPPRESS_USE_FILE_OFFSET64. As large file types match the default
  types, this is irrelevant in Google's depot, but leads to different type
  signatures for functions that are problematic with C++ modules.
  (klimek, google-local)

math/auto-libm-test-in
math/auto-libm-test-out
sysdeps/ieee754/dbl-64/s_sin.c
sysdeps/x86_64/fpu/libm-test-ulps
  For b/25873705, backport fix for broken trig functions (PR16623)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1cadc85813d736f7682fa2eeadae639ab6b66c65
  (stanshebs, backport)

iconv/gconv_trans.c
  For b/25977570, backport removal of __gconv_translit_find (PR17187)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a1a6a401ab0a3c9f15fb7eaebbdcee24192254e8
  (stanshebs, backport)

resolv/res_send.c
  For b/25900273, adjust allocations to avoid segfault.
  (bmoses, google-local)

nptl/allocatestack.c
nptl/Makefile
nptl/tst-basic8.c
  For b/24399992 unlock guard pages to avoid wasting memory.

nptl/Makefile
  Unbreak building of tst-key5
  (stanshebs, google-local)

elf/elf.h
math/libm-test.inc
string/*
sysdeps/ieee754/*
sysdeps/powerpc/*
  For b/18010034, backport IBM optimizations for Power8.
  https://sourceware.org/git/?p=glibc.git;a=shortlog;h=refs/heads/ibm/2.19/master
  (stanshebs, backport)

sysdeps/powerpc/bits/fenvinline.h
  For b/27191207, remove use of %s modifier in inline asm.
  (stanshebs, google-local)

nptl/sysdeps/unix/sysv/linux/register-atfork.c
  For b/28011264, detect and work around loop in fork handler list.
  (stanshebs, google-local)

resolv/nss_dns/dns-network.c
  For b/27917753, fix stack overflow in _nss_dns_getnetbyname_r (BZ19879)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=317b199b4aff8cfa27f2302ab404d2bb5032b9a4
  (stanshebs, backport)

resolv/res_send.c
  For b/28166767, fix where getaddrinfo() writes DNS queries to random file descriptors
  under high load (BZ15946, CVE-2013-7423)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=f9d2d03254a58d92635a311a42253eeed5a40a47
  (stanshebs, backport)

locale/findlocale.c
locale/setlocale.c
  For b/29130905, fix locale vulnerabilities (BZ1737, CVE-2014-0475)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4e8f95a0df7c2300b830ec12c0ae1e161bc8a8a3
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d183645616b0533b3acee28f1a95570bffbdf50f
  (stanshebs, backport)

nss/nss_cache/nss_cache.h
nss/nss_cache/nss_cache.c
  For b/29944535, import current nss_cache.c and nss_cache.h from upstream.
  This fixes a performance issue in getgrgid_r on corp machines.
  https://github.com/google/libnss-cache/blob/74a14a1dcc669ebe95e90d6d0e0ca36dd8c63b43/nss_cache.c
  https://github.com/google/libnss-cache/blob/74a14a1dcc669ebe95e90d6d0e0ca36dd8c63b43/nss_cache.h
  (mkanat, google-local)

sysdeps/posix/getaddrinfo.c
  For b/30090956, fix stack overflow in hostent conversion (BZ20010, CVE-2016-3706)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4ab2ab03d4351914ee53248dc5aef4a8c88ff8b9
  (stanshebs, backport)

sysdeps/posix/getaddrinfo.c
posix/Makefile
posix/tst-getaddrinfo6.c
  For b/29615899, fix error handling in getaddrinfo.
  (stanshebs, google-local)

elf/elf.h
  For b/31273149, revert the value of DT_PPC64_NUM from 4 to 3.
  (stanshebs, google-local)

nss/nss_borg/borg-pwd.c
  Add /etc/passwd.borg.base as fallback passwd file. (b/30413914, b/32608777)
  (mrothwell/stanshebs, google-local)

nss/nss_files/files-XXX.c
  For b/26276654, don't ignore too long lines in nss_files (BZ17079, CVE-2015-5277)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commit;h=3fd498242948b1fa944c56646ec9b156387dd310
  (stanshebs, backport)

posix/fnmatch_loop.c
  Don't read past end of pattern in fnmatch (BZ17062)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commit;h=b3a9f56ba59c3d8eadd3135a1c25c37a63151450
  (stanshebs, backport)

nss/tst-nss-getpwent.c
  Work around b/34251679 by restricting to nss_files module
  (stanshebs, google-local)

time/strftime_l.c
time/tst-strftime.c
  Fix where out of range data to strftime() causes a segfault (BZ18985, CVE-2015-8776)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d36c75fc0d44deec29635dd239b0fbd206ca49b7
  (stanshebs, backport)

elf/rtld.c
sysdeps/generic/ldsodefs.h
  Always enable pointer guard (BZ18928, CVE-2015-8777)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a014cecd82b71b70a6a843e250e06b541ad524f7
  (stanshebs, backport)

misc/Makefile
misc/bug18240.c
misc/hsearch_r.c
  hcreate, hcreate_r should fail with ENOMEM if element count is too large (BZ18240, CVE-2015-8778)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b5cba5cff937e5336ff23380785da80cab09146c
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=3c9e8d9477aba0f514171bb4706670052544479b
  (stanshebs, backport)

catgets/Makefile
catgets/catgets.c
catgets/open_catalog.c
catgets/tst-catgets.c
  Fix catopen() Multiple unbounded stack allocations (BZ17905, CVE-2015-8779)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=0f58539030e436449f79189b6edab17d7479796e
  (stanshebs, backport)

ports/sysdeps/unix/sysv/linux/arm/setcontext.S
  Missing unwind info in __startcontext causes infinite loop (BZ20435, CVE-2016-6323)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=9e2ff6c9cc54c0b4402b8d49e4abe7000fde7617
  (stanshebs, backport)

include/stdlib.h
include/wchar.h
math/Makefile
math/s_nan.c
math/s_nanf.c
math/s_nanl.c
math/test-nan-overflow.c
math/test-nan-payload.c
stdlib/Makefile
stdlib/Versions
stdlib/strtod_l.c
stdlib/strtod_nan.c
stdlib/strtod_nan_double.h
stdlib/strtod_nan_float.h
stdlib/strtod_nan_main.c
stdlib/strtod_nan_narrow.h
stdlib/strtod_nan_wide.h
stdlib/strtof_l.c
stdlib/strtof_nan.c
stdlib/strtold_nan.c
sysdeps/ieee754/ldbl-128/strtod_nan_ldouble.h
sysdeps/ieee754/ldbl-128/strtold_l.c
sysdeps/ieee754/ldbl-128ibm/strtod_nan_ldouble.h
sysdeps/ieee754/ldbl-128ibm/strtold_l.c
sysdeps/ieee754/ldbl-64-128/strtold_l.c
sysdeps/ieee754/ldbl-96/strtod_nan_ldouble.h
sysdeps/ieee754/ldbl-96/strtold_l.c
wcsmbs/Makefile
wcsmbs/wcstod_l.c
wcsmbs/wcstod_nan.c
wcsmbs/wcstof_l.c
wcsmbs/wcstof_nan.c
wcsmbs/wcstold_l.c
wcsmbs/wcstold_nan.c
  Fix nan functions handling of payload strings (BZ16962, CVE-2014-9761)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e02cabecf0d025ec4f4ddee290bdf7aadb873bb3
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=8f5e8b01a1da2a207228f2072c934fa5918554b8
  (stanshebs, backport)

nptl/Makefile
sysdeps/x86/tst-xmmymm.sh
  Added -s to fix the hard link error with blaze build.
  Added /usr/bin/ar to find "ar" binary with blaze build.
  (rtenneti, not yet upstream)

nptl/sysdeps/unix/sysv/linux/fork.c
  For b/71346989, remove assertions on the parent PID. The assertion in the child
  is incorrect with PID namespaces. (BZ21386)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1d2bc2eae969543b89850e35e532f3144122d80a
  (rtenneti, backport)


sysdeps/ieee754/dbl-64/wordsize-64/s_remquo.c
math/libm-test.inc
  Fix dbl-64/wordsize-64 remquo. (BZ17569]
  Fix for b/75459524, remquo returns the wrong quotient.
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d9afe48d55a412e76b0dcb28335fd4b390fe07ae
  (rtenneti, backport)

resolv/res_query.c
resolv/res_send.c
resolv/nss_dns/dns-host.c
  Improved fix for getaddrinfo() stack-based buffer overflow (CVE-2015-7547)
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e9db92d3acfe1822d56d11abcea5bfc4c41cf6ca
  (stanshebs, backport)

elf/dl-close.c
elf/dl-deps.c
elf/dl-fini.c
elf/dl-load.c
elf/dl-lookup.c
dl-object.c
elf/rtld.c
include/link.h
sysdeps/generic/ldsodefs.h
  Improved version of fastload patch by ambrose@, originally from forge_grtev4_release_branch.
  (stanshebs, not yet upstream)

sysdeps/unix/sysv/linux/check_pf.c
  Fix segfault in getaddrinfo() with large numbers of local ipaddrs [BZ16002]
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=44152e4b05fcc8bae5628cdb37342d9b7bd5ac3c
  (stanshebs, backport)

iconv/gconv_db.c
  Fix leak in error path of iconv_open.
  https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=be64c2ef2ac2357ddff61841f2cc8246e5da1b20
  (stanshebs, backport)
