ELFUTILS 0.196 "Split Personality" - https://elfutils.org/
A new release of elfutils is available at: ftp://sourceware.org/pub/elfutils/0.196/ or https://sourceware.org/elfutils/ftp/0.196/ Visit us on the Libera.Chat irc channel #elfutils * NEWS * debuginfod: The $DEBUGINFOD_TIMEOUT environment variable is now enforced when establishing a connection to a server. libdw: New functions dwarf_begin_type, dwarf_begin_elf_type and dwarf_get_type plus new enum Dwarf_Type. Used to select between plain DWARF, split DWARF (.dwo/.dwp) and GNU LTO when opening a file. Added support for DWARF5 supplementary files (.debug_sup) and associated DW_FORM_ref_sup4/8 and DW_FORM_strp_sup forms. Added support for split DWARF debug data when contained in the same file as the skeleton. libdwelf: New functions dwelf_dwarf_debug_sup and dwelf_dwarf_debug_dwp for querying .debug_sup and .debug_dwp section data. libdwfl: Now correctly handles Linux kernel module sections that are not present in sysfs. libdwfl_stacktrace: New functions dwflst_arch_from_uname, dwflst_arch_expected_frame_nregs, dwflst_arch_sp_dwarf_reg and dwflst_arch_sp_perf_reg providing per-architecture constants. The libdwfl_stacktrace interface is experimental and may be subject to API/ABI changes. srcfiles: Now handles CU names and files from split DWARF. stackprof: New profiling tool for collecting systemwide stacktrace profiles. Replaces the eu-stacktrace tool. Requires a C++20 capable compiler. stacktrace: This experimental tool has been removed and replaced with eu-stackprof. strip: Fixed bug where a section's sh_link or sh_info reference could be missing from the debug file. version.h: New macro _ELFUTILS_THREAD_SAFE added to <elfutils/version.h>. Defined to 1 when the elfutils libraries are built with thread safety support enabled. Otherwise it is left undefined. Thread safety support is experimental and is not yet officially supported. * GIT SHORTLOG * Aaron Merey (9): src/strip.c: Unconditionally re-iterate when preserving sh_link/sh_info tests/Makefile.am: Add --track-destroy=yes to valgrind_cmd dwarf_getsrclines.c: Restore initialization of debug_str_offset riscv_disasm.c: Fix out-of-bounds reads debuginfod-client.c: Set CURLOPT_CONNECTTIMEOUT_MS version.h: Add _ELFUTILS_THREAD_SAFE dwarf_tag.c: Fix __libdw_findabbrev race condition Update src/.gitignore and tests/.gitignore Prepare for 0.196 Ekaterine Papava (1): po: Add Georgian (ka) translation Frank Ch. Eigler (2): PR34309: debuginfod: support relative source paths for reproducible builds testsuite backtrace-child.c: Fix thread/spawn/coredump race condition. Kane Wang (1): readelf: Cap stack allocation for bit-array core notes Mark Wielaard (35): config: Remove empty /* */ comment from known-dwarf.awk libdwfl: Fix out of memory handling in link_map.c report_r_debug libdw: Check .debug_line header field minimum_instr_len fits unit data libebl: Handle calloc failure in ebl_sample_perf_regs_mapping debuginfod-client: Use CURLOPT_MAXREDIRS debuginfod: Don't trust x-debuginfod-size in debuginfod_validate_imasig libelf: Check uncompressed gnu size fits into d_size for ELF class elfcompress: Don't over allocate sections bitmap elfcompress: Fix off-by-one sanity check libelf: Get orig_addralign the same way for 32/64 bit ELF in elf_compress elfcompress: Handle shstrtab/symtab names more consistently elfcompress: Handle existing output files (symlinks) tests: Make elf-from-memory testcase work on big endian setups configure: Remove rawmemchr decl check libelf: Correct the size of the in memory datastructure (off-by-one) tests: Add ar header only test to ar-getarsym-mem tests: Enable valgrind for stack trace testcases readelf: Fix interpretation of offset_size_flag in print_cu_index_section libdw: Sanity check macros line_offset before reading libdw: Check there are any header bytes in str_offsets_base_off libdw: Only read CIE augmentation data if it is there libdw: Check there are any header bytes in rnglists libdw: Check there are any header bytes in loclists libdw: Fix __libdw_read_offset size in dwarf_getpubnames.c get_offsets tests: Generate core-ioperm-huge little endian core file on big endian libelf: Handle truncated symbol archive index backends: define strings for all sparc hwcap bits stacktrace: label followed by a declaration is a C23 extension build: Rename pic objects to _.os to support -gsplit-dwarf srcfiles: Handle CU names and files from split DWARF libdwelf: Add dwelf_dwarf_debug_dwp and dwelf_dwarf_debug_sup functions libdw,readelf: fully support DWARF5 supplementary files and forms libdw: Add Dwarf_Type (plain, dwo, gnu_lto) support for dwarf_begin libdw: Support using same file split DWARF libdw: Use dwelf_dwarf_debug_dwp in try_dwp_file Matej Smycka (4): libdwfl: fix OOB read in elf_from_remote_memory phdr check debuginfod: Reject IMA signatures shorter than the signature header elfclassify: Fix invalid realloc when growing ar member path libelf: Bounds-check archive symbol index count on the mmap path Naveed Khan (1): x86: Fix out-of-bounds read of register table in sample_perf_regs_mapping Pengfei Li (1): libdwfl: Handle kernel module sections absent from sysfs Sayed Kaif (8): x86: Fix out-of-bounds heap write in sample_perf_regs_mapping libdwfl: Skip segment that starts past contents_size in elf-from-memory libdw: Fix out-of-bounds write parsing .debug_macro opcode table libelf: Fix out-of-bounds read in elf_getarsym for unterminated symbol table libdw: Fix out-of-bounds read in dwarf_next_cfi CIE augmentation parsing libdw: Fix out-of-bounds read in CFI DW_CFA_advance_loc1 handling libdw: Fix out-of-bounds read in DW_FORM_indirect form length parsing libdw: Fix out-of-bounds read for oversized .debug_line header_length Sergei Zimmerman (1): backends/i386_reloc.def: Fix entry for R_386_TLS_DESC Serhei Makarov (8): eblinitreg_sample.c: guard ebl_set_initial_registers_sample configure.ac, src/: add C++20, add new stackprof tool tests/: add test suite for stackprof doc/stackprof.1: add man page and NEWS for stackprof src/stacktrace.c: remove in favour of stackprof PR34498 libdwfl_stacktace/dwflst_sample_frame.c: API for per-arch constants PR34498 stackprof: adopt new libdwflst API for per-arch constants dwflst_sample_frame.c: fix dwflst_arch_expected_frame_nregs Sujal Tuladhar (1): readelf: Fix heap-buffer-overflow reading .debug_cu_index size table Tiago de Paula (1): config: guard against unset variables in profile.sh 王强 (1): libelf: fix OOB read in elf_getarsym 32-bit archive index count
-----BEGIN PGP SIGNATURE----- iQEzBAABCgAdFiEEbCtjFWO40zBXjTy0dP0/oneecHMFAmp/gs0ACgkQdP0/onee cHP3bgf/ROBa0RVneieNlP8H2f8gRdpfC1wE80tjgMZ+lPGgiJq06URLIF1PnVC/ b6d0b11G8b3fsUkQMAn8QLpIeZVw66TyonAbe1xgxYSivW/g+Mp2a5jRyxiSV943 CcXmBznHpWqlhmDnLoJqKMUx4EepgS44TitZyk4SdFuWEDf0bfuHwD5Q5ppw+Ioa jky1cRFJqpjoPsJnPegtQiQeIBYu3Dd9wqv4KRcVhSL62CupSdSZHP7ZlWg1xSwK GffBT74arPbJv7WH/eDzYXrt9XnRMWgsOhtti/gGBZh6/p81UPmXby44BE26N9J2 eX00YJoMDyW8yW1dE4+7npLszFGyYg== =n1wY -----END PGP SIGNATURE-----
