Commit Graph

94 Commits

Author SHA1 Message Date
Nikolaj Schlej
a4a455d0ff Add support for x86 recovery startup AP data entries in special padding files 2022-09-14 19:04:44 +02:00
Nikolaj Schlej
934ce1f3f8 Kaitai-based Intel ACM and BootGuard parsers
As the first step towards automated parsing, this change set replaces outdated BootGuard-related parsers with shiny new KaitaiStruct-based ones.
It also does the following:
- improves Intel FIT definitions by using the relevant specification
- adds sha1, sha384, sha512 and sm3 digest implementations
- updates LZMA SDK to v22.01
- moves GUIDs out of include files to prevent multiple instantiations
- enforces C++11
- adds Kaitai-based parsers for Intel FIT, BootGuard v1 and BootGuard v2 structures
- makes many small refactorings here, there and everywhere
2022-09-10 13:14:29 +02:00
Nikolaj Schlej
d6bf25df67 Add CodeQL, build everything for PVS-Studio 2022-09-02 23:11:39 +02:00
Nikolaj Schlej
787e02181a Run PVS-Studio static analyzer as part of CI/CD 2022-09-02 22:27:32 +02:00
Nikolaj Schlej
3977fcaed9 Add Qt6-only CMake file for UEFITool to use for CI/CD 2022-09-02 21:40:32 +02:00
Nikolaj Schlej
4006954bc1 Downcast all qtsizetype to UINT32 manually, apply consistent identation 2022-08-28 12:47:01 +02:00
vit9696
83548d4c8a Add new macOS style icon wrapper 2022-08-28 07:01:47 +03:00
Nikolaj Schlej
12f40cf289 - introduce Extract Uncompressed and Uncompressed Hex View actions for compressed items
- remove unused code to support Qt 5.5 and earlier Qt versions
- remove unused section parsing code
- add a check and description for section alignment quirk (compiled out for now)
2022-08-24 22:17:51 +02:00
joevt
f9c35f77a6 Improve firmware parser and tool robustness
closes #241
2021-10-07 18:51:39 +03:00
Vampire Cat
34c8ad8dcc
Updated code to support newer Qt versions (#237) 2021-04-04 12:09:23 +03:00
Nikolaj Schlej
115d338a70 Display non-ASCII-named FPT partition table entry names as hex (fixing #215) 2020-11-22 18:01:44 -08:00
p-state
8e189f88df
Print found item as "parent/child" path (#203) 2020-03-14 07:17:49 +03:00
p-state
0f31b1401e
Print parent's name in search results (#201) 2020-03-12 20:38:48 +03:00
p-state
07dbfa3f96
Allow to use enter/return key within list widgets to navigate (#200) 2020-03-12 20:38:22 +03:00
p-state
ac1f24ec77
Fix window is not in full screen mode after closing the app (#202) 2020-03-12 20:38:08 +03:00
vit9696
0f2ede398d Implement LZMAF86 support
references #197
2020-03-06 23:54:20 +03:00
Nikolaj Schlej
90ff19692d Add support for IFWI 1.7 and 2.0 layouts, improve ME parser, fix small issues spotted by static analysis 2019-08-19 11:36:02 -07:00
vit9696
d95e533441 Fix Dock drag and drop 2019-08-18 05:02:30 +03:00
Nikolaj Schlej
2e7aa8133a Initial ME parser, improved ucode parser, reset vector info 2019-07-24 10:30:59 -07:00
vit9696
f34894b9fd Add support for NVRAM_NVAR_PEI_EXTERNAL_DEFAULTS_FILE_GUID, fixes #163 2019-02-10 18:38:37 +03:00
vit9696
1ac6e6a4f0 Multiple improvements and bugfixes
1. Fixes #158, UEFITool and UEFIFind failed to lookup pattern crossing header/body boundary
2. Fixes #159, filter out more symbols in fileanems, which are prohibited by different filesystems
3. Add more known file GUIDs
4. Add basic support for FMP images
5. Fix unaligned read in uint24ToUint32
6. Fix compilation with latest cmake requiring directory path
2019-01-20 13:23:28 +03:00
vit9696
40b77a713f Fix typos 2019-01-07 23:01:04 +03:00
vit9696
d16c438069 Implement dumping GUIDs from firmware and add more to builtin database 2019-01-07 19:26:31 +03:00
vit9696
afce02430a Implement local offsets 2019-01-07 16:05:57 +03:00
vit9696
4dcd6b26a3 Implement gzip unpacking, fixes #149 2018-11-11 16:33:13 +03:00
vit9696
0a634ebcbd Merge recent updates but without broken builder and with minor refactoring and bugfixes 2018-10-08 12:58:12 +03:00
vit9696
0a2f115056 Fix some warnings 2018-07-12 22:56:51 +03:00
vit9696
4f9f31ef71 Unify version scheme and fix minor issues 2018-05-22 00:59:23 +03:00
vit9696
fc2cd74755 Increment version 2018-05-08 19:35:14 +03:00
vit9696
cf01543f06 Silence analyzer warnings and fix potential issues 2018-05-08 18:42:16 +03:00
vit9696
23c4006979 Version bump 2018-05-04 21:52:25 +03:00
Alex Matrosov
1f120b821d Update uefitool.cpp 2018-04-29 22:35:51 -07:00
Alex Matrosov
e3ace324ee bugfix 2018-04-29 22:33:19 -07:00
Alex Matrosov
1cbd3393c8 bugfix 2018-02-25 15:33:54 -08:00
Alex Matrosov
82a89b2c03 multiple fixes 2018-01-23 00:00:03 -08:00
Alex Matrosov
63088afd87 A45
+ FFSv3 support with large files and large sections
+ proper names for Flash Descriptor v2 regions (#89)
+ better alignment calculations (#96)
+ improved NVRAM parser
+ post IBB hash support for Boot Guard
+  bugfixes
+ companion tool updated
2017-12-10 17:56:00 -08:00
Alex Matrosov
02369442a2 NE Alpha 44
+ support of MS Surface implementation of Intel Boot Guard
+ optional disabling Intel Boot Guard marking
2017-11-05 23:10:06 -08:00
Alex Matrosov
68df5a64a3 NE Alpha 43
add visual validation of Intel Boot Guard coverage
2017-10-11 22:59:23 -07:00
Cr4sh
fc579533e8 NE Alpha 42 2017-07-31 09:06:11 +03:00
Cr4sh
227be5480e NE Alpha 41 2017-07-08 22:31:57 +03:00
Cr4sh
0f0bc32a42 NE Alpha 40 2017-02-14 09:39:16 +03:00
Cr4sh
f5f7f3664c messagelistitem.cpp/h removed 2017-01-16 21:28:30 +03:00
Cr4sh
0e09dfe1b2 NE Alpha 38 2017-01-14 03:24:56 +03:00
Cr4sh
f410b0f969 NE Alpha 37 2016-12-23 01:34:24 +03:00
Cr4sh
0e60013311 NE Alpha 36 2016-12-04 01:36:01 +03:00
Cr4sh
4160a6a580 NE Alpha 35 2016-11-03 02:40:38 +07:00
Cr4sh
52c7a56f68 NE Alpha 34 2016-10-27 23:31:15 +07:00
Alex Matrosov
cb430456bf NE Alpha 33
- human readable JEDEC ID
- NVRAM parser separated from FFS parser
- added support for LZMAF86 sections
- solved a bug with parsing of VSS variables with invalid sizes
2016-10-09 23:05:04 -07:00
Nikolaj Schlej
59a6f298ee Move fitParser to ffsParser
- required to set fixed properly
2016-07-14 21:22:51 +02:00
Nikolaj Schlej
feb74c3299 Fixed NVAR DataOnly+Auth variables
- such variable have a new timestamp in extended header, but no hash
2016-07-14 19:28:02 +02:00