IDiaStackWalkHelper2::GetPointerAuthenticationMask

检索指针身份验证掩码的值。

语法

HRESULT GetPointerAuthenticationMask ( 
    ULONG64 PtrVal,
    ULONG64* AuthMask
);

参数

PtrVal

[in]要解码的堆栈中的指针。

AuthMask

[out]返回身份验证掩码的值。

返回值

如果成功,则返回 S_OK;否则,返回错误代码。

注解

目前只有 ARM64 硬件和 OS 支持指针身份验证,因此在行走 ARM64 堆栈时,只会调用此回调。 如果 AuthMask 设置了所有位(0xFFFFFFFFFFFFFFFFull),则表示目标堆栈与当前进程共享相同的指针身份验证,因此 DIA 应使用 OS API 解码指针。 相反,如果没有 AuthMask 设置位,则表示指针身份验证未使用或启用,因此不需要解码指针。 否则, AuthMask 对于作为指针身份验证的一部分的指针的每个部分,应设置 1 位,对于指针的基本部分应为 0。

另请参阅