Commit Graph

133 Commits

Author SHA1 Message Date
Romain Thomas 0614b7f2cf Add support for PDB build metadata 2025-02-22 04:45:58 +01:00
willboka f97627cd58 Dex: add getter for registers count (#1171)
* Add getters for the register count

* Add tests for the getter for the number of registers

* Fix: use const ref to avoid unecessary copy

---------

Co-authored-by: willboka <willbaka>
2025-02-15 17:56:36 +01:00
Romain Thomas c000b17be0 Enhance PE parser/builder
close #1021
close #1118
close #192
close #276
close #358
close #642
close #746
close #777
resolve #1043
resolve #109
resolve #114
resolve #1167
resolve #124
resolve #137
resolve #140
resolve #277
resolve #472
resolve #473
resolve #517
resolve #523
resolve #528
resolve #530
resolve #546
resolve #69
resolve #876
2025-02-15 05:33:25 +01:00
Romain Thomas cc288c7215 Add support for pretty printing PDB debug info 2025-02-15 04:15:03 +01:00
Romain Thomas 8cae0420d9 Make sure ELF, PE, and Mach-O parser can consume bytes.
Related to #1167
2025-02-04 12:40:32 +01:00
Romain Thomas b086796f43 Resolve #1165 2025-02-01 20:45:31 +01:00
Romain Thomas 94275484bd Resolve #1164 and resolve #1163 2025-01-25 06:16:11 +01:00
bhoehl ac3b57deb1 add support for spc link / urls in spc indirect data 2025-01-25 05:16:29 +01:00
Romain Thomas 1de204ada8 Update stubs 2024-12-25 07:04:13 +01:00
Richard Dzenis 259bf7091f MachO::binary: add extend_section (#1137)
* MachO::Binary::add_section: respect alignment of empty sections

* MachO/layout_check: relax offset continuity requirement for __text section

Sections in MachO are prepended, but __text section is not moved.
Due to this there might be redundant gap between __text section and a
section that comes before __text.

Note: we don't want to alter distance between __DATA and __text, because
there might be position relative references in metadata.

* tests/macho: use lief.MachO.check_layout

* MachO::binary: add extend_section

This commit adds member function MachO::Binary::extend_section that is
able to extend sections from the first segment in MachO.

* macho/test_builder: add test_extend_section
2024-12-24 09:58:47 +01:00
Romain Thomas 2cd4d99fc6 Enhance Mach-O layout checks 2024-12-15 08:04:34 +01:00
Romain Thomas a5cf726667 Add more architectures 2024-12-14 19:48:04 +01:00
Romain Thomas 29b79cbece Add more platforms 2024-12-13 10:36:33 +01:00
Romain Thomas 531377b388 Add support for LC_ATOM_INFO 2024-12-12 20:34:50 +01:00
Romain Thomas 738f60b555 Update Rich headers variables 2024-12-11 18:00:56 +01:00
Romain Thomas a11b1b72a9 Expose write() operation in Rust 2024-12-09 16:58:29 +01:00
Romain Thomas c1a7332233 Add support for AArch64 operands 2024-12-07 18:27:27 +01:00
Romain Thomas 69d777e4c0 Add support for x86/x86-64 operands 2024-12-07 06:01:28 +01:00
Romain Thomas de58725db9 Initial assembler 2024-11-30 07:54:08 +01:00
Romain Thomas de49dceba9 Update nanobind
Resolve: #1128
2024-11-30 05:30:21 +01:00
Romain Thomas 102a6171a7 Some updates 2024-11-23 07:45:56 +01:00
Romain Thomas 33a8e16976 Improve disassembler support 2024-11-23 07:31:41 +01:00
Romain Thomas 4e8838a5a7 Improve the documentation 2024-11-23 06:56:34 +01:00
Romain Thomas a2100f9aeb Update typing 2024-11-23 05:47:09 +01:00
Romain Thomas 8b8b84d180 Add support to disassemble DWARF Function 2024-11-23 05:46:27 +01:00
Romain Thomas ca6ddf5cdd Enhance DWARF types support 2024-11-16 10:16:16 +01:00
Romain Thomas 7a4291bcf1 Improve relocation support 2024-11-09 06:30:58 +01:00
Romain Thomas 3f233e5a95 Add support for eBPF relocations 2024-11-09 06:01:04 +01:00
Romain Thomas 5cf93ae26d Add DWARF support for DW_TAG_typedef support 2024-11-09 04:59:44 +01:00
Romain Thomas f2c54ee5cf Add DWARF imported function iterator 2024-11-09 04:55:27 +01:00
Romain Thomas f7a127eac3 Initial disassembler support 2024-11-02 16:42:41 +01:00
Romain Thomas 86e1769fb0 Enable creating a RPathCommand
Resolve #1078
2024-11-02 10:47:50 +01:00
Romain Thomas 0f8bea0275 Enhance logging API 2024-11-01 06:45:19 +01:00
Romain Thomas 19dd162314 Add RISC-V processor flags 2024-11-01 06:01:26 +01:00
Romain Thomas 27be4e6b2d Add support for GNU_PROPERTY_AARCH64_FEATURE_PAUTH 2024-10-26 15:46:14 +02:00
Romain Thomas 086c49fb7a Add is_targeting_android to determine if an ELF targets Android 2024-10-26 08:48:08 +02:00
Romain Thomas 4cc1dd26be Refactor and clean code in LIEF's abstract layer
Resolve #1119
2024-10-26 05:36:49 +02:00
Romain Thomas 8784fb5aa5 Refactor LIEF's Abstract Function 2024-10-26 05:03:52 +02:00
Romain Thomas 442fb46395 Initial support for Apple's dyld shared cache 2024-10-19 06:29:24 +02:00
Romain Thomas 07b3241fe1 Improve objc support
- Add `LIEF::objc::DeclOpt` to tweak the generated output
- Add `objc::Class:to_decl` & `objc::Class::to_decl`
- Improve the documentation
- Fix issue with Small method address
2024-10-19 04:45:13 +02:00
Romain Thomas b6de8801b2 Improve documentation 2024-10-19 04:39:01 +02:00
Romain Thomas 3def579f75 Add support for creating and analyzing chained fixups & bindings 2024-10-05 05:23:39 +02:00
Romain Thomas 77c633cc22 Add missing bindings 2024-09-21 07:13:46 +02:00
Romain Thomas 5c1f3613cb More values for BuildVersion::PLATFORMS 2024-09-19 10:43:26 +02:00
Romain Thomas 544332db2c Add helpers to determine the platform targeted by a Mach-O 2024-09-19 10:35:42 +02:00
Romain Thomas cd81ed3ba6 Add get_int_from_virtual_address in the abstract layer 2024-09-14 05:57:08 +02:00
Romain Thomas 155febcb77 Expose the chained's next value 2024-09-14 05:01:01 +02:00
Romain Thomas fa41703c1a Add payload helper to access the raw content of the command 2024-09-14 04:23:18 +02:00
Romain Thomas 39b21e4319 Add NONE entry 2024-09-01 14:18:11 +02:00
Romain Thomas d574f58004 Update position 2024-08-31 09:53:43 +02:00