Share via


PFN_CSP_CACHE_ADD_FILE function pointer

This topic is not current. For the most current information about the Smart Card API, see Smart Card Minidriver Specification.

The PFN_CSP_CACHE_ADD_FILE function pointer points to a function that adds a file to the data cached by the Microsoft Base Smart Card Cryptographic Service Provider.

Syntax

typedef DWORD ( WINAPI *PFN_CSP_CACHE_ADD_FILE)(
  _In_ PVOID  pvCacheContext,
  _In_ LPWSTR wszTag,
  _In_ DWORD  dwFlags,
  _In_ PBYTE  pbData,
  _In_ DWORD  cbData
);

Parameters

pvCacheContext [in]

A context value supplied by the Microsoft Base Smart Card Cryptographic Service Provider. This value must be set to the value of the pvCacheContext member of the corresponding CARD_DATA structure.

wszTag [in]

A pointer to a null-terminated wide character string that contains the name of the file to cache. This name is used in subsequent calls using the PFN_CSP_CACHE_LOOKUP_FILE and PFN_CSP_CACHE_DELETE_FILE function pointers.

dwFlags [in]

Reserved. This parameter must be set to zero.

pbData [in]

A pointer to a buffer that contains the data to be cached. the smart card module allocates memory for this buffer by using the PFN_CSP_ALLOC function pointer.

When memory for this buffer is no longer required, the smart card module must free it by using the PFN_CSP_FREE function pointer.

cbData [in]

The size, in bytes, of the data contained in the pbData buffer.

Return value

If the function succeeds, the function returns zero.

If the function fails, it returns a nonzero value.

Remarks

This function pointer is passed to a card module in a CARD_DATA structure when the Microsoft Base Smart Card Cryptographic Service Provider calls the CardAcquireContext function.

To improve performance by avoiding redundant read/write activity to the card, files on the card that are used only internally by the smart card module can take advantage of caching provided by the Microsoft Base Smart Card Cryptographic Service Provider. This function is used to add a file to the cache.

Requirements

Minimum supported client
Windows XP [desktop apps only]
Minimum supported server
Windows Server 2003 [desktop apps only]
Header
Cardmod.h

See also

CARD_DATA

CardAcquireContext

PFN_CSP_ALLOC

PFN_CSP_FREE