Commit graph

252 commits

Author SHA1 Message Date
Richard Hughes
1675498d4d Add UEFIFind as a meson target 2022-09-02 13:02:51 +02:00
Richard Hughes
eef00f73a4 Add Meson buildsystem
This allows UEFIExtract to build on a greater variety of targets and more
importantly allows us to build with the system-defined hardening protections
present in enterprise distributions.
2022-09-01 20:44:13 +02:00
Nikolaj Schlej
7695927eec Fixed inconsistent use of %ll and %l format modifiers 2022-08-29 07:10:13 +02:00
Nikolaj Schlej
4006954bc1 Downcast all qtsizetype to UINT32 manually, apply consistent identation 2022-08-28 12:47:01 +02:00
Nikolaj Schlej
10e2e60183 Off with that PRI*Q bullshit 2022-08-28 12:01:43 +02:00
Nikolaj Schlej
eb3185224b More minor structure init fixes 2022-08-28 08:00:05 +02:00
Nikolaj Schlej
3aafbdd269 Fix another coverity warning about unitialized structure fields usage 2022-08-25 09:43:18 +02:00
Nikolaj Schlej
74910c4658 Add support for Intel ME FPT header version 2.1 2022-08-25 08:54:34 +02:00
Nikolaj Schlej
eabd6a8604
Merge pull request #271 from LongSoft/PR/uncompressed_and_refactorings
Refactoring round 1
2022-08-25 07:13:54 +02:00
Nikolaj Schlej
e85fb741ee Fix new warnings from Coverity Scan 2022-08-25 06:49:10 +02: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
yeggor
d46489fabb
Add EFI_GUIDED_SECTION_LZMA_HP GUID 2022-08-24 06:01:00 +03:00
vit9696
d9af12b567 Use constant offsets instead of 1-byte arrays 2021-10-14 04:25:26 +03:00
Nikolaj Schlej
fae9d6681d Update utility.cpp
- address review comment
2021-10-14 04:25:26 +03:00
Nikolaj Schlej
1f488862c6 Fix #246
- fixed CPLD extension area parser hang
- added some definitions for CSME types obtained from MEParser
2021-10-14 04:25:26 +03:00
vit9696
963671a73e Merge zlib warning fixes by rurban
https://github.com/madler/zlib/compare/develop...rurban:FALLTHROUGH?d=1.patch
2021-10-07 19:10:36 +03:00
vit9696
2a083d8739 Fix cast warnings 2021-10-07 19:02:11 +03:00
vit9696
44bb6e8261 Drop meaningless const inst scalar casts 2021-10-07 18:56:25 +03:00
joevt
f9c35f77a6 Improve firmware parser and tool robustness
closes #241
2021-10-07 18:51:39 +03:00
vit9696
44c5b4bc49 Fix autorename in TCG and others 2021-09-11 05:33:01 +03:00
vit9696
0fb88ab760 Fix file names in guids.csv 2021-09-11 05:30:00 +03:00
assafcarlsbad
a754fb5153
Add some more GUID definitions to guids.csv. (#242) 2021-09-09 18:55:50 +03:00
Vampire Cat
34c8ad8dcc
Updated code to support newer Qt versions (#237) 2021-04-04 12:09:23 +03:00
Nikolai Kostrigin
d1e47539fc
common/descriptor.cpp: add JEDEC ID C86015 definition as GD25LQ16V (#236)
"parseIntelImage: SPI flash with unknown JEDEC ID C86015 found in VSCC table"
message was displayed on a device equipped with GigaDevice GD25LQ16V SPI flash

Co-authored-by: Nikolai Kostrigin <nickel@altlinux.org>
2021-02-17 19:51:34 +03:00
Nikolaj Schlej
3945c9b89f Correctly calculate FPT header checksum if ROM bypass vector is present and non-zero, fixes #215 for real 2020-11-22 21:19:26 -08:00
Nikolaj Schlej
5645599c58 Fix incorrect padding construction spotted by Xcode Analyzer 2020-11-22 20:56:51 -08: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
vit9696
753b8ee893 Fix misparsing volumes in some Lenovo firmwares 2020-11-03 11:32:54 +03:00
vit9696
b96772190a Workaround crash with AMI addressDiff calculation
references #219
2020-09-25 18:16:10 +03:00
Nikolai SAOUKH
57e4d6dfa0 Update AMIC Technology spi flash info
Info taken from http://www.amictechnology.com/english/flash_spi_flash.html
2020-07-16 10:03:42 +03:00
vit9696
cd110eafa6 Provide workaround for #196 2020-04-22 19:25:36 +03:00
assafcarlsbad
a3425115b8
Add some more GUIDs to the database. (#199) 2020-03-11 21:45:56 +03:00
vit9696
0f2ede398d Implement LZMAF86 support
references #197
2020-03-06 23:54:20 +03:00
vit9696
6fdc69415b Fix microcode detection
closes #194
2020-02-08 22:05:33 +03:00
vit9696
1dccf3f15a Fix CPD signature verification 2020-01-25 10:54:06 +03:00
vit9696
4d948475d8 Fix using temporary after scope in FfsParser::parseVendorHashFile 2020-01-25 01:15:18 +03:00
vit9696
bf3adbe4c6 Fix infinite loop due to 0-sized volume files
closes #191
2020-01-24 22:36:39 +03:00
serg-pushkarev
516949a6e6 Fix FIT entry engine checksum (#189) 2020-01-20 03:18:15 +03:00
vit9696
2ef8d770e4 Fix memory leak introduced in the previous commit 2019-11-27 20:02:20 +03:00
vit9696
1b2ea8c276 Import legacy bugfixes found over time
- Fix mishandling empty microcode entries
- Fix mishandling TE image base
- Fix Intel legacy LZMA support
2019-11-27 19:46:16 +03:00
vit9696
f2e343d8bf Update field names in microcode struct as in EDK II 2019-09-06 23:16:26 +03:00
vit9696
967375243c Fix LoaderVersion and UpdateVersion handling in MCU 2019-09-05 23:38:53 +03:00
Nikolaj Schlej
8bddbe7d1f Fix TotalSize check 2019-09-05 12:58:51 -07:00
Nikolaj Schlej
3507698136 Remove broken revision check 2019-09-05 12:42:26 -07:00
Nikolaj Schlej
64e1aa18b8 Further improve micorcode header detection 2019-09-05 12:25:47 -07:00
Nikolaj Schlej
95c838181f Improve microcode header detection, parse DevExp1 region as ME region 2019-09-04 17:07:18 -07: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
fa954394cc Remove mac image parsing as it breaks GUI navigation
Use MacEfiUnpack utility to expand the images prior to using UEFITool:
https://github.com/acidanthera/OcSupportPkg/tree/master/Utilities/MacEfiUnpack
2019-08-18 03:41:06 +03:00
vit9696
1e1d5c6e17 Add hack for broken NVRAM store sizes in Apple images 2019-08-17 14:58:08 +03:00
vit9696
47637ef152 Add dual mac image parsing support 2019-08-17 14:03:23 +03:00
vit9696
a01d2c6003 Implement Mac Image parsing support 2019-08-17 13:31:53 +03:00
Nikolaj Schlej
2e7aa8133a Initial ME parser, improved ucode parser, reset vector info 2019-07-24 10:30:59 -07:00
vit9696
f386eda430 Add support for parsing NVRAM_NVAR_BB_DEFAULTS_FILE_GUID, closes #71 2019-04-11 19:30:30 +03:00
vit9696
be65f8ae06 Fix one more resource leak 2019-03-26 14:59:13 +03:00
vit9696
5edd5c10ee Fix potential bugs found with static analysis 2019-03-26 14:22:51 +03:00
vit9696
2cbd78fb9e Fix directory creation error in UEFIExtract default mode 2019-03-08 03:07:58 +03:00
vit9696
f34894b9fd Add support for NVRAM_NVAR_PEI_EXTERNAL_DEFAULTS_FILE_GUID, fixes #163 2019-02-10 18:38:37 +03:00
vit9696
5c98152c58 Fix analyzer warnings 2019-02-01 19:45:39 +03:00
Savva
f863caac9d Update GUID database (#161) 2019-01-29 21:15:05 +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
be2cdc7dfe Implement custom LZMA dictionary size for NE 2019-01-03 22:53:31 +03:00
vit9696
f074dfc5ca More SPI chips (thx 4.8.4) 2018-12-11 14:51:26 +03:00
vit9696
e1c0b08fc0 Fix analyser issues 2018-11-14 19:17:06 +03:00
vit9696
2201a9b10c Workaround dir removal on current dir on windows 2018-11-12 14:49:35 +03:00
vit9696
8932aebc02 Backport decompressor untrusted data fixes from EDK2 2018-11-12 09:25:04 +03:00
vit9696
5b26775463 Rename readMisaligned to readUnaligned 2018-11-12 09:24:55 +03:00
vit9696
4dcd6b26a3 Implement gzip unpacking, fixes #149 2018-11-11 16:33:13 +03:00
vit9696
bc3193420c Fix #144 2018-10-10 23:41:53 +03:00
vit9696
126b36a672 Fix windows compilation 2018-10-10 17:25:31 +03:00
vit9696
49e8e02b77 Remove debug code added by mistake 2018-10-10 17:23:45 +03:00
vit9696
7e1e1ab61e Bugfixes for #147 2018-10-10 17:20:00 +03:00
vit9696
337da5e632 Provide scanf with unsigned for strict compliance 2018-10-08 23:42:41 +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
8f6c8ef5cc Untie guid database from Qt 2018-08-02 05:37:09 +03:00
vit9696
f666fe63db Fix compilation on Linux 2018-08-02 03:54:45 +03:00
vit9696
ee6ce579e3 Fix compilation 2018-08-02 03:51:52 +03:00
vit9696
4d50d581fa Remove Qt deps from UEFIFind and fix issues 2018-08-02 03:41:11 +03:00
vit9696
c9db871c12 Rough attempt to deglue UEFIExtract from Qt 2018-07-13 00:17:08 +03:00
vit9696
0a2f115056 Fix some warnings 2018-07-12 22:56:51 +03:00
vit9696
4f6efe5195 Add more chip IDs, thank you Google 2018-06-02 19:27:24 +03:00
vit9696
4ab4393632 Watch out for invalid variables 2018-05-08 19:33:00 +03:00
vit9696
f352fa0cab Sync tianocompress with upstream and more warning fixes 2018-05-08 19:02:25 +03:00
vit9696
9ee937a429 Include offset in FfsReport 2018-05-08 18:44:49 +03:00
vit9696
cf01543f06 Silence analyzer warnings and fix potential issues 2018-05-08 18:42:16 +03:00
vit9696
bbdfe28449 Fix and reindent LZMA 2018-05-08 18:16:28 +03:00
vit9696
d87cbe3210 Slightly more portable PRIX64 workaround 2018-05-08 10:48:04 +03:00
vit9696
afc5a44446 Fix Linux compilation 2018-05-08 03:02:07 +03:00
vit9696
e0b3049bff Initial Windows build support for NE 2018-05-08 02:48:34 +03:00
vit9696
b35193b3df Fix a compiler warning 2018-05-07 20:55:25 +03:00
vit9696
ec38091599 Improve descriptor version handling 2018-05-07 00:38:06 +03:00
vit9696
3eae2e4fdc 1.0 descriptors should go via FLASH_DESCRIPTOR_MASTER_SECTION_V2 2018-05-06 15:34:34 +03:00
vit9696
8bbf56d2f4 Fix Intel descriptor version parsing 2018-05-06 15:22:25 +03:00
vit9696
268ccb00a8 Backport TianoDecompress fix for Xcode (https://bugzilla.tianocore.org/show_bug.cgi?id=635) 2018-05-04 20:48:02 +03:00
Alex Matrosov
17267ed4b1 Update ffsparser.cpp 2018-04-29 22:41:13 -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