Add reusable certificate and file validation helpers
Fix process-name ownership and module lookup outputs, add explicit SPKI hashing and bounded chain access, and improve WDM integration. Deprecate superseded entry points with migration guidance and align branch code and tests with the library style.
This commit is contained in:
1 parent
1f4d62ae95
commit
a491bbd3f8
32 files changed
+5404
-1136
No files matched your search
@@ -13,6 +13,7 @@
|
||||
#endif
|
||||
|
||||
#pragma pack(push, 8)
|
||||
|
||||
// Observed ci.dll 10.0.10240.16463. The variable payload begins at +0x38;
|
||||
// AuthenticodeAttributes does not exist at that offset in this header.
|
||||
typedef struct _DOMITO_CI10240_CHAIN_INFO
|
||||
@@ -57,17 +58,63 @@ typedef struct _DOMITO_CI14393_CHAIN_INFO
|
||||
MINCRYPT_ATTR_BLOB AuthenticodeAttributes;
|
||||
UINT8 ReservedExtension[32];
|
||||
} DOMITO_CI14393_CHAIN_INFO, *PDOMITO_CI14393_CHAIN_INFO;
|
||||
|
||||
#pragma pack(pop)
|
||||
|
||||
C_ASSERT(sizeof(DOMITO_CI10240_CHAIN_INFO) == 56);
|
||||
C_ASSERT(FIELD_OFFSET(DOMITO_CI10240_CHAIN_INFO, PublicKeys) == 8);
|
||||
C_ASSERT(FIELD_OFFSET(DOMITO_CI10240_CHAIN_INFO, EKUs) == 24);
|
||||
C_ASSERT(FIELD_OFFSET(DOMITO_CI10240_CHAIN_INFO, ChainElements) == 40);
|
||||
C_ASSERT(FIELD_OFFSET(DOMITO_CI10240_CHAIN_INFO, RootId) == 52);
|
||||
C_ASSERT(
|
||||
FIELD_OFFSET(
|
||||
DOMITO_CI10240_CHAIN_INFO,
|
||||
PublicKeys
|
||||
) == 8
|
||||
);
|
||||
C_ASSERT(
|
||||
FIELD_OFFSET(
|
||||
DOMITO_CI10240_CHAIN_INFO,
|
||||
EKUs
|
||||
) == 24
|
||||
);
|
||||
C_ASSERT(
|
||||
FIELD_OFFSET(
|
||||
DOMITO_CI10240_CHAIN_INFO,
|
||||
ChainElements
|
||||
) == 40
|
||||
);
|
||||
C_ASSERT(
|
||||
FIELD_OFFSET(
|
||||
DOMITO_CI10240_CHAIN_INFO,
|
||||
RootId
|
||||
) == 52
|
||||
);
|
||||
C_ASSERT(sizeof(DOMITO_CI10586_CHAIN_INFO) == 72);
|
||||
C_ASSERT(FIELD_OFFSET(DOMITO_CI10586_CHAIN_INFO, RootId) == 52);
|
||||
C_ASSERT(FIELD_OFFSET(DOMITO_CI10586_CHAIN_INFO, AuthenticodeAttributes) == 56);
|
||||
C_ASSERT(
|
||||
FIELD_OFFSET(
|
||||
DOMITO_CI10586_CHAIN_INFO,
|
||||
RootId
|
||||
) == 52
|
||||
);
|
||||
C_ASSERT(
|
||||
FIELD_OFFSET(
|
||||
DOMITO_CI10586_CHAIN_INFO,
|
||||
AuthenticodeAttributes
|
||||
) == 56
|
||||
);
|
||||
C_ASSERT(sizeof(DOMITO_CI14393_CHAIN_INFO) == 104);
|
||||
C_ASSERT(FIELD_OFFSET(DOMITO_CI14393_CHAIN_INFO, RootId) == 52);
|
||||
C_ASSERT(FIELD_OFFSET(DOMITO_CI14393_CHAIN_INFO, AuthenticodeAttributes) == 56);
|
||||
C_ASSERT(FIELD_OFFSET(DOMITO_CI14393_CHAIN_INFO, ReservedExtension) == 72);
|
||||
C_ASSERT(
|
||||
FIELD_OFFSET(
|
||||
DOMITO_CI14393_CHAIN_INFO,
|
||||
RootId
|
||||
) == 52
|
||||
);
|
||||
C_ASSERT(
|
||||
FIELD_OFFSET(
|
||||
DOMITO_CI14393_CHAIN_INFO,
|
||||
AuthenticodeAttributes
|
||||
) == 56
|
||||
);
|
||||
C_ASSERT(
|
||||
FIELD_OFFSET(
|
||||
DOMITO_CI14393_CHAIN_INFO,
|
||||
ReservedExtension
|
||||
) == 72
|
||||
);
|
||||
Reference in new issue
Block a user