ELFUTILS 0.195 "Handwritten" - https://elfutils.org/

A new release of elfutils is available at:
ftp://sourceware.org/pub/elfutils/0.195/
or https://sourceware.org/elfutils/ftp/0.195/

Visit us on the Libera.Chat irc channel #elfutils

* NEWS *

CONTRIBUTING:

elfutils has adopted a policy on the use of Large Language Models
(LLMs).  Contributions containing output generated by LLMs are not
currently being accepted.

debuginfod:

Introduce --home-redirect and --home-html switches allowing for
redirecting to custom URL and/or serving a custom html file, if
document root is requested.  Related: PR33635.

New command line option --max-depth that limits scanner depth.

Metadata queries now support lookup by build-id.

New function debuginfod_default_progressfn added to libdebuginfod.

debuginfod-find:

Fixed bug where DEBUGINFOD_PROGRESS environment variable was ignored if
debuginfod-find was invoked without -v.

elflint:

Recognize .debug_*.dwo sections, .relro_padding sections as well as
SHT_AARCH64_ATTRIBUTES, SHT_LLVM_LTO and SHT_LLVM_ADDRSIG.

Accept R_X86_64_DTPOFF64 in ET_REL files.

Add lints for PT_LOAD, PT_INTERP and PT_PHDR segments.

libdw:

Added language constants for Erlang, Elixir and Gleam.

Fixed bug that caused sections in DWARF package files (.dwp) to be
missed if section .debug_dwp is present.

libdwfl:

Improved handling of Linux kernel object files with sh_addr fields set
to non-zero.

libdwfl_stacktrace:

AArch64 and 32-bit ARM support added.  The libdwfl_stacktrace library
interface is experimental and may be subject to API/ABI changes.

libelf:

New man pages for gelf.h functions.

Fixed gelf_getmove and gelf_update_move assertion failures caused by
incorrect ELFCLASS32/ELFCLASS64 handling.

elf_update now correctly handles binaries with 65280+ sections when
section zero headers aren't loaded.

readelf:

Improved support for DWARF Package Files (.dwp) sections.

Improved output format for .gcc_except_table.

stacktrace:

This experimental tool is scheduled to be removed in the next release
and replaced with the upcoming eu-stackprof tool.

* GIT SHORTLOG *

Aaron Merey (46):
  link_map.c: Declare name_no_sysroot only if openat2 RESOLVE_IN_ROOT
    is supported
  readelf: Allocate job_data one-by-one as needed
  doc: Add gelf_getshdr.3
  doc: Add gelf_offscn.3
  doc: Add gelf_newphdr.3
  doc: Add gelf_getrel.3 and gelf_getrela.3
  doc: Add gelf_update_shdr.3
  doc: Add gelf_update_ehdr.3
  doc: Add gelf_newehdr.3
  doc: Add gelf_update_rel.3 and gelf_update_rela.3
  doc: add man pages for gelf get symbol versioning entry functions
  doc: add man page for gelf update symbol versioning entry functions
  gelf_getmove.c: Handle ELFCLASS32 and ELFCLASS64 separately
  Make __libdwfl_debuginfod_find_* functions thread safe
  src/elfclassify.c: Fix memory leak in check_ar_members
  CONTRIBUTING: Add Policy on the Use of LLM-generated Content
  doc: Add gelf_fsize.3
  doc: Add gelf_getphdr.3
  doc: Add gelf_update_phdr.3
  doc: Add gelf_getchdr.3
  doc: Add gelf_xlatetof.3 and gelf_xlatetom.3
  dwarf_begin_elf.c: Fix lock resource leak
  dwarf_tag.c: Protect cu->last_abbrev_offset with lock
  doc: Add gelf_getsym.3
  doc: Add gelf_update_sym.3
  doc: Add gelf_getsymshndx.3
  doc: Add gelf_update_symshndx.3
  doc: Add gelf_getsyminfo.3
  doc: Add gelf_update_syminfo.3
  doc: Add gelf_getdyn.3
  doc: Add gelf_update_dyn.3
  doc: Add gelf_getmove.3
  doc: Add gelf_update_move.3
  doc: Add gelf_getlib.3
  doc: Add gelf_update_lib.3
  doc: Add gelf_getnote.3
  doc: Add gelf_getauxv.3
  doc: Add gelf_update_auxv.3
  doc: Add gelf_checksum.3
  gelf_update_move.c: Handle ELFCLASS32 and ELFCLASS64 separately
  libdebuginfod: Add the default progress callback function to the
    public API
  debuginfod-find: Restore DEBUGINFOD_PROGRESS behaviour
  debuginfod-client.c: Add dummy debuginfod_default_progressfn
  doc: Update libelf.3 with gelf.h information
  config/elfutils.spec.in: package gelf.3 in %files
  Prepare for 0.195

Andreas Schwab (1):
  Fix const-correctness issues

Arnout Engelen (1):
  tests: improve reliability of run-sysroot.sh

Fabian Rast (1):
  elflint: add additional lints to LOAD, INTERP and PHDR segments

Frank Ch. Eigler (1):
  PR33937: docs: catch up debuginfod-find / client docs to code

Josef Cejka (1):
  debuginfod: add metadata query by buildid

Mark Wielaard (28):
  debuginfod: Mark internal debuginfod-client.c functions static
  libdw: Add Erlang, Elixir and Gleam language constants
  libdw: Translate DW_LANG_Algol68 to DW_LNAME_Algol68 with lversion
    1978
  libdw: Make sure to get .eh_frame_hdr with .eh_frame in getcfi_shdr
  libelf: Add gelf_fsize main check
  tests: Disable valgrind for run-large-elf-file and run-compress-test
  forge: Add a forgejo workflow to run various tests
  stacktrace: fix a C23-ism in sigint_handler
  configure: Add -Wmissing-parameter-name if available
  configure: Add -Wdeprecated-non-prototype and -Wfree-labels if
    available
  elflint: Accept R_X86_64_DTPOFF64 in ET_REL files
  elflint, readelf, support SHT_LLVM_LTO and SHT_LLVM_ADDRSIG
  elflint: Recognize .relro_padding section
  readelf: Handle CUs that share an addr_base or str_offsets_base
  readelf: Don't warn for CUs with the same base addresses
  tests: Skip tests on non-ELF bitcode object files
  aarch64: Recognize SHT_AARCH64_ATTRIBUTES
  libdwfl: Work around ET_REL files with sh_addr fields set to non-zero
  Replace assert with eu_static_assert where possible.
  libelf: elf_update should make sure section zero exists
  readelf: Print split DWARF CU version, unit type and id
  debuginfod: Make sure PATH_MAX exists in debuginfod-client.c
  readelf: print .debug_cu_index and .debug_tu_index sections
  libebl: Explicitly check Ehdr can be used in eblopenbackend
  elflint: Recognize debug dwo sections
  config: Make known-dwarf work for DW_SECT
  elf_newdata: Make sure to set d_type to ELF_T_BYTE and d_align to one
  libdw: Recognize .debug_dwp section in scn_dwarf_type as TYPE_DWO

Martin Cermak (1):
  PR33635: Introduce debuginfod --home-redirect and --home-html

Martin Liška (2):
  readelf: improve output format for .gcc_except_table
  readelf: gcc_except_table: add newline in output

Michael Trapp (1):
  debuginfod: add filename to archive_exception log

Piotr Drąg (2):
  po: Update POTFILES.in
  po: Update Polish translation

Roman Bolshakov (1):
  debuginfod: Add a flag to limit scan depth

Samuel Dainard (1):
  readelf: Fix NULL pointer dereference in process_symtab with -D flag

Sergei Trofimovich (1):
  libcpu/i386_parse.y: drop unused `cnt` variable

Serhei Makarov (8):
  PR33854: fix regression in dwflst_perf_sample_getframes
  libdwfl/linux-pid-attach.c PR33974:
    __libdwfl_set_initial_registers_thread on non-Linux
  backends/: add aarch64 sample_regs support
  backends/: fixup x86 initreg_sample to share code with aarch64
  libebl/eblinitreg_sample.c: fix a potential off-by-one error
  backends/: should use size_t n_regs_mapping for *_sample_sp_pc
  backends/: add 32-bit ARM sample_regs support
  src/stacktrace.c: Enable ARM support

Reply via email to