static BOOL nla_complete_auth(rdpNla* nla, PSecBufferDesc pOutputBufferDesc)
{
	SECURITY_STATUS status = SEC_E_INVALID_TOKEN;

	if (!nla || !nla->table)
	{
		WLog_ERR(TAG, "[%s] nla->table=%p->%p", __FUNCTION__, nla, nla ? nla->table : NULL);
		return FALSE;
	}
	if (!nla->table->CompleteAuthToken)
	{
		WLog_ERR(TAG, "[%s] CompleteAuthToken=%p", __FUNCTION__, nla->table->CompleteAuthToken);
		return FALSE;
	}

	nla->status = nla->table->CompleteAuthToken(&nla->context, pOutputBufferDesc);

	if (nla->status != SEC_E_OK)
	{
		WLog_WARN(TAG, "CompleteAuthToken status %s [0x%08" PRIX32 "]",
		          GetSecurityStatusString(status), status);
		return FALSE;
	}

	return TRUE;
}
static BOOL nla_complete_auth(rdpNla* nla, PSecBufferDesc pOutputBufferDesc)
{
	SECURITY_STATUS status = SEC_E_INVALID_TOKEN;

	if (!nla || !nla->table)
	{
		WLog_ERR(TAG, "[%s] nla->table=%p->%p", __FUNCTION__, nla, nla ? nla->table : NULL);
		return FALSE;
	}
	if (!nla->table->CompleteAuthToken)
	{
		WLog_ERR(TAG, "[%s] CompleteAuthToken=%p", __FUNCTION__, nla->table->CompleteAuthToken);
		return FALSE;
	}

	nla->status = nla->table->CompleteAuthToken(&nla->context, pOutputBufferDesc);

	if (nla->status != SEC_E_OK)
	{
		WLog_WARN(TAG, "CompleteAuthToken status %s [0x%08" PRIX32 "]",
		          GetSecurityStatusString(status), status);
		return FALSE;
	}

	return TRUE;
}