| by Arround The Web | No comments

libc @ Savannah: The GNU C Library version 2.37 is now available

The GNU C Library

=================

The GNU C Library version 2.37 is now available.

The GNU C Library is used as the C library in the GNU system and

in GNU/Linux systems, as well as many other systems that use Linux

as the kernel.

The GNU C Library is primarily designed to be a portable

and high performance C library.  It follows all relevant

standards including ISO C11 and POSIX.1-2017.  It is also

internationalized and has one of the most complete

internationalization interfaces known.

The GNU C Library webpage is at http://www.gnu.org/software/libc/

Packages for the 2.37 release may be downloaded from:

        http://ftpmirror.gnu.org/libc/

        http://ftp.gnu.org/gnu/libc/

The mirror list is at http://www.gnu.org/order/ftp.html

Distributions are encouraged to track the release/* branches

corresponding to the releases they are using.  The release

branches will be updated with conservative bug fixes and new

features while retaining backwards compatibility.

NEWS for version 2.37

=====================

Major new features:

  • The getent tool now supports the --no-addrconfig option. The output of

  getent with --no-addrconfig may contain addresses of families not

  configured on the current host i.e. as-if you had not passed

  AI_ADDRCONFIG to getaddrinfo calls.

Deprecated and removed features, and other changes affecting compatibility:

  • The dynamic linker no longer loads shared objects from the "tls"

  subdirectories on the library search path or the subdirectory that

  corresponds to the AT_PLATFORM system name, or employs the legacy AT_HWCAP

  search mechanism, which was deprecated in version 2.33.

Security related changes:

  CVE-2022-39046: When the syslog function is passed a crafted input

  string larger than 1024 bytes, it reads uninitialized memory from the

  heap and prints it to the target log file, potentially revealing a

  portion of the contents of the heap.

The following bugs are resolved with this release:

  [12154] network: Cannot resolve hosts which have wildcard aliases

  [12165] libc: readdir: Do not skip entries with zero d_ino values

  [19444] build: build failures with -O1 due to -Wmaybe-uninitialized

  [24774] nptl: pthread_rwlock_timedwrlock stalls on ARM

  [24816] nss: nss/tst-nss-files-hosts-long fails when no interface has

    AF_INET6 address (ie docker)

  [27087] stdio: PowerPC: Redefinition error with Clang from IEEE

    redirection headers

  [28846] network: CMSG_NXTHDR may trigger -Wstrict-overflow warning

  [28937] dynamic-link: New DSO dependency sorter does not put new map

    first if in a cycle

  [29249] libc: csu/libc-tls.c:202: undefined reference to

    `_startup_fatal_not_constant'

  [29305] network: Inefficient buffer space usage in nss_dns for

    gethostbyname and other functions

  [29375] libc: don't hide MAP_ANONYMOUS behind _GNU_SOURCE

  [29402] nscd: nscd: No such file or directory

  [29415] nscd: getaddrinfo with AI_ADDRCONFIG returns addresses with

    wrong family

  [29427] dynamic-link: Inconsistency detected by ld.so: dl-printf.c:

    200: _dl_debug_vdprintf: Assertion `! "invalid format specifier"'

    failed!

  [29463] math: math/test-float128-y1 fails on x86_64

  [29485] build: Make hangs when the test misc/tst-pidfile returns

    FAIL_UNSUPPORTED

  [29490] dynamic-link: [bisected] new __brk_call causes dynamic loader

    segfault on alpha

  [29499] build: Check failed on misc/tst-glibcsyscalls while building

    for RISCV64 on a unmatched hardware

  [29501] build: Check failed on stdlib/tst-strfrom while building for

    RISCV64 on a unmatched hardware

  [29502] libc: alpha sys/acct.h out of date

  [29514] build: Need to use -fPIE not -fpie

  [29528] dynamic-link: __libc_early_init not called after dlmopen that

    reuses namespace

  [29536] libc: syslog fail to create large messages (CVE-2022-39046)

  [29537] libc: [2.34 regression]: Alignment issue on m68k when using

    futexes on qemu-user

  [29539] libc: LD_TRACE_LOADED_OBJECTS changed how vDSO library are

    printed

  [29544] libc: Regression in syslog(3) calls breaks RFC due to extra

    whitespace

  [29564] build: Incorrect way to change MAKEFLAGS in Makerules

  [29576] build: librtld.os: in function `_dl_start_profile':

    (.text+0x9444): undefined reference to `strcpy'

  [29578] libc: Definition of SUN_LEN() is wrong

  [29583] build: iconv failures on 32bit platform due to missing large

    file support

  [29600] dynamic-link: dlmopen hangs after loading certain libraries

  [29604] localedata: Update locale data to Unicode 15.0.0

  [29605] nscd: Regression in NSCD backend of getaddrinfo

  [29607] nscd: nscd repeatably crashes calling __strlen_avx2 when hosts

    cache is enabled

  [29611] string: Optimized AVX2 string functions unconditionally use

    BMI2 instructions

  [29624] malloc: errno is not cleared when entering main

  [29638] libc: stdlib: arc4random fallback is never used

  [29657] libc: Incorrect struct stat for 64-bit time on linux/generic

    platforms

  [29698] build: Configuring for AArch32 on ARMv8+ disables

    optimizations

  [29727] locale: __strtol_internal out-of-bounds read when parsing

    thousands grouping

  [29730] libc: broken y2038 support in fstatat on MIPS N64

  [29746] libc: ppoll() does not switch to __ppoll64 when

    -D_TIME_BITS=64 and -D_FORTIFY_SOURCE=2 is given on 32bit

  [29771] libc: Restore IPC_64 support in sysvipc *ctl functions

  [29780] build: possible parallel make issue in glibc-2.36 (siglist-

    aux.S: No such file or directory)

  [29864] libc: __libc_start_main() should obtain program headers

    address (_dl_phdr) from the auxv, not the ELF header.

  [29951] time: daylight variable not set correctly if last DST change

    coincides with offset change

  [30039] stdio: __vsprintf_internal does not handle unspecified buffer

    length in fortify mode

Release Notes

=============

https://sourceware.org/glibc/wiki/Release/2.37

Contributors

============

This release was made possible by the contributions of many people.

The maintainers are grateful to everyone who has contributed

changes or bug reports.  These include:

Adhemerval Zanella

Adhemerval Zanella Netto

Alan Modra

Alistair Francis

Andreas K. Hüttel

Andreas Schwab

Arjun Shankar

Aurelien Jarno

Carlos Eduardo Seo

Carlos O'Donell

Chenghua Xu

Cristian Rodríguez

Damien Zammit

Fabian Vogt

Fangrui Song

Felix Riemann

Flavio Cruz

Florian Weimer

H.J. Lu

Jakub Wilk

Javier Pello

John David Anglin

Joseph Myers

Jörg Sonnenberger

Kito Cheng

Letu Ren

Lucas A. M. Magalhaes

Ludovic Courtès

Martin Jansa

Martin Joerg

Michael Hudson-Doyle

Mike FABIAN

Noah Goldstein

Paul Eggert

Paul Pluzhnikov

Qingqing Li

Rajalakshmi Srinivasaraghavan

Raphael Moreira Zinsly

Richard Henderson

Sajan Karumanchi

Samuel Thibault

Sergei Trofimovich

Sergey Bugaev

Shahab Vahedi

Siddhesh Poyarekar

Stefan Liebler

Sunil K Pandey

Szabolcs Nagy

Tom Honermann

Tulio Magno Quites Machado Filho

Vladislav Khmelevsky

Wilco Dijkstra

Xi Ruoyao

Xiaolin Tang

Xiaoming Ni

Xing Li

Yu Chien Peter Lin

YunQiang Su

Zong Li

caiyinyu

fanquake

Łukasz Stelmach

наб

We would like to call out the following and thank them for their

tireless patch review:

Adhemerval Zanella

Arjun Shankar

Aurelien Jarno

Carlos O'Donell

Cristian Rodríguez

DJ Delorie

Fangrui Song

Florian Weimer

H.J. Lu

Noah Goldstein

Palmer Dabbelt

Paul E. Murphy

Philippe Mathieu-Daudé

Premachandra Mallappa

Sam James

Siddhesh Poyarekar

Sunil K Pandey

Szabolcs Nagy

Tulio Magno Quites Machado Filho

Wilco Dijkstra

Yann Droneaud

Share Button

Source: Planet GNU

Leave a Reply