Romain Thomas
f721d02d91
Update doc
2017-08-01 10:18:16 +02:00
Romain Thomas
4600c2ba8d
Provide API to configure the LIEF's logger
...
API changes:
LIEF::Logger::{set_level, set_verbose_level...}
Resolve : #68
2017-07-31 15:16:02 +02:00
Romain Thomas
782295bfb8
Parser Dyld Info in depth (binding, rebases, exports)
...
Binding and rebase bytes codes are now parsed as well as export info
trie. Through ``RelocationDyld`` we created kind of *virtual* relocation
to modeling relocation process performed by Dyld
API Changes (Python / C++)
* MachO::RelocationDyld - Added
* MachO::RelocationObject - Added
* MachO::Relocation - Updated according to previous ones
* MachO::ExportInfo - Added
* MachO::BindingInfo - Added
* MachO::DyldInfo::rebase_opcodes - Added
* MachO::DyldInfo::bindings - Added
* MachO::DyldInfo::bind_opcodes - Added
* MachO::DyldInfo::weak_bind_opcodes - Added
* MachO::DyldInfo::lazy_bind_opcodes - Added
* MachO::DyldInfo::exports - Added
* MachO::DyldInfo::export_trie - Added
* MachO::Symbol
- Tied to MachO::BindingInfo (if any)
- Tied to MachO::ExportInfo (if any)
* MachO::Binary::relocations - Added
* MachO::Binary::has_symbol - Added
* MachO::Binary::get_symbol - Added
Resolve : #67
2017-07-30 17:29:09 +02:00
Romain Thomas
5b993117ed
Parse Mach-O 'Version Min' command
...
Resolve : #44
2017-07-27 15:50:55 +02:00
Romain Thomas
f330fa887d
Improve parser API
...
API Changes:
- lief.parse() can takes a list of integer as entry
- LIEF::MachO::parse can take a std::vector<uint8_t> as entry
Related to #49
2017-07-27 15:46:03 +02:00
Romain Thomas
cbd1aed703
Update doc with ELF's relocations
2017-07-25 08:09:15 +02:00
Romain Thomas
9391238f11
Add the underlying executable format in the abstract layer
...
API changes (Python/C++):
* lief.Binary.format
* LIEF::ELF::Binary::format()
2017-07-22 08:23:17 +02:00
Romain Thomas
29c8157ecc
Parse Mach-O relocations and add MachO API to retrieve section from name
...
API Update:
lief.MachO.Section.relocations - to access to the relocations
lief.MachO.binary.get_section - Get section from name
lief.MachO.binary.has_section -Check if section with given name exists
Resolve #57
2017-07-17 17:27:28 +02:00
Romain Thomas
a89bc6df4f
Add import hash function as well as ordinal resolver functions (PE part)
...
For PE binary it's now possible get the *imphash* value through the
lief.PE.get_imphash function. It's also possible to resolve ordinals
imports by using the lief.PE.resolve_ordinals
Resolve #54
2017-07-16 18:02:54 +02:00
Romain Thomas
b7b0bde4d5
Add a *purpose* property to ELF relocations
...
Adding such property enables to store plt/got and dynamic relocations
in a same container. (related to #51 )
2017-07-11 11:22:21 +02:00
Romain Thomas
c359778194
Parse LC_SOURCE_VERSION. Resolve #45
2017-07-07 21:21:22 +02:00
Romain Thomas
e2b81e0a8e
Parse MachO Dyld Info, add Python API and update doc
2017-07-04 14:46:48 +02:00
Romain Thomas
744c24518c
Add the endianness in the abstraction layer ( resolve #29 )
2017-06-28 07:50:00 +02:00
Romain Thomas
8ddc71d337
Parse PE Rich Header ( resolve #15 )
2017-06-27 09:12:40 +02:00
Romain Thomas
733053bc63
Enhance PE resources
...
* Improve Resource Manager
* Fix bug when rebuilding resources (aligment issue)
* Provide a Python API to access to the resource tree
* Pretty print lang/sublang of resources
* Parse resource dialog
* Parse resource icons
* Parse resource version
* Add tests on the resource builder
* Add tutorial (related to #28 )
2017-06-11 16:47:16 +02:00
Romain Thomas
a8e1e40e1e
Update doc
2017-06-11 16:21:30 +02:00
Romain Thomas
77d43f9db4
Fully handle section-less ELF binaries
...
* Fix #25
* ELF `tiny` binaries are now handled (see #7 )
* Computation of dynamic symbols can be done with differents methods:
hash table, sections and relocations. (See LIEF::ELF::DYNSYM_COUNT_METHODS)
* ELF parser can be configured to use one of the DYNSYM_COUNT_METHODS
* Improve tests
2017-05-06 16:18:02 +02:00
Romain Thomas
86b2963e96
Fix missing entries in the documentation
2017-05-01 16:24:27 +02:00
Romain Thomas
d977158794
Fix typos
2017-04-06 17:49:33 +02:00
Romain Thomas
306a191a03
First public release
2017-03-30 16:56:49 +02:00