Commit Graph

268 Commits

Author SHA1 Message Date
Nikolaj Schlej
b6cdc9f484 Add support for long paths in Windows 10+ 2023-06-19 18:49:53 -07:00
Nikolaj Schlej
031bd4f734 Provide separate filesystem.cpp 2023-06-19 12:59:23 -07:00
Nikolaj Schlej
91fb7cdc83 Update GUID database
https://fwupd.org/lvfs/shards/export/csv
2023-06-07 05:52:19 -07:00
Nikolaj Schlej
ce92b98527 Restore sorted state of guids.csv 2023-04-20 20:26:21 -07:00
Tody
88fa2d2a47 Update guids.csv
update TpmNvmeSupport GUID
2023-04-19 09:34:18 -07:00
yeggor
d9e1fe5859 Check that volumeHeader->ExtHeaderOffset is aligned to 4 bytes 2023-03-16 16:47:51 -07:00
yeggor
2b876e2cc3 Add check for volumeHeader->ExtHeaderOffset in FfsParser::parseVolumeHeader to prevent OOB access 2023-03-16 16:47:51 -07:00
yeggor
7a25a52427 Fix OOB access with volume.mid(headerSize) 2023-03-16 16:47:51 -07:00
yeggor
ea38ab3696 Fix nullptr deref, OOB access to volumeHeader and tempHeader by checking volumeHeader->HeaderLength 2023-03-16 16:47:51 -07:00
yeggor
9c6786a27b Fix 2 OOB access crashes in FfsParser::findNextRawAreaItem 2023-03-16 16:47:51 -07:00
yeggor
6875968d97 Check partitions size before erasing to avoid memory corruption 2023-03-16 16:47:51 -07:00
Nikolaj Schlej
aa3e790fb1 Revert "Fix FfsParser issues found by fuzzing"
This reverts commit b8567d32cc.
2023-03-12 08:49:19 -07:00
Nikolaj Schlej
b8567d32cc Fix FfsParser issues found by fuzzing
Resolve alignment issue with guidToUstring
2023-02-26 16:27:27 -08:00
Nikolaj Schlej
75bf036137 Switch to C++11 for Kaitai-generated parsers 2023-02-26 13:23:25 -08:00
Nikolaj Schlej
6c695c12a7 Fix meson builds 2023-02-19 12:38:35 -08:00
Nikolaj Schlej
7eb565d788 Switch AMI NVAR parser to Kaitai 2023-02-19 12:24:20 -08:00
Nikolaj Schlej
2d1ebcc11b Fallback to RawArea parsing in case IntelDescriptor or Capsule parsing was unsuccesful 2023-02-18 08:28:15 -08:00
Nikolaj Schlej
6f9dc0ab88 Fix Unicode search 2023-02-16 22:11:39 -08:00
Nikolaj Schlej
745f4b69f2 Fix an issue spotted by SonarCloud 2023-02-11 21:12:01 -08:00
Nikolaj Schlej
944133caa7 Automatically select dark colors for BootGuard markings in dark mode 2023-02-11 21:05:18 -08:00
Nikolaj Schlej
ef7ceefa41 Temporary change UI style for Qt6-based Windows build of UEFITool to support dark mode 2023-02-11 20:19:32 -08:00
Nikolaj Schlej
33c25e8255 Add AMI v3 protected ranges hash file support 2023-02-05 20:30:20 -08:00
Nikolaj Schlej
7a161f577a Fix truncation issue with 64-bit contants on Windows, update Kaitai patch script 2023-02-03 23:53:10 -08:00
Nikolaj Schlej
c9939e23ec Fix possible unaligned access to UCS2 strings 2023-01-31 20:15:12 -08:00
Nikolaj Schlej
b649b98cb5 Add support for Clang sanitizers for UEFITool
Only applied to CMake Debug builds, useful for debugging undefined behavior.
2023-01-31 17:48:20 -08:00
Nikolaj Schlej
2467b48802 Attempt to fix an issue spotted by SonarCloud 2023-01-29 16:52:08 -08:00
Nikolaj Schlej
03d71d6f9f Update Intel FIT definitions accodring to FIT specification v1.4 2023-01-29 15:58:43 -08:00
Nikolaj Schlej
66e9f95dc3 Replace unneeded BOOLEAN with bool 2023-01-29 15:13:37 -08:00
Nikolaj Schlej
507f884635 Fix compressed flag not being applied to the items inside GZip and Zlib GUIDed sections 2023-01-28 21:56:01 -08:00
Nikolaj Schlej
1adff58591 Update guids.csv
Add GUIDs for Intel BG BootPolicy and KeyManifest
2023-01-12 21:51:42 -08:00
Mike Beaton
eab62138aa guids.csv - fix additional [g|G][A-Z] errors 2023-01-06 19:14:51 +03:00
Nikolaj Schlej
19ab6076c4
Update ffsparser.cpp
Fix an issue with parsing CRC32 sections introduced in the previous commit
2023-01-03 01:17:41 -08:00
Mike Beaton
1b143c89e6
Fix minor issues in guids.csv (#328)
- Fix DebuSupport error from 0fb88ab760
- Add GUIDs
2023-01-02 18:08:01 +03:00
Nikolaj Schlej
7337f15ec9 Implement parsing for AMD-specific Zlib-compressed GUIDed section
Fix incorrect overflow check in parsing volume block map
2022-12-23 22:49:37 -08:00
Klemens Nanni
6e7b46d791 Fix OpenBSD build, use swap16(3) from <endian.h>
bswap*() do not exist on OpenBSD.
2022-11-27 10:22:38 -08:00
yeggor
47c8938c7e Add additional check for entryHeader->Size in NvramParser::parseEvsaStoreBody to avoid uint32 underflow 2022-11-15 18:08:25 -08:00
Nikolaj Schlej
71a7336730
Fix warnings spotted by GCC 2022-11-05 11:03:50 +01:00
Nikolaj Schlej
497fb2a86f Replace append with += 2022-10-23 13:49:53 +02:00
Nikolaj Schlej
c9e16cb180 Add modulus+exponent KM hashes 2022-10-23 13:37:19 +02:00
Nikolaj Schlej
50396d7291 Improve truncated image checks to preven UEFIExtract crashes 2022-10-15 09:20:55 +03:00
Richard Hughes
0429225c56 trivial: Fix the position of the colon when dumping the KM pubkey
This kinda matters when parsing the output using Python...
2022-10-11 17:15:59 +02:00
Richard Hughes
cd22c3db2b Split up the signature exponent and modulus on stdout
This makes it easier to parse from Python.
2022-10-11 09:40:34 +02:00
Nikolaj Schlej
c3cedba150 Fix another crash in checkProtectedRanges 2022-10-11 09:39:19 +02:00
Nikolaj Schlej
89a302e5d9 Calculate key manifest public key hashes that could be written into FPFs 2022-10-09 11:24:27 +02:00
Nikolaj Schlej
7e5e02b4b4 Improve detection of BPDT partition tables in raw areas, update the list of known BPDT entry types 2022-10-09 07:18:28 +02:00
Nikolaj Schlej
acc913769b Add workaround for Lenovo large files inside FFSv2 volumes 2022-10-07 14:40:20 +02:00
Nikolaj Schlej
662e0bf9b1 Comment out unused (but still generating warnings) floating point parsing functions 2022-10-03 20:29:27 +02:00
pkubaj
799f186852 Fix build on *BSD/arm (32-bit)
Similar fix as for aarch64. I only tested FreeBSD, but since aarch64 version works everywhere, this one should also.
2022-09-29 23:15:57 +03:00
Nikolaj Schlej
6247fa5bbc Fix building with MinGW 11.2.0 on Windows, add it into CI/CD 2022-09-27 19:22:32 +02:00
Nikolaj Schlej
9bb0549ad2 Add other BSD variants once again 2022-09-25 08:22:24 +02:00