Condividi tramite


PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_INITIALIZE funzione di callback (wincrypt.h)

La funzione PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_INITIALIZE inizializza il provider. È necessario implementare questa funzione come parte del provider personalizzato.

Sintassi

PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_INITIALIZE PfnCryptObjectLocatorProviderInitialize;

BOOL PfnCryptObjectLocatorProviderInitialize(
  [in]  PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FLUSH pfnFlush,
  [in]  LPVOID pContext,
  [out] DWORD *pdwExpectedObjectCount,
  [out] PCRYPT_OBJECT_LOCATOR_PROVIDER_TABLE *ppFuncTable,
  [out] void **ppPluginContext
)
{...}

Parametri

[in] pfnFlush

Puntatore all'implementazione della funzione PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FLUSH .

[in] pContext

Puntatore a un oggetto definito dal provider che contiene informazioni sul provider e sugli oggetti .

[out] pdwExpectedObjectCount

Specifica il numero di oggetti univoci che il provider prevede di individuare. Questo valore indica al chiamante la quantità di memoria da allocare per l'archiviazione di oggetti. Impostare questo valore su zero (0) per specificare il valore predefinito di 10.000 oggetti.

[out] ppFuncTable

Struttura CRYPT_OBJECT_LOCATOR_PROVIDER_TABLE che contiene puntatori alle funzioni implementate dal provider. Nessun puntatore nella tabella può essere NULL. Il chiamante non libera questa struttura. È previsto che il provider restituisca una tabella non allocata nell'heap.

[out] ppPluginContext

Puntatore a un buffer facoltativo definito da questo provider. Il buffer non viene modificato dal chiamante. Il provider può usare i dati per determinare quali azioni eseguire o per mantenere informazioni aggiuntive. Questo valore può essere impostato su NULL.

Valore restituito

Se la funzione ha esito positivo, restituisce un valore diverso da zero (TRUE).

Se la funzione ha esito negativo, restituire zero (FALSE) e specificare un errore appropriato nella funzione SetLastError . La maggior parte degli errori viene passata tramite Schannel non modificata, ma questo comportamento non è garantito. Alcuni errori possono essere mappati ad altri errori.

Commenti

La funzione PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_INITIALIZE è attualmente chiamata solo dal provider di servizi di sicurezza SSP (Secure Channel). L'API di crittografia (CAPI) chiamerà internamente il provider personalizzato se, a partire da Windows 8, si specifica il nome dell'entità di sicurezza nel parametro pszPrincipal della funzione AcquireCredentialsHandle.

Quando si implementa questa funzione, ricordarsi di riempire la tabella delle funzioni CRYPT_OBJECT_LOCATOR_PROVIDER_TABLE con puntatori alle funzioni seguenti implementate dal provider:

È necessario chiamare CryptRegisterDefaultOIDFunction per registrare il provider nel Registro di sistema di Windows.

Requisiti

Requisito Valore
Client minimo supportato Windows 8 [solo app desktop]
Server minimo supportato Windows Server 2012 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione wincrypt.h

Vedi anche

CRYPT_OBJECT_LOCATOR_PROVIDER_TABLE

PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FLUSH