Romain Thomas
969411f8ef
Welcome 2023
2023-01-03 10:38:09 +01:00
Romain Thomas
2a10494b8a
Enhance the Python IO interface
...
Related to #832
2022-12-09 10:22:53 +01:00
Romain Thomas
91d5162be4
Enable support for parsing a Mach-O from memory
2022-11-22 10:55:15 +01:00
Romain Thomas
27754bc698
Update bindings
2022-08-13 04:53:27 +02:00
ζeh Matt
6085bbc949
Use explicit function signature for python bindings on write function
2022-07-22 06:36:35 +02:00
David Sanders
10f8d01b8d
Improve Mach-O handling of page size
2022-06-18 11:00:27 -07:00
David Sanders
0ecd6682c7
Add API to remove a section from a segment & section names
2022-06-12 07:03:48 +00:00
Romain Thomas
e1a8244b92
Enhance Mach-O's builder and add support for recent LC commands
2022-04-16 15:10:56 +02:00
Romain Thomas
7412a4c50c
Add API to get a section from a segment & section names
2022-04-04 06:24:37 +02:00
Romain Thomas
baa023b914
Remove exceptions
2022-04-01 05:38:30 +02:00
Romain Thomas
3816cccd95
Improve Mach-O relocations parser
2022-02-16 22:42:03 +01:00
Romain Thomas
50986fcaf1
Use a span interface
2022-02-13 10:39:38 +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
92812dfe2e
Redesign the configuration of the MachO parser
2021-12-18 12:05:30 +01:00
lucam
9c70f05db9
MachO: add support for LC_FILESET_ENTRY by parsing fileset_entry_command and exporting them via sub Macho::Binary::filesets_
2021-08-02 20:14:24 +02:00
Romain Thomas
56f503ade0
Add an 'index' field for segment commands.
...
This new field aims to optimize the reconstruction of binding/rebase
opcodes.
2021-02-26 15:52:37 +01:00
Romain Thomas
d79b9f4e1f
Return a pointer instead of a reference
2021-02-21 18:00:33 +01:00
Romain Thomas
97ae54f6e1
Add api to select a Mach-O file from its architecture
2021-02-04 04:00:57 +01:00
Romain Thomas
fa423b7e0f
Resolve #533
2021-01-23 20:07:22 +01:00
Romain Thomas
6720ed2385
Update copyright
2021-01-16 18:17:17 +01:00
Romain Thomas
53ce0cd7d4
Fix Windows issues
2021-01-16 09:44:51 +01:00
rthomas
3bd530b880
Resolve #476
2020-10-15 09:14:18 +02:00
rthomas
1390f8b090
Add method to query binary's virtual size
2020-10-12 16:25:33 +02:00
rthomas
2e65a94b7c
Export binding's original offset
2020-10-09 18:42:52 +02:00
Ray Donnelly
68f6154722
Fix typo BuildeVersion => BuildVersion which may lead to my link failures
2019-12-10 15:42:04 +01:00
Romain Thomas
7e88e2b2c0
Add function to check if a symbol can be removed
2019-02-18 14:17:08 +01:00
Romain Thomas
616d739da5
Enable to remove Mach-O symbols
2019-02-18 14:17:08 +01:00
Romain Thomas
6f967238fc
Introduce Mach-O Build Version command
...
New API:
LIEF::MachO::BuildVersion
LIEF::MachO::BuildToolVersion
LIEF::MachO::Binary::has_build_version
LIEF::MachO::Binary::build_version
2018-12-13 15:37:19 +01:00
Romain Thomas
b5a08463ad
Expose API to list functions found in a binary
2018-09-12 14:44:18 +02:00
Romain Thomas
16595316fd
Enable write on Fat Mach-O
2018-07-16 13:32:00 +02:00
Romain Thomas
918438c6be
Enable to remove sections using the abstract layer
2018-07-09 15:08:39 +02:00
Romain Thomas
406115c8d0
Enhance Mach-O modification
...
* Add load command
* Add sections
* Add segments
Resolve #46 (partially)
2018-06-27 14:44:42 +02:00
Romain Thomas
f4e2d81bfe
Add Mach-O encryption info command
2018-06-08 16:39:11 +02:00
Romain Thomas
33a2af4b18
Enhance Python binding
2018-06-08 14:58:00 +02:00
Romain Thomas
cd1cc457cf
Resolve #119 and enhance ELF Python bindings
2018-06-08 10:48:33 +02:00
Romain Thomas
4fcfba0cbf
Enhance Dylib version API
2018-05-16 10:35:51 +02:00
Romain Thomas
9e3b5b45f7
Support new Mach-O command:
...
* Segment split info
* Sub framework
* Dyld environment
2018-05-14 16:34:45 +02:00
Romain Thomas
a16e1c4d13
Expose DataInCode
2018-04-02 08:21:15 +02:00
Romain Thomas
9cadce30e7
Expose basic structure of code signature
2018-04-02 08:21:15 +02:00
Romain Thomas
237611f859
Expose the Dynamic symbol command
2018-03-28 16:14:56 +02:00
Romain Thomas
4969a4c55a
Expose MachO SymbolCommand (LC_SYMTAB)
2018-03-19 16:46:48 +01: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
5d56141061
Show Mach-O opcodes and export-trie
2018-03-02 09:24:59 +01:00
Romain Thomas
9d93cc5ec4
Update API for MachO RPath. Related to 27575527db
2018-01-18 14:41:48 +01:00
Jakob Rieck
196994dc08
Parse the MachO LC_RPATH command
2017-12-15 00:14:00 +01:00
Romain Thomas
aa70e07791
Handle Python BytesIO, TextIO for LIEF' parsers
...
Resolve : #49
2017-11-01 16:44:39 +01:00
Romain Thomas
880b99aeef
Provide MachO::ParserConfig to parametrize the parsing.
...
Resolve : #105
2017-10-30 15:34:53 +01:00
Romain Thomas
3602643f5d
Fix memory leaks in the MachO Python API and create FatBinary
...
API Changes:
LIEF::MachO::Parser won't return a 'std::vector' of MachO::Binary*
but a pointer to MachO::FatBinary object
It's a kind of wrapper on std::vector<MachO::Binary*>
2017-09-29 13:06:08 +02:00