GLibC Changelog

What's new in GLibC 2.17

Jul 11, 2013
  • Optimization of memcpy for MIPS.
  • CVE-2011-4609 svc_run() produces high cpu usage when accept fails with
  • EMFILE has been fixed (Bugzilla #14889).
  • The add-on ports collection is now distributed in the "ports" subdirectory
  • of the main GNU C Library distribution, rather than separately.
  • Port to ARM AArch64 contributed by Linaro.
  • Support for STT_GNU_IFUNC symbols added for s390 and s390x.
  • Optimized versions of memcpy, memset, and memcmp added for System z10 and
  • zEnterprise z196.
  • Implemented by Andreas Krebbel.
  • The new function secure_getenv allows secure access to the environment,
  • returning NULL if running in a SUID/SGID process.This function replaces
  • the internal function __secure_getenv.
  • SystemTap static probes have been added into the dynamic linker.
  • Implemented by Gary Benson.
  • Optimizations of string functions strstr, strcasestr and memmem.
  • Implemented by Maxim Kuvyrkov.
  • The minimum Linux kernel version that this version of the GNU C Library
  • can be used with is 2.6.16.
  • Optimizations of string functions memchr, wcschr, wcscpy, and wcsrchr for
  • powerpc POWER7.Implemented by Will Schmidt.
  • New configure option --disable-nscd builds the C library such that it
  • never attempts to contact the Name Service Caching Daemon (nscd).
  • New configure option --disable-build-nscd avoids building nscd itself;
  • this is the default if --disable-nscd is used.
  • Improved support for cross-compilation, including cross-testing and
  • bootstrap builds without a previously built glibc.
  • Several testsuite tests are now able to test multiple IFUNC variants of an
  • interface, rather than just testing the one that would be chooen by
  • default.
  • New configure options --with-bugurl and --with-pkgversion, for
  • distributors to use to embed their bug-reporting and package version
  • information in --help and --version output.
  • The ttyname and ttyname_r functions on Linux now fall back to searching for
  • the tty file descriptor in /dev/pts or /dev if /proc is not available.This
  • allows creation of chroots without the procfs mounted on /proc.
  • The `crypt' function now fails if passed salt bytes that violate the
  • specification for those values.On Linux, the `crypt' function will
  • consult /proc/sys/crypto/fips_enabled to determine if "FIPS mode" is
  • enabled, and fail on encrypted strings using the MD5 or DES algorithm
  • when the mode is enabled.
  • The `clock_*' suite of functions (declared in ) is now available
  • directly in the main C library.Previously it was necessary to link with
  • -lrt to use these functions.This change has the effect that a
  • single-threaded program that uses a function such as `clock_gettime' (and
  • is not linked with -lrt) will no longer implicitly load the pthreads
  • library at runtime and so will not suffer the overheads associated with
  • multi-thread support in other code such as the C++ runtime library.
  • New locales: ayc_PE, doi_IN, ia_FR, mni_IN, nhn_MX, niu_NU, niu_NZ,
  • sat_IN, and szl_PL.

New in GLibC 2.14 (Oct 17, 2011)

  • glibc's RPC implementation was obsoleted in favor of TI-RPC, but still allows existing programs to run.
  • The new Linux interfaces clock_adjtime, name_to_handle_at, open_by_handle_at, syncfs, setns, and sendmmsg were added.
  • New locales os_RU, bem_ZA, en_ZA, ff_SN, sw_KE, sw_TZ, lb_LU, wae_CH, yue_HK, lij_IT, and mhr_RU were added.
  • New encodings CP770, CP771, CP772, CP773, and CP774 were added.
  • A new program called sotruss was added to allow tracing calls through PLTs.
  • The malloc hook implementation, which never worked since the introduction of threads, was marked as deprecated.
  • Many bugs were fixed

New in GLibC 2.11.2 (Jun 7, 2010)

  • New interfaces pthread_getname_np and pthread_setname_np have been added, and the new Linux interface recvmmsg has been added. STT_GNU_IFUNC has been implemented for SPARC. ...
  • The dynamic linker now recognizes supported ABI versions from the EI_ABIVERSION field in the ELF header. A new NIS mode selector ADJUNCT_AS_SHADOW, useful for some installations involving Solaris, has been implemented. Three new locales have been added. A large number of bugs and internal improvements have been made.

New in GLibC 2.11.1 (Jan 21, 2010)

  • New interfaces: execvpe, pthread_sigqueue, mkstemps, mkstemps64, mkostemps,
  • mkostemps64
  • Implemented by Ulrich Drepper.
  • Checking version of longjmp added that fails if an uninitialized stack
  • frame would be created. Implemented by Ulrich Drepper.
  • STT_GNU_IFUNC is now supported in static executables.
  • Implemented by H.J. Lu.
  • STT_GNU_IFUNC implemented for PPC by Alan Modra.
  • New optimized string functions for x86-64: strstr, strcasestr, memcmp,
  • strcspn, strpbrk, strspn, strcpy, stpcpy, strncpy, strcmp (SSE2, SSE4.2),
  • strncmp (SSE2, SSE4.2), strchr (SSE4.2), strrchr (SSE4.2).
  • Contributed by H.J. Lu.
  • strlen, rawmemchr, strcmp (SSSE3), strncmp (SSSE3).
  • Implemented by Ulrich Drepper.
  • New optimized string functions for x86: strlen, strcspn, strspn, strpbrk,
  • strstr, strcasestr.
  • Contributed by H.J. Lu.
  • Support for fma instruction in AVX on x86-64.
  • Implemented by H.J. Lu and Ulrich Drepper.
  • AVX support in x86-64 auditing support in ld.so.
  • Implemented by H.J. Lu.
  • STB_GNU_UNIQUE support added.
  • Implemented by Ulrich Drepper.
  • Implement second fallback mode for optimized DNS lookup for even more
  • broken environments. If two requests from the same port are not
  • handled correctly close the socket and open a new one before sending
  • the second request. The 'single-request-reopen' option in /etc/resolv.conf
  • can be used to select this mode right away, instead of rediscovering the
  • necessity is every process again.
  • Implemented by Ulrich Drepper.
  • New resolver flag RES_USE_DNSSEC to enable use of verified lookup.
  • Implemented by Adam Tkac.
  • Optimized iconv conversions for S390x.
  • Implemented by Andreas Krebbel.
  • Using condvars with PI mutexes is now more efficient due to kernel
  • support for requeueing to PI futexes. NPTL support added for x86-64.
  • Implemented by Ulrich Drepper.
  • New locales: ps_AF, my_MM

New in GLibC 2.10.1 (May 28, 2009)

  • Several new interfaces were added.
  • Faster strlen(), strchr(), strchrnul(), strrchr(), memchr(), and rawmemchr() functions were implemented for x86-64.
  • The malloc implementation... can be compiled to be less memory efficient but with higher performance in multi-threaded programs.
  • A compile error for invalid C++ code when using the string function was resolved.
  • Support for selecting between multiple function definitions at runtime was added.
  • The libcrypt library can now use the hash function implementations in NSS.
  • Two new locales were added