IDiaStackWalkHelper2::GetPointerAuthenticationMask
Recupera o valor da máscara de autenticação do ponteiro.
Sintaxe
HRESULT GetPointerAuthenticationMask (
ULONG64 PtrVal,
ULONG64* AuthMask
);
Parâmetros
PtrVal
[em] O ponteiro da pilha a ser decodificada.
AuthMask
[fora] Retorna o valor da máscara de autenticação.
Valor de retorno
Se tiver êxito, retornará S_OK
. Caso contrário, retornará um código de erro.
Comentários
Atualmente, apenas o hardware e o sistema operacional ARM64 dão suporte à autenticação de ponteiro, portanto, esse retorno de chamada só é chamado ao caminhar pilhas ARM64. Se AuthMask
tiver todos os bits definidos (0xFFFFFFFFFFFFFFFFull
), isso significa que a pilha de destino compartilha a mesma autenticação de ponteiro que o processo atual e, portanto, o DIA deve usar as APIs do sistema operacional para decodificar o ponteiro. Por outro lado, se AuthMask
não tiver bits definidos, significa que a autenticação do ponteiro não está em uso ou habilitada e, portanto, o ponteiro não precisa ser decodificado. Caso contrário, deve AuthMask
ter 1 bit definido para cada parte do ponteiro que faz parte da autenticação do ponteiro e 0 para as partes base do ponteiro.