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.
56 lines
1.2 KiB
C++
56 lines
1.2 KiB
C++
// Compile with the WDK for supported 64-bit targets. No driver is linked/loaded.
|
|
#include <ntifs.h>
|
|
#include "Domito.MinCrypt.h"
|
|
|
|
#if NTDDI_VERSION >= NTDDI_WIN10
|
|
C_ASSERT(sizeof(MINCRYPT_POLICY_INFO) == 48);
|
|
C_ASSERT(
|
|
FIELD_OFFSET(
|
|
MINCRYPT_POLICY_INFO,
|
|
VerificationStatus
|
|
) == 4
|
|
);
|
|
C_ASSERT(
|
|
FIELD_OFFSET(
|
|
MINCRYPT_POLICY_INFO,
|
|
ChainInfo
|
|
) == 16
|
|
);
|
|
C_ASSERT(
|
|
FIELD_OFFSET(
|
|
MINCRYPT_POLICY_INFO,
|
|
NotBefore
|
|
) == 32
|
|
);
|
|
C_ASSERT(sizeof(MINCRYPT_CHAIN_INFO) == 72);
|
|
C_ASSERT(
|
|
FIELD_OFFSET(
|
|
MINCRYPT_CHAIN_INFO,
|
|
ChainElements
|
|
) == 40
|
|
);
|
|
C_ASSERT(
|
|
FIELD_OFFSET(
|
|
MINCRYPT_CHAIN_INFO,
|
|
AuthenticodeAttributes
|
|
) == 56
|
|
);
|
|
#else
|
|
C_ASSERT(sizeof(MINCRYPT_POLICY_INFO) == 32);
|
|
C_ASSERT(sizeof(MINCRYPT_CHAIN_INFO) == 40);
|
|
#endif
|
|
C_ASSERT(sizeof(MINCRYPT_NAME_BLOB) == 16);
|
|
C_ASSERT(sizeof(MINCRYPT_CHAIN_ELEMENT) == 120);
|
|
C_ASSERT(
|
|
FIELD_OFFSET(
|
|
MINCRYPT_CHAIN_ELEMENT,
|
|
Certificate
|
|
) == 104
|
|
);
|
|
|
|
#if defined(_M_AMD64)
|
|
// These opt-in declarations establish observations only for the named x64 build.
|
|
#include "Domito.MinCrypt.26100.h"
|
|
#include "Domito.MinCrypt.Historical.h"
|
|
#endif
|