An update that solves 13 vulnerabilities, contains four
features and has one errata is now available.
Description:
This update for binutils fixes the following issues:
Update to binutils 2.37:
The GNU Binutils sources now requires a C99 compiler and library to
build.
Support for Realm Management Extension (RME) for AArch64 has been added.
A new linker option ‘-z report-relative-reloc’ for x86 ELF targets has
been added to report dynamic relative relocations.
A new linker option ‘-z start-stop-gc’ has been added to disable special
treatment of _start/_stop references when
–gc-sections.
A new linker options ‘-Bno-symbolic’ has been added which will cancel
the ‘-Bsymbolic’ and ‘-Bsymbolic-functions’ options.
The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
–sym-base=0|8|10|16 tells readelf to display the values in base 8, base
10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
A new format has been added to the nm program. Specifying
‘–format=just-symbols’ (or just using -j) will tell the program to
only display symbol names and nothing else.
A new command line option ‘–keep-section-symbols’ has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
The ‘–weaken’, ‘–weaken-symbol’ and ‘–weaken-symbols’ options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
Readelf and objdump can now display and use the contents of .debug_sup
sections.
Readelf and objdump will now follow links to separate debug info files
by default. This behaviour can be stopped via the use of the new ‘-wN’
or ‘–debug-dump=no-follow-links’ options for readelf and the ‘-WN’ or
‘–dwarf=no-follow-links’ options for objdump. Also the old behaviour
can be restored by the use of the ‘–enable-follow-debug-links=no’
configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol tables
and string tables from the separate files which can be used to enhance the
information displayed when dumping other sections, but it does not
automatically imply that information from the separate files should be
displayed.
If other debug section display options are also enabled (eg
‘–debug-dump=info’) then the contents of matching sections in both the
main file and the separate debuginfo file will be displayed. This is
because in most cases the debug section will only be present in one of the
files.
If however non-debug section display options are enabled (eg
‘–sections’) then the contents of matching parts of the separate
debuginfo file will not be displayed. This is because in most cases the
user probably only wanted to load the symbol information from the separate
debuginfo file. In order to change this behaviour a new command line
option --process-links can be used. This will allow di0pslay options to
applied to both the main file and any separate debuginfo files.
Nm has a new command line option: ‘–quiet’. This suppresses “no
symbols” diagnostic.
Update to binutils 2.36:
New features in the Assembler:
General:
X86/x86_64:
ARM/AArch64:
New features in the Linker:
* Add --error-handling-script=<NAME> command line option to allow a
helper script to be invoked when an undefined symbol or a missing
library is encountered. This option can be suppressed via the
configure time switch: --enable-error-handling-script=no.
* Add -z x86-64-{baseline|v[234]} to the x86 ELF linker to mark
x86-64-{baseline|v[234]} ISA level as needed.
* Add -z unique-symbol to avoid duplicated local symbol names.
* The creation of PE format DLLs now defaults to using a more secure set
of DLL characteristics.
* The linker now deduplicates the types in .ctf sections. The new
command-line option --ctf-share-types describes how to do this: its
default value, share-unconflicted, produces the most compact
output.
* The linker now omits the "variable section" from .ctf sections by
default, saving space. This is almost certainly what you want unless
you are working on a project that has its own analogue of symbol
tables that are not reflected in the ELF symtabs.
New features in other binary tools:
* The ar tool's previously unused l modifier is now used for specifying
dependencies of a static library. The arguments of this option (or
--record-libdeps long form option) will be stored verbatim in the
__.LIBDEP member of the archive, which the linker may read at link
time.
* Readelf can now display the contents of LTO symbol table sections when
asked to do so via the --lto-syms command line
option.
* Readelf now accepts the -C command line option to enable the
demangling of symbol names. In addition the --demangle=<style>,
--no-demangle, --recurse-limit and --no-recurse-limit options are also
now availale.
The following security fixes are addressed by the update:
Patch Instructions:
To install this openSUSE Security Update use the SUSE recommended installation methods
like YaST online_update or “zypper patch”.
Alternatively you can run the command listed for your product:
openSUSE Leap 15.3:
zypper in -t patch openSUSE-SLE-15.3-2021-3616=1