Commit Graph

13 Commits

Author SHA1 Message Date
Romain Thomas b3167cb78b Fix missing relationship between symbols and sections
See: #841
2022-12-11 09:01:31 +01:00
Romain Thomas 77328b0071 Bump year 2022-02-08 21:16:25 +01:00
Romain Thomas e9782c5927 Clean & modernize LIEF code base
This commit (obviously non-atomic) cleans LIEF's code base by:
  - Using pointer semantics (`std::unique_ptr<>`)
  - Using LEAF boost error in the binary stream
  - Reducing the scope of the iterators (`it_section`, ...)
  - Removing `Structures.hpp` from the public headers
  - etc
2022-02-05 06:09:06 +01:00
rthomas a615adbee4 This commit cleans and modernizes the code base of LIEF.
Among the changes:

- It removes the ``and, or, not`` keywords
- It updates the Documentation
- It moves the internal structures in the ``details::`` namespace
2022-01-27 20:18:54 +01:00
Romain Thomas 6720ed2385 Update copyright 2021-01-16 18:17:17 +01:00
Romain Thomas cd1cc457cf Resolve #119 and enhance ELF Python bindings 2018-06-08 10:48:33 +02:00
Romain Thomas 3b17aba10e Refactor some parts of the Architecture:
* JSON visitor are located in the format namespace
  * Visitor are *real* visitor
  * Visitable class has been renamed to Object
  * Due to a bug in Visual Studio 2015, we move to VS2017
2018-03-13 16:49:02 +01:00
Romain Thomas df3d269e23 Enhance ELF symbols 2018-03-07 12:51:28 +01:00
Romain Thomas a40da3e3b4 Enable to export and create dynamic symbols
New API:

  * Binary::{has_dynamic_symbol, has_static_symbol}
  * Binary::{get_dynamic_symbol, get_static_symbol}
  * Binary::add_exported_function
  * Binary::export_symbol

  * Symbol::visibility
  * SymbolVersion::local / SymbolVersion::global

Resolve #112
2018-02-28 16:18:33 +01:00
Romain Thomas d421f12e32 Update doc for symbols 2017-10-30 15:34:53 +01:00
Romain Thomas 66b4cd4550 Fix enums conflicts
Enums changes (C++/C):

ELF:
  * s/SECTION_TYPES/ELF_SECTION_TYPES/
  * s/SECTION_FLAGS/ELF_SECTION_FLAGS/
  * s/SYMBOL_TYPES/ELF_SYMBOL_TYPES/
  * s/SEGMENT_FLAGS/ELF_SEGMENT_FLAGS/

MachO:
  * s/SECTION_TYPES/MACHO_SECTION_TYPES/
  * s/SECTION_FLAGS/MACHO_SECTION_FLAGS/
  * s/SYMBOL_TYPES/MACHO_SYMBOL_TYPES/
  * s/SEGMENTS_FLAGS/MACHO_SEGMENTS_FLAGS/

PE:
  * s/SECTION_TYPES/PE_SECTION_TYPES/

Resolve #32
2017-08-21 09:23:40 +02:00
Romain Thomas 669efa2b52 Move ELF::Binary::{is_exported, is_imported} within ELF::Symbol class
API Changes (C++)
  * ELF::Binary::{is_imported, is_exported}   - Removed
  * ELF::Symbol::{is_imported, is_exported}   - Added
  * ELF::Symbol::{set_imported, set_exported} - Added

API Changes (Python)
  * ELF.Symbol.{imported, exported} - Added
2017-07-18 10:27:54 +02:00
Romain Thomas 306a191a03 First public release 2017-03-30 16:56:49 +02:00