Commit Graph

215 Commits

Author SHA1 Message Date
Romain Thomas 8da5388b94 pe: add address range checks for LoadConfiguration fields
Add VA range validation for all address fields in LoadConfiguration
that were previously unchecked. It validates that
each address falls within [imagebase, imagebase + virtual_size).
2026-03-20 18:00:41 +01:00
lief-agent 35de7f3592 Improve testing log API 2026-03-19 17:08:49 +01:00
Romain Thomas 1502b48a17 Fix type hint 2026-03-19 09:25:39 +01:00
Romain Thomas 7ac083bb73 Add contextmanager API for log level 2026-03-19 07:56:02 +01:00
Romain Thomas f986c6dd17 Resolve #1318 2026-03-17 17:11:44 +01:00
Romain Thomas 702f4e51b8 Resolve #1310 2026-03-17 15:01:41 +01:00
Romain Thomas 6c2e39cfc0 modernize python API 2026-03-17 14:00:48 +01:00
Romain Thomas e1844d4ecc Add check_layout for ELF
This commit implements the check_layout function for ELF binaries
similar to PE and Mach-O. This function aims to ensure that the
ELF binary is consistent according to various loader (e.g., Linux, Android)
2026-03-17 08:30:21 +01:00
lief-agent 83bdf9c8d4 Add support for ELF DT_AUXILIARY and DT_FILTER
Resolve #1159
2026-03-08 11:33:50 +01:00
Charles Bousseau 63d5500ee7 Add TLSDESC_PLT and TLSDESC_GOT to ELF dynamic tags (#1311)
* Add TLSDESC_PLT and TLSDESC_GOT to ELF dynamic tags

---------

Co-authored-by: Romain Thomas <me@romainthomas.fr>
2026-03-07 20:57:50 +01:00
Romain Thomas e4ceecd6c4 Add support to insert an import at a specific position
close #1298
2026-02-14 11:09:22 +01:00
Romain Thomas 9c4204a358 Enhance API for MachO fileset
Fix #1297
2026-02-14 11:09:17 +01:00
Romain Thomas 28d64ba71b initial support to generate C/C++ code from DWARF/PDB 2026-02-14 11:08:59 +01:00
Romain Thomas 64d13d63e6 enhance the API for PDB LF_ONEMETHOD 2026-02-14 11:08:50 +01:00
Romain Thomas 3b012a0a7f enhance API for PDB _simple_ types 2026-02-14 11:08:45 +01:00
Romain Thomas b19a17ee89 enhance API for PDB LF_ARRAY 2026-02-14 11:07:30 +01:00
Romain Thomas b5fd54aab4 enhance API for PDB LF_PROCEDURE 2026-02-14 11:07:24 +01:00
Romain Thomas f23d3bccd4 enhance API for PDB LF_ENUM 2026-02-14 11:06:19 +01:00
Romain Thomas a89d452efa Add API to access a PDB from its index 2026-02-14 10:55:28 +01:00
Romain Thomas b0502c94d0 Ghidra - Support DWARF generation for raw binaries/firmware
This commit introduces support for generating DWARF debug information
for binaries that LIEF cannot natively parse (e.g., raw firmware or unknown architectures).

Related to #1249
2026-02-14 10:55:23 +01:00
Romain Thomas 38e5565568 Abstract pdb::Type::{size, name} 2026-02-14 10:55:16 +01:00
Romain Thomas 0b14561dc9 Add IMAGE_SUBSYSTEM_XBOX_CODE_CATALOG 2026-01-31 13:40:10 +01:00
Romain Thomas 3d699730c2 Add API to select a Mach-O binary by architecture from a FAT binary
Close #1283
2026-01-25 13:34:07 +01:00
Romain Thomas fd6b2c70c5 LLVM 22 Update 2026-01-24 17:18:48 +01:00
Romain Thomas 3fc8089ec6 Update typing 2026-01-24 09:39:58 +01:00
Romain Thomas c5223bf112 Update nanobind to v2.10.x 2026-01-24 09:39:04 +01:00
Laurent ca86140c13 Add missing segments in X86_64 coredump parser (#1278)
* Add missing segments in x86_64 coredump parser

* Add missing x86_64 segments in Python bindings

* Add typing

---------

Co-authored-by: Lo <llaubin@quarkslab.com>
Co-authored-by: Romain Thomas <me@romainthomas.fr>
2026-01-02 18:35:37 +01:00
Romain Thomas 29b8c47b12 Fix typing 2026-01-02 17:40:03 +01:00
Romain Thomas 9ddfcd89ba Add from_bytes helper 2026-01-02 17:39:42 +01:00
Romain Thomas d6a97f0aa7 Add python bindings for vector_iostream 2026-01-02 17:38:39 +01:00
Romain Thomas 683782d878 Enable instantiation of DWARF editor from format and arch 2026-01-02 13:56:24 +01:00
Romain Thomas ab5078fcd3 Add bitfields support 2026-01-02 08:27:33 +01:00
Romain Thomas 107d9c51c5 Resolve #1265 2026-01-01 20:20:11 +01:00
Romain Thomas 4196d2fdbf Add bindings for the binarystream interfaces 2025-11-12 12:20:38 +01:00
Romain Thomas 6f8ec24955 Add function to find enum entry by value 2025-11-08 13:24:49 +01:00
Romain Thomas 7b36cbd8aa Expose is_stack_based for DWARF variables 2025-10-12 10:40:37 +02:00
Romain Thomas 00619e2ed7 Add support to access or set Enum's underlying type" 2025-10-12 10:40:26 +02:00
Romain Thomas 7fbc31cd81 Add support for DWARF Enum entries 2025-10-04 18:49:51 +02:00
Romain Thomas be775c7185 Fix missing return type 2025-10-04 09:11:44 +02:00
Romain Thomas f6cd5db689 Enhance DWARF support to support DW_AT_description and LexicalBlock. 2025-10-04 08:29:19 +02:00
Romain Thomas 55878992fc Add LIEF::COFF:Section::coff_string 2025-10-04 07:57:42 +02:00
Romain Thomas 3f406b640b Add support to assign a register to a function parameter 2025-09-21 09:58:04 +02:00
Romain Thomas 7f4fe593db Add virtual size information in the abstract layer 2025-09-21 09:57:57 +02:00
Romain Thomas 2313755619 Resolve #1238 2025-09-07 15:41:15 +02:00
Romain Thomas f6c9cbfe78 Update PE's ImageGuard flags 2025-08-19 09:21:01 +02:00
Romain Thomas c719c4e6ba Add extended info 2025-08-10 13:20:46 +02:00
Romain Thomas c4255935e4 Add offset information 2025-08-10 13:20:44 +02:00
Romain Thomas 1f208904e9 Enhance support for IMAGE_ARM64EC_CODE_RANGE_ENTRY_POINT 2025-08-10 13:20:43 +02:00
Romain Thomas db6074d00e Add is_shared_cache 2025-08-10 13:20:41 +02:00
Romain Thomas a27b986882 Improve get_function_address 2025-08-10 13:20:40 +02:00