windows-nt/Source/XPSP1/NT/inetsrv/iis/ui/itools/keyring/intrlkey.h
2020-09-26 16:20:57 +08:00

36 lines
1.3 KiB
C

// internal key headers stuff
// header structure for the key request data.
// the first version of Keyring just saved the raw request data
// in the object. Now, however, we wish to store additional data
// A typical example is a key request that was sent to an online
// authority, but the response was delayed. We need to mark it
// somewhere so we know to go back to the authority and see if it
// is ready at a later date. In some ways, it would make sense to
// store that in the certificate pointer, but the key services
// assume that that is an actual certificate. The request pointer,
// however, is stored by the services, but its content is private
// to the keyring application. Thus, that is where it goes.
// 5/19/97 Boydm - changed string from dll path to interface GUID - set to version x0101
#define REQUEST_HEADER_K2B2VERSION 0x0101
#define REQUEST_HEADER_IDENTIFIER 'RHDR'
#define REQUEST_HEADER_CURVERSION 0x0101
typedef struct _KeyRequestHeader
{
DWORD Identifier; // must be 'RHDR'
DWORD Version; // version of header record
DWORD cbSizeOfHeader; // byte count of header. Afterwards is the request.
DWORD cbRequestSize; // size of the request that follows
BOOL fReqSentToOnlineCA;
LONG longRequestID;
BOOL fWaitingForApproval;
char chCA[MAX_PATH];
} KeyRequestHeader, *LPREQUEST_HEADER;