CRYPTNET_URL_CACHE_PRE_FETCH_INFO structure (wincrypt.h)

The CRYPTNET_URL_CACHE_PRE_FETCH_INFO structure contains update information used by the Cryptnet URL Cache (CUC) service to maintain a URL cache entry. This structure composes the pPreFetchInfo member of the CRYPT_RETRIEVE_AUX_INFO structure that is passed to the CryptRetrieveObjectByUrl function as the pAuxInfo parameter.

Syntax

typedef struct _CRYPTNET_URL_CACHE_PRE_FETCH_INFO {
  DWORD    cbSize;
  DWORD    dwObjectType;
  DWORD    dwError;
  DWORD    dwReserved;
  FILETIME ThisUpdateTime;
  FILETIME NextUpdateTime;
  FILETIME PublishTime;
} CRYPTNET_URL_CACHE_PRE_FETCH_INFO, *PCRYPTNET_URL_CACHE_PRE_FETCH_INFO;

Members

cbSize

The size, in bytes, of this structure.

dwObjectType

A value that specifies the type of object represented by the URL.

Value Meaning
CRYPTNET_URL_CACHE_PRE_FETCH_NONE
0
Prefetch information does not yet exist.
CRYPTNET_URL_CACHE_PRE_FETCH_BLOB
1
The object is a memory BLOB.
CRYPTNET_URL_CACHE_PRE_FETCH_CRL
2
The object is a certificate revocation list (CRL).
CRYPTNET_URL_CACHE_PRE_FETCH_OCSP
3
The object is an online certificate status protocol (OCSP) response.
CRYPTNET_URL_CACHE_PRE_FETCH_AUTOROOT_CAB
5
The object is a CAB file.

dwError

A value that specifies the status of a prefetch attempt.

Value Meaning
S_OK
0x00000000L
The prefetch is pending.
ERROR_MEDIA_OFFLINE
4304L
The CRL prefetch is disabled because the OCSP service is offline or unavailable.
ERROR_FILE_OFFLINE
4350L
The prefetch content is unchanged.
ERROR_INVALID_DATA
13L
The prefetch content is not valid.
Other values
The service is unable to retrieve prefetch content.

dwReserved

This parameter is not used. It must be zero.

ThisUpdateTime

A FILETIME structure that contains a date and time whose meaning depends on dwObjectType. For a CRL, this indicates when the CRL was published. For an OCSP response, this indicates when the indicated status is known to be correct.

NextUpdateTime

A FILETIME structure that contains a date and time whose meaning depends on dwObjectType. For a CRL, this indicates the next scheduled update for the CRL. For an OCSP response, this indicates when newer information will be available for the certificate status.

This is effectively an expiry date for the object. A value of zero indicates that the information has no expiration date.

PublishTime

A FILETIME structure that specifies the time interval before expiry that a new CRL will be published. This value can be zero.

This value is based on a nonstandard CRL extension with the following object identifier (OID).

Value Meaning
szOID_CRL_NEXT_PUBLISH
1.3.6.1.4.1.311.21.4
NextPublishTime

Requirements

Requirement Value
Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Header wincrypt.h