LIEF

Edit Package LIEF
https://lief-project.github.io/

The purpose of this project is to provide a cross platform library
which can parse, modify and abstract ELF, PE and MachO formats.

Main features:

Parsing: LIEF can parse ELF, PE, MachO and provides an
user-friendly API to access to format internals.
Modify: LIEF enables to modify some parts of these formats
Abstract: Three formats have common features like sections,
symbols, entry point... LIEF factors them.
API: LIEF can be used in C, C++ and Python

Refresh
Refresh
Source Files
Filename Size Changed
LIEF-0.12.0.tar.gz 0014424608 13.8 MB
LIEF-fix_library.patch 0000000529 529 Bytes
LIEF.changes 0000007301 7.13 KB
LIEF.spec 0000004420 4.32 KB
Revision 8 (latest revision is 9)
Luigi Baldoni's avatar Luigi Baldoni (alois) accepted request 965015 from Luigi Baldoni's avatar Luigi Baldoni (alois) (revision 8)
- Update to version 0.12.0
  ELF:
  * Added the support to insert and assign a
    `lief.ELF.SymbolVersionAuxRequirement` class
  * Enhance the ELF parser to support corner cases
  * New ELF Builder which is more efficient in terms of speed and
    in terms of number of segments added when modifying binaries.
  * Improved the reconstruction of the dynamic symbol table by
    sorting local symbols and non-exported symbols. It fixes a
    warning when parsing a modified binary with readelf.
  MachO:
  * The API to configure the MachO parser has been redesigned to
    provide a better granularity
  * Added support for the `LC_FILESET_ENTRY`. This command is
    usually found in kernel cache files.
  * `LIEF::MachO::Binary::get_symbol` now returns a pointer
    (instead of a reference). If the symbol can't be found, it
    returns a nullptr.
  * Add API to select a `~lief.MachO.Binary` class from a
    `~lief.MachO.FatBinary` class by its architecture.
  * Handle the `0x0D` binding opcode.
  * Fixed performances issues in the Mach-O parser.
  PE:
  * Adding `lief.PE.OptionalHeader.computed_checksum` that
    re-computes the `lief.PE.OptionalHeader.checksum`.
  * Enable to recompute the `~lief.PE.RichHeader` class.
  * Add support for PE's delayed imports.
  * `lief.PE.LoadConfiguration.reserved1` has been aliased to
    `lief.PE.LoadConfiguration.dependent_load_flags`.
  * `lief.PE.LoadConfiguration.characteristics` has been aliased
     to `lief.PE.LoadConfiguration.size`.
  * We updated the PE checks to support PE files that have a
    corrupted `lief.PE.OptionalHeader.magic`.
  DEX:
  * Added support for DEX's fields.
  Abstraction:
  * Abstract binary imagebase for PE, ELF and Mach-O
    (`lief.Binary.imagebase`).
  * Add `lief.Binary.offset_to_virtual_address` method.
  * Add PE imports/exports as *abstracted* symbols.
  Compilation & Integration:
  * Updated and modernized the CMake integration files.
  * Enable to use a pre-compiled version of spdlog. This feature
    aims at improving compilation time when developing on LIEF.
  * Enable to feed LIEF's dependencies externally (c.f.
    `lief_third_party`)
  * Replace the keywords `and`, `or`, `not` with `&&`, `||` and
    `!`.
  Dependencies:
  * Upgrade to MbedTLS 3.1.0
  * Upgrade Catch2 to 2.13.8
  * The different dependencies can be *linked* externally (cf.
    above and `lief_third_party`).
  Documentation:
  * New section about the errors handling (`err_handling`) and
    the upcoming deprecation of the exceptions.
  * New section about how to compile LIEF for
    debugging/developing. See: `lief_debug`.
  General Design:
  * LIEF now exposes Section/Segment's data through a `span`
    interface.
  Exceptions:
  * We started to refactor the API and the internal design to
    remove C++ exceptions.
- Refresh LIEF-fix_library.patch
Comments 0
openSUSE Build Service is sponsored by