mirror of
https://github.com/LongSoft/UEFITool.git
synced 2025-05-30 06:55:18 -04:00
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
This commit is contained in:
parent
8600bc3ab3
commit
934ce1f3f8
81 changed files with 15212 additions and 5279 deletions
|
@ -52,7 +52,7 @@
|
|||
#include <stdlib.h>
|
||||
#include "bstrlib.h"
|
||||
#include "../ubytearray.h"
|
||||
#include "../uinttypes.h"
|
||||
#include "../basetypes.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
|
@ -365,6 +365,7 @@ struct CBString : public tagbstring {
|
|||
// QString compatibility methods
|
||||
const char *toLocal8Bit() const { return *this; }
|
||||
bool contains(const char *str) { return find(str) >= 0; }
|
||||
bool startsWith(const char *str) { return find(str) == 0; }
|
||||
bool endsWith(const char *str) { int len = strlen(str); return (slen >= len && (find(str, slen - len) == (slen - len))); }
|
||||
bool isEmpty() const { return slen == 0; }
|
||||
void clear() { *this = ""; }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue