Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
p6kmipencoder.h
Go to the documentation of this file.
1 
21 #ifndef P6KMIPENCODER_H__
22 #define P6KMIPENCODER_H__ 1
23 
24 #ifndef P6_UEFI
25 #include "p6time.h"
26 #endif
27 #include "p6cryptokey.h"
28 #include "p6dhkeyexchange.h"
29 #include "p6cert.h"
30 #include "p6kmip.h"
31 #include "p6iobuffer.h"
32 
33 
34 #ifdef __cplusplus
35 namespace P6R {
36 extern "C" {
37 #endif
38 
39 
49 typedef struct {
52 } P6KMIP_NAME;
53 
72 typedef struct {
87 
95 typedef struct {
99 
105 typedef struct {
109 
116 typedef struct {
119 } P6KMIP_CERTID;
120 
121 
130 typedef struct {
135 
144 typedef struct {
149 
150 
159 typedef struct {
163 } P6KMIP_DIGEST;
164 
173 typedef struct {
178 
186 typedef struct {
190 
198 typedef struct {
201 } P6KMIP_LINK;
202 
210 typedef struct {
214 
215 
230 typedef struct {
232  union {
241  } xValue;
243 } P6KMIP_XATTRIB;
244 
260 typedef struct {
270 
271 
275 static const P6UINT8 KMIP_ATTRIB_UNIQUEIDENTIFIER = 1;
276 static const P6UINT8 KMIP_ATTRIB_NAME = 2;
277 static const P6UINT8 KMIP_ATTRIB_OBJECTTYPE = 3;
278 static const P6UINT8 KMIP_ATTRIB_CRYPTOALGORITHM = 4;
279 static const P6UINT8 KMIP_ATTRIB_CRYPTOLENGTH = 5;
280 static const P6UINT8 KMIP_ATTRIB_CRYPTOPARAMS = 6;
281 static const P6UINT8 KMIP_ATTRIB_CRYPTODOMAINPARAMS = 7;
282 static const P6UINT8 KMIP_ATTRIB_CERTIFICATETYPE = 8;
283 static const P6UINT8 KMIP_ATTRIB_CERTIFICATELENGTH = 9;
284 static const P6UINT8 KMIP_ATTRIB_X509CERTIFICATEIDENTIFIER = 10;
285 static const P6UINT8 KMIP_ATTRIB_X509CERTIFICATESUBJECT = 11;
286 static const P6UINT8 KMIP_ATTRIB_X509CERTIFICATEISSUER = 12;
287 static const P6UINT8 KMIP_ATTRIB_CERTIFICATEIDENTIFIER = 13;
288 static const P6UINT8 KMIP_ATTRIB_CERTIFICATESUBJECT = 14;
289 static const P6UINT8 KMIP_ATTRIB_CERTIFICATEISSUER = 15;
290 static const P6UINT8 KMIP_ATTRIB_DIGITALSIGALG = 16;
291 static const P6UINT8 KMIP_ATTRIB_DIGEST = 17;
292 static const P6UINT8 KMIP_ATTRIB_OPERATIONPOLICYNAME = 18;
293 static const P6UINT8 KMIP_ATTRIB_CRYPTOUSAGEMASK = 19;
294 static const P6UINT8 KMIP_ATTRIB_LEASETIME = 20;
295 static const P6UINT8 KMIP_ATTRIB_USAGELIMITS = 21;
296 static const P6UINT8 KMIP_ATTRIB_STATE = 22;
297 static const P6UINT8 KMIP_ATTRIB_INITIALDATE = 23;
298 static const P6UINT8 KMIP_ATTRIB_ACTIVATIONDATE = 24;
299 static const P6UINT8 KMIP_ATTRIB_PROCESSSTARTDATE = 25;
300 static const P6UINT8 KMIP_ATTRIB_PROTECTSTOPDATE = 26;
301 static const P6UINT8 KMIP_ATTRIB_DEACTIVATIONDATE = 27;
302 static const P6UINT8 KMIP_ATTRIB_DESTROYDATE = 28;
303 static const P6UINT8 KMIP_ATTRIB_COMPROMISEOCCURANCEDATE = 29;
304 static const P6UINT8 KMIP_ATTRIB_COMPROMISEDATE = 30;
305 static const P6UINT8 KMIP_ATTRIB_REVOCATION = 31;
306 static const P6UINT8 KMIP_ATTRIB_ARCHIVEDATE = 32;
307 static const P6UINT8 KMIP_ATTRIB_OBJECTGROUP = 33;
308 static const P6UINT8 KMIP_ATTRIB_FRESH = 34;
309 static const P6UINT8 KMIP_ATTRIB_LINK = 35;
310 static const P6UINT8 KMIP_ATTRIB_APPLICATIONINFO = 36;
311 static const P6UINT8 KMIP_ATTRIB_CONTACTINFORMATION = 37;
312 static const P6UINT8 KMIP_ATTRIB_LASTCHANGEDATE = 38;
313 static const P6UINT8 KMIP_ATTRIB_CUSTOM = 39;
314 static const P6UINT8 KMIP_ATTRIB_ALTERNATIVENAME = 40;
315 static const P6UINT8 KMIP_ATTRIB_KEYVALUEPRESENT = 41;
316 static const P6UINT8 KMIP_ATTRIB_KEYVALELOCATION = 42;
317 static const P6UINT8 KMIP_ATTRIB_ORIGCREATIONDATE = 43;
318 static const P6UINT8 KMIP_ATTRIB_EXTENSION = 44;
319 static const P6UINT8 KMIP_ATTRIB_NOVALUE = 45;
320 static const P6UINT8 KMIP_ATTRIB_RNG = 46;
321 
376 typedef struct {
379  union {
425  } value;
426 } P6KMIP_ATTRIBUTE;
427 
440 typedef struct {
446 
454 typedef struct {
457 } P6KMIP_KEYID;
458 
470 typedef struct {
478 
490 typedef struct {
498 
511 typedef struct {
520 
537 typedef struct {
549 
561 typedef struct {
569 
583 typedef struct {
594 
605 typedef struct {
610 } P6KMIP_KEY;
611 
622 typedef struct {
627 } P6KMIP_PGPKEY;
628 
643 typedef struct {
653 } P6KMIP_RAWKEY;
654 
665 typedef struct {
671 
680 typedef struct {
684 
685 static const P6UINT8 KMIP_STREAM_INITIAL = 1;
686 static const P6UINT8 KMIP_STREAM_UPDATE = 2;
687 static const P6UINT8 KMIP_STREAM_FINAL = 3;
688 
699 typedef struct {
704 } P6KMIP_SIGNIN;
705 
713 typedef struct {
716 } P6KMIP_NONCE;
717 
724 typedef struct {
728 
740 typedef struct {
747 } P6KMIP_DEVICE;
748 
758 typedef struct {
764 
774 typedef struct {
776  union {
780  } value;
781 } P6KMIP_CREDENTIAL;
782 
798 typedef struct {
809 
817 typedef struct {
820 } P6KMIP_ERROR;
821 
831 typedef struct {
837 
848 typedef struct {
853 
864 typedef struct {
869 
888 typedef struct {
901 
919 typedef struct {
930 
956 typedef struct {
977 
990 typedef struct {
995 
1001 typedef struct {
1004 } P6KMIP_VERSION;
1005 
1016 typedef struct {
1018  P6UINT32 function;
1022 } P6KMIP_PUT;
1023 
1032 static const P6KMIPENCODERFLAGS P6KMIPENCODER_NOFLAGS = 0x00000000;
1033 static const P6KMIPENCODERFLAGS P6KMIPENCODER_TRACEON = 0x00000001;
1034 
1044 #undef INTERFACE
1045 #define INTERFACE p6IKMIPRequest
1047 {
1049 
1062  P6DECLCOMMETHOD(startRequestMsg)(P6THIS_ P6KMIP_REQUESTPARAMS params ) P6PURE;
1063 
1078  P6DECLCOMMETHOD(endRequestMsg)(P6THIS) P6PURE;
1079 
1098 
1121  P6DECLCOMMETHOD(addCreateKeyPairRequest)(P6THIS_ P6KMIP_TEMPLATEATTRIBUTE* pCommonAttributes, P6KMIP_TEMPLATEATTRIBUTE* pPrivateKeyAttributes, P6KMIP_TEMPLATEATTRIBUTE* pPublicKeyAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1122 
1140  P6DECLCOMMETHOD(addCreateSplitKeyRequest)(P6THIS_ P6KMIP_SPLITSPEC splitdef, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1141 
1163  P6DECLCOMMETHOD(addJoinSplitKeyRequest)(P6THIS_ P6UINT32 objectType, P6UINT32 idCount, P6NCSTR* pIdList, P6UINT32* pSecretType, P6KMIP_TEMPLATEATTRIBUTE* pAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1164 
1188  P6DECLCOMMETHOD(addRegisterKeyRequest)(P6THIS_ p6ICryptoKey* pKey, P6UINT32* pKeyFormatType, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1189 
1211  P6DECLCOMMETHOD(addRegisterMDORequest)(P6THIS_ P6UINT32 objectType, P6UINT32 cryptoAlg, P6UINT32 cryptoLength, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1212 
1234  P6DECLCOMMETHOD(addRegisterDHKeyRequest)(P6THIS_ p6IDHKeyExchange* pKey, P6UINT32 keyFormatType, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1235 
1257 
1279  P6DECLCOMMETHOD(addRegisterX509KeyRequest)(P6THIS_ P6KMIP_RAWKEY rawKey, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1280 
1305  P6DECLCOMMETHOD(addRegisterRawKeyRequest)(P6THIS_ P6KMIP_RAWKEY rawKey, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1306 
1326  P6DECLCOMMETHOD(addRegisterWrappedKeyRequest)(P6THIS_ P6KMIP_WRAPPEDKEY wrapKey, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1327 
1349  P6DECLCOMMETHOD(addRegisterSplitKeyRequest)(P6THIS_ P6KMIP_SPLITKEY* pKey, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1350 
1369  P6DECLCOMMETHOD(addRegisterCertificateRequest)(P6THIS_ p6ICert* pCertificate, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1370 
1390  P6DECLCOMMETHOD(addRegisterRawCertificateRequest)(P6THIS_ P6UINT32 certType, P6BCSTR certValue, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1391 
1412  P6DECLCOMMETHOD(addRegisterTemplateRequest)(P6THIS_ P6UINT32 itemCount, P6KMIP_ATTRIBUTE* pItemList, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1413 
1434  P6DECLCOMMETHOD(addRegisterSecretDataRequest)(P6THIS_ P6UINT32 secretType, P6BCSTR secretValue, P6KMIP_KEYWRAPPING* pWrapInfo, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1435 
1455  P6DECLCOMMETHOD(addRegisterOpaqueRequest)(P6THIS_ P6UINT32 dataType, P6BCSTR opaqueValue, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1456 
1475  P6DECLCOMMETHOD(addReKeyRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6UINT32* pOffset, P6KMIP_TEMPLATEATTRIBUTE* pAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1476 
1501  P6DECLCOMMETHOD(addReKeyKeyPairRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6UINT32* pOffset, P6KMIP_TEMPLATEATTRIBUTE* pCommonAttributes, P6KMIP_TEMPLATEATTRIBUTE* pPrivateKeyAttributes, P6KMIP_TEMPLATEATTRIBUTE* pPublicKeyAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1502 
1522 
1543  P6DECLCOMMETHOD(addCertifyRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6UINT32 requestType, P6BCSTR certificateRequest, P6KMIP_TEMPLATEATTRIBUTE* pAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1544 
1565  P6DECLCOMMETHOD(addReCertifyRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6UINT32* pOffset, P6UINT32 requestType, P6BCSTR certificateRequest, P6KMIP_TEMPLATEATTRIBUTE* pAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1566 
1587  P6DECLCOMMETHOD(addLocateRequest)(P6THIS_ P6UINT32* pMaxItems, P6UINT32* pStorageStatusMask, P6UINT32* pObjectGroupMember, P6UINT32 attribCount, P6KMIP_ATTRIBUTE* pAttributeList, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1588 
1609  P6DECLCOMMETHOD(addCheckRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6INT64* pUsageLimitsCount, P6UINT32* pUsageMask, P6UINT32* pLeaseTime, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1610 
1630  P6DECLCOMMETHOD(addGetRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6UINT32* pKeyFormat, P6UINT32* pKeyCompression, P6KMIP_WRAPPINGSPEC* pSpec, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1631 
1651  P6DECLCOMMETHOD(addGetAttributesRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6UINT32 attribCount, P6NCSTR* pAttributeNames, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1652 
1670  P6DECLCOMMETHOD(addGetAttributeListRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1671 
1690  P6DECLCOMMETHOD(addAddAttributeRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_ATTRIBUTE attribute, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1691 
1710  P6DECLCOMMETHOD(addModifyAttributeRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_ATTRIBUTE attribute, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1711 
1732  P6DECLCOMMETHOD(addDeleteAttributeRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6NCSTR attributeName, P6INT32* pAttributeIndex, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1733 
1751  P6DECLCOMMETHOD(addObtainLeaseRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1752 
1772  P6DECLCOMMETHOD(addGetUsageAllocationRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6UINT64 usageLimitsCount, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1773 
1791  P6DECLCOMMETHOD(addActivateRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1792 
1812  P6DECLCOMMETHOD(addRevokeRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_REVOCATION reason, P6TIME* pOccurenceDate, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1813 
1832  P6DECLCOMMETHOD(addDestroyRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1833 
1852  P6DECLCOMMETHOD(addArchiveRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1853 
1871  P6DECLCOMMETHOD(addRecoverRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1872 
1895  P6DECLCOMMETHOD(addValidateRequest)(P6THIS_ P6UINT32 certCount, p6ICert** pCertList, P6UINT32 idCount, P6NCSTR* pIdList, P6TIME* pValidityDate, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1896 
1914  P6DECLCOMMETHOD(addQueryRequest)(P6THIS_ P6UINT32 queryCount, P6UINT32* pQueryFunctions, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1915 
1933  P6DECLCOMMETHOD(addDiscoverVersionsRequest)(P6THIS_ P6UINT32 itemCount, P6KMIP_VERSION* pVersionList, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1934 
1952  P6DECLCOMMETHOD(addCancelRequest)(P6THIS_ P6BCSTR correlationValue, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1953 
1971  P6DECLCOMMETHOD(addPollRequest)(P6THIS_ P6BCSTR correlationValue, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1972 
1989  P6DECLCOMMETHOD(addEncryptRequest)(P6THIS_ P6KMIP_CRYPTOIN encryptParams, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
1990 
2007  P6DECLCOMMETHOD(addDecryptRequest)(P6THIS_ P6KMIP_CRYPTOIN encryptParams, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2008 
2026 
2043  P6DECLCOMMETHOD(addSignatureVerifyRequest)(P6THIS_ P6KMIP_SIGNIN signParams, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2044 
2062 
2079  P6DECLCOMMETHOD(addMACVerifyRequest)(P6THIS_ P6KMIP_SIGNIN macParams, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2080 
2097  P6DECLCOMMETHOD(addRNGRetrieveRequest)(P6THIS_ P6INT32 dataLength, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2098 
2117 
2137 
2160  P6DECLCOMMETHOD(addNotify)(P6THIS_ P6NCSTR uniqueIdentifier, P6UINT32 itemCount, P6KMIP_ATTRIBUTE* pItemList, P6BOOL* pIgnore, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2161 
2187  P6DECLCOMMETHOD(addPutKeyRequest)(P6THIS_ P6KMIP_PUT params, p6ICryptoKey* pKey, P6UINT32* pKeyFormatType, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2188 
2210  P6DECLCOMMETHOD(addPutWrappedKeyRequest)(P6THIS_ P6KMIP_PUT params, P6KMIP_WRAPPEDKEY* pKey, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2211 
2234  P6DECLCOMMETHOD(addPutSplitKeyRequest)(P6THIS_ P6KMIP_PUT params, P6KMIP_SPLITKEY* pKey, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2235 
2257  P6DECLCOMMETHOD(addPutCertificateRequest)(P6THIS_ P6KMIP_PUT params, p6ICert* pCertificate, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2258 
2282  P6DECLCOMMETHOD(addPutTemplateRequest)(P6THIS_ P6KMIP_PUT params, P6UINT32 itemCount, P6KMIP_ATTRIBUTE* pItemList, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2283 
2307  P6DECLCOMMETHOD(addPutSecretDataRequest)(P6THIS_ P6KMIP_PUT params, P6UINT32 secretType, P6BCSTR secretValue, P6KMIP_KEYWRAPPING* pWrapInfo, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2308 
2331  P6DECLCOMMETHOD(addPutOpaqueRequest)(P6THIS_ P6KMIP_PUT params, P6UINT32 dataType, P6BCSTR opaqueValue, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2332 };
2333 
2334 // {B972A9BF-0F0C-4f40-8591-CB6DDF807990}
2335 #define IF_p6IKMIPRequest {0xb972a9bf,0xf0c,0x4f40,{0x85,0x91,0xcb,0x6d,0xdf,0x80,0x79,0x90}}
2336 
2337 
2338 
2339 
2351 #undef INTERFACE
2352 #define INTERFACE p6IKMIPRequest2
2354 {
2368  P6DECLCOMMETHOD(startRequestMsg)(P6THIS_ P6KMIP_REQUESTPARAMS params ) P6PURE;
2369 
2384  P6DECLCOMMETHOD(endRequestMsg)(P6THIS) P6PURE;
2385 
2404 
2427  P6DECLCOMMETHOD(addCreateKeyPairRequest)(P6THIS_ P6KMIP_TEMPLATEATTRIBUTE* pCommonAttributes, P6KMIP_TEMPLATEATTRIBUTE* pPrivateKeyAttributes, P6KMIP_TEMPLATEATTRIBUTE* pPublicKeyAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2428 
2446  P6DECLCOMMETHOD(addCreateSplitKeyRequest)(P6THIS_ P6KMIP_SPLITSPEC splitdef, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2447 
2469  P6DECLCOMMETHOD(addJoinSplitKeyRequest)(P6THIS_ P6UINT32 objectType, P6UINT32 idCount, P6NCSTR* pIdList, P6UINT32* pSecretType, P6KMIP_TEMPLATEATTRIBUTE* pAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2470 
2494  P6DECLCOMMETHOD(addRegisterKeyRequest)(P6THIS_ p6ICryptoKey* pKey, P6UINT32* pKeyFormatType, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2495 
2517  P6DECLCOMMETHOD(addRegisterMDORequest)(P6THIS_ P6UINT32 objectType, P6UINT32 cryptoAlg, P6UINT32 cryptoLength, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2518 
2540  P6DECLCOMMETHOD(addRegisterDHKeyRequest)(P6THIS_ p6IDHKeyExchange* pKey, P6UINT32 keyFormatType, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2541 
2563 
2585  P6DECLCOMMETHOD(addRegisterX509KeyRequest)(P6THIS_ P6KMIP_RAWKEY rawKey, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2586 
2611  P6DECLCOMMETHOD(addRegisterRawKeyRequest)(P6THIS_ P6KMIP_RAWKEY rawKey, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2612 
2632  P6DECLCOMMETHOD(addRegisterWrappedKeyRequest)(P6THIS_ P6KMIP_WRAPPEDKEY wrapKey, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2633 
2655  P6DECLCOMMETHOD(addRegisterSplitKeyRequest)(P6THIS_ P6KMIP_SPLITKEY* pKey, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2656 
2675  P6DECLCOMMETHOD(addRegisterCertificateRequest)(P6THIS_ p6ICert* pCertificate, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2676 
2696  P6DECLCOMMETHOD(addRegisterRawCertificateRequest)(P6THIS_ P6UINT32 certType, P6BCSTR certValue, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2697 
2718  P6DECLCOMMETHOD(addRegisterTemplateRequest)(P6THIS_ P6UINT32 itemCount, P6KMIP_ATTRIBUTE* pItemList, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2719 
2740  P6DECLCOMMETHOD(addRegisterSecretDataRequest)(P6THIS_ P6UINT32 secretType, P6BCSTR secretValue, P6KMIP_KEYWRAPPING* pWrapInfo, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2741 
2761  P6DECLCOMMETHOD(addRegisterOpaqueRequest)(P6THIS_ P6UINT32 dataType, P6BCSTR opaqueValue, P6KMIP_TEMPLATEATTRIBUTE attributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2762 
2781  P6DECLCOMMETHOD(addReKeyRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6UINT32* pOffset, P6KMIP_TEMPLATEATTRIBUTE* pAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2782 
2807  P6DECLCOMMETHOD(addReKeyKeyPairRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6UINT32* pOffset, P6KMIP_TEMPLATEATTRIBUTE* pCommonAttributes, P6KMIP_TEMPLATEATTRIBUTE* pPrivateKeyAttributes, P6KMIP_TEMPLATEATTRIBUTE* pPublicKeyAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2808 
2828 
2849  P6DECLCOMMETHOD(addCertifyRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6UINT32 requestType, P6BCSTR certificateRequest, P6KMIP_TEMPLATEATTRIBUTE* pAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2850 
2871  P6DECLCOMMETHOD(addReCertifyRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6UINT32* pOffset, P6UINT32 requestType, P6BCSTR certificateRequest, P6KMIP_TEMPLATEATTRIBUTE* pAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2872 
2897  P6DECLCOMMETHOD(addLocateRequest2)(P6THIS_ P6UINT32* pMaxItems, P6UINT32* pOffsetItems, P6UINT32* pStorageStatusMask, P6UINT32* pObjectGroupMember, P6UINT32 attribCount, P6KMIP_ATTRIBUTE* pAttributeList, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2898 
2919  P6DECLCOMMETHOD(addCheckRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6INT64* pUsageLimitsCount, P6UINT32* pUsageMask, P6UINT32* pLeaseTime, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2920 
2940  P6DECLCOMMETHOD(addGetRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6UINT32* pKeyFormat, P6UINT32* pKeyCompression, P6KMIP_WRAPPINGSPEC* pSpec, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2941 
2961  P6DECLCOMMETHOD(addGetAttributesRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6UINT32 attribCount, P6NCSTR* pAttributeNames, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2962 
2980  P6DECLCOMMETHOD(addGetAttributeListRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
2981 
3000  P6DECLCOMMETHOD(addAddAttributeRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_ATTRIBUTE attribute, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3001 
3020  P6DECLCOMMETHOD(addModifyAttributeRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_ATTRIBUTE attribute, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3021 
3042  P6DECLCOMMETHOD(addDeleteAttributeRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6NCSTR attributeName, P6INT32* pAttributeIndex, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3043 
3061  P6DECLCOMMETHOD(addObtainLeaseRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3062 
3082  P6DECLCOMMETHOD(addGetUsageAllocationRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6UINT64 usageLimitsCount, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3083 
3101  P6DECLCOMMETHOD(addActivateRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3102 
3122  P6DECLCOMMETHOD(addRevokeRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_REVOCATION reason, P6TIME* pOccurenceDate, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3123 
3142  P6DECLCOMMETHOD(addDestroyRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3143 
3162  P6DECLCOMMETHOD(addArchiveRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3163 
3181  P6DECLCOMMETHOD(addRecoverRequest)(P6THIS_ P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3182 
3205  P6DECLCOMMETHOD(addValidateRequest)(P6THIS_ P6UINT32 certCount, p6ICert** pCertList, P6UINT32 idCount, P6NCSTR* pIdList, P6TIME* pValidityDate, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3206 
3224  P6DECLCOMMETHOD(addQueryRequest)(P6THIS_ P6UINT32 queryCount, P6UINT32* pQueryFunctions, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3225 
3243  P6DECLCOMMETHOD(addDiscoverVersionsRequest)(P6THIS_ P6UINT32 itemCount, P6KMIP_VERSION* pVersionList, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3244 
3262  P6DECLCOMMETHOD(addCancelRequest)(P6THIS_ P6BCSTR correlationValue, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3263 
3281  P6DECLCOMMETHOD(addPollRequest)(P6THIS_ P6BCSTR correlationValue, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3282 
3304  P6DECLCOMMETHOD(addEncryptRequest2)(P6THIS_ P6KMIP_CRYPTOIN encryptParams, P6KMIP_CRYPTOSTREAM* pStreamState, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3305 
3327  P6DECLCOMMETHOD(addDecryptRequest2)(P6THIS_ P6KMIP_CRYPTOIN decryptParams, P6KMIP_CRYPTOSTREAM* pStreamState, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3328 
3350  P6DECLCOMMETHOD(addSignRequest2)(P6THIS_ P6KMIP_SIGNIN signParams, P6KMIP_CRYPTOSTREAM* pStreamState, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3351 
3373  P6DECLCOMMETHOD(addSignatureVerifyRequest2)(P6THIS_ P6KMIP_SIGNIN signParams, P6KMIP_CRYPTOSTREAM* pStreamState, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3374 
3396  P6DECLCOMMETHOD(addMACRequest2)(P6THIS_ P6KMIP_SIGNIN macParams, P6KMIP_CRYPTOSTREAM* pStreamState, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3397 
3419  P6DECLCOMMETHOD(addMACVerifyRequest2)(P6THIS_ P6KMIP_SIGNIN macParams, P6KMIP_CRYPTOSTREAM* pStreamState, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3420 
3437  P6DECLCOMMETHOD(addRNGRetrieveRequest)(P6THIS_ P6INT32 dataLength, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3438 
3457 
3481 
3504  P6DECLCOMMETHOD(addNotify)(P6THIS_ P6NCSTR uniqueIdentifier, P6UINT32 itemCount, P6KMIP_ATTRIBUTE* pItemList, P6BOOL* pIgnore, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3505 
3531  P6DECLCOMMETHOD(addPutKeyRequest)(P6THIS_ P6KMIP_PUT params, p6ICryptoKey* pKey, P6UINT32* pKeyFormatType, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3532 
3554  P6DECLCOMMETHOD(addPutWrappedKeyRequest)(P6THIS_ P6KMIP_PUT params, P6KMIP_WRAPPEDKEY* pKey, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3555 
3578  P6DECLCOMMETHOD(addPutSplitKeyRequest)(P6THIS_ P6KMIP_PUT params, P6KMIP_SPLITKEY* pKey, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3579 
3601  P6DECLCOMMETHOD(addPutCertificateRequest)(P6THIS_ P6KMIP_PUT params, p6ICert* pCertificate, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3602 
3626  P6DECLCOMMETHOD(addPutTemplateRequest)(P6THIS_ P6KMIP_PUT params, P6UINT32 itemCount, P6KMIP_ATTRIBUTE* pItemList, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3627 
3651  P6DECLCOMMETHOD(addPutSecretDataRequest)(P6THIS_ P6KMIP_PUT params, P6UINT32 secretType, P6BCSTR secretValue, P6KMIP_KEYWRAPPING* pWrapInfo, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3652 
3675  P6DECLCOMMETHOD(addPutOpaqueRequest)(P6THIS_ P6KMIP_PUT params, P6UINT32 dataType, P6BCSTR opaqueValue, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3676 
3687  P6DECLCOMMETHOD(setProtocolVersion)(P6THIS_ P6UINT32 version ) P6PURE;
3688 };
3689 
3690 // {2E3A3A14-BAD4-4399-97CA-0D915834846D}
3691 #define IF_p6IKMIPRequest2 {0x2e3a3a14,0xbad4,0x4399,{0x97,0xca,0xd,0x91,0x58,0x34,0x84,0x6d}}
3692 
3693 
3694 
3704 #undef INTERFACE
3705 #define INTERFACE p6IKMIPResponse
3707 {
3719  P6DECLCOMMETHOD(startResponseMsg)(P6THIS) P6PURE;
3720 
3733  P6DECLCOMMETHOD(endResponseMsg)(P6THIS) P6PURE;
3734 
3752  P6DECLCOMMETHOD(addCreateResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_TEMPLATEATTRIBUTE* pAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3753 
3773  P6DECLCOMMETHOD(addCreateKeyPairResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result,
3774  P6NCSTR privateKeyId,
3775  P6NCSTR publicKeyId,
3776  P6KMIP_TEMPLATEATTRIBUTE* pPrivateKeyAttributes,
3777  P6KMIP_TEMPLATEATTRIBUTE* pPublicKeyAttributes,
3779 
3797  P6DECLCOMMETHOD(addRegisterResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_TEMPLATEATTRIBUTE* pAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3798 
3816  P6DECLCOMMETHOD(addReKeyResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_TEMPLATEATTRIBUTE* pAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3817 
3837  P6DECLCOMMETHOD(addReKeyKeyPairResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result,
3838  P6NCSTR privateKeyId,
3839  P6NCSTR publicKeyId,
3840  P6KMIP_TEMPLATEATTRIBUTE* pPrivateKeyAttributes,
3841  P6KMIP_TEMPLATEATTRIBUTE* pPublicKeyAttributes,
3843 
3861  P6DECLCOMMETHOD(addDeriveKeyResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_TEMPLATEATTRIBUTE* pAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3862 
3880  P6DECLCOMMETHOD(addCertifyResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_TEMPLATEATTRIBUTE* pAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3881 
3899  P6DECLCOMMETHOD(addReCertifyResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_TEMPLATEATTRIBUTE* pAttributes, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3900 
3918  P6DECLCOMMETHOD(addLocateResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6UINT32 idCount, P6NCSTR* pIdList, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3919 
3941  P6DECLCOMMETHOD(addCheckResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_USAGELIMITS* pLimits, P6UINT32* pUsageMask, P6UINT32* pLeaseTime, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3942 
3966  P6DECLCOMMETHOD(addGetKeyResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_KEY keyInfo, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3967 
3992  P6DECLCOMMETHOD(addGetRawKeyResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_RAWKEY keyInfo, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
3993 
4012  P6DECLCOMMETHOD(addGetWrappedKeyResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_WRAPPEDKEY* pKey, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4013 
4032  P6DECLCOMMETHOD(addGetSplitKeyResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_SPLITKEY* pKey, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4033 
4051  P6DECLCOMMETHOD(addGetCertificateResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, p6ICert* pCertificate, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4052 
4072  P6DECLCOMMETHOD(addGetRawCertificateResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6UINT32 certType, P6BCSTR certValue, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4073 
4093  P6DECLCOMMETHOD(addGetTemplateResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6UINT32 itemCount, P6KMIP_ATTRIBUTE* pItemList, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4094 
4114  P6DECLCOMMETHOD(addGetSecretDataResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6UINT32 secretType, P6BCSTR secretValue, P6KMIP_KEYWRAPPING* pWrapInfo, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4115 
4134  P6DECLCOMMETHOD(addGetOpaqueResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6UINT32 dataType, P6BCSTR opaqueValue, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4135 
4155  P6DECLCOMMETHOD(addGetAttributesResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6UINT32 attribCount, P6KMIP_ATTRIBUTE* pAttributeList, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4156 
4175  P6DECLCOMMETHOD(addGetAttributeListResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6UINT32 nameCount, P6NCSTR* pNameList, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4176 
4194  P6DECLCOMMETHOD(addAddAttributeResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_ATTRIBUTE attribute, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4195 
4213  P6DECLCOMMETHOD(addModifyAttributeResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_ATTRIBUTE attribute, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4214 
4232  P6DECLCOMMETHOD(addDeleteAttributeResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_ATTRIBUTE attribute, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4233 
4252  P6DECLCOMMETHOD(addObtainLeaseRsponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6UINT32 leaseTime, P6TIME lastChangeDate, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4253 
4270  P6DECLCOMMETHOD(addGetUsageAllocationResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4271 
4288  P6DECLCOMMETHOD(addActivateResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4289 
4306  P6DECLCOMMETHOD(addRevokeResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4307 
4324  P6DECLCOMMETHOD(addDestroyResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4325 
4342  P6DECLCOMMETHOD(addArchiveResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4343 
4360  P6DECLCOMMETHOD(addRecoverResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6NCSTR uniqueIdentifier, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4361 
4378  P6DECLCOMMETHOD(addValidateResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6UINT32 validityIndicator, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4379 
4398 
4416  P6DECLCOMMETHOD(addDiscoverVersionsResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6UINT32 itemCount, P6KMIP_VERSION* pVersionList, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4417 
4435  P6DECLCOMMETHOD(addCancelResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6BCSTR correlationValue, P6UINT32 cancelResult, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4436 
4456  P6DECLCOMMETHOD(addPollNotCompletedResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6KMIP_MSGEXTENSION* pExtension ) P6PURE;
4457 
4474 
4491 
4505  P6DECLCOMMETHOD(addUnknownResponse)(P6THIS_ P6KMIP_RESPONSEPARAMS result, P6UINT32 opCode ) P6PURE;
4506 };
4507 
4508 // {FFB702BB-8FF4-423e-9E4D-A0E8D08B4233}
4509 #define IF_p6IKMIPResponse {0xffb702bb,0x8ff4,0x423e,{0x9e,0x4d,0xa0,0xe8,0xd0,0x8b,0x42,0x33}}
4510 
4511 
4512 
4528 typedef struct {
4533 
4534 
4549 static const P6KMIPVERSION P6KMIP_VERSION_10 = 0;
4550 static const P6KMIPVERSION P6KMIP_VERSION_11 = 1;
4551 static const P6KMIPVERSION P6KMIP_VERSION_12 = 2;
4552 static const P6KMIPVERSION P6KMIP_VERSION_13 = 3;
4553 
4554 
4566 #undef INTERFACE
4567 #define INTERFACE p6IKMIPEncoder
4569 {
4585  P6DECLCOMMETHOD(initialize)(P6THIS_ P6KMIPENCODERFLAGS flags, P6KMIPVERSION version, p6IIoBufferFactory* pPool, P6KMIP_ENCODER_PREF* pPreferences ) P6PURE;
4586 
4600  P6DECLCOMMETHOD(getBufPtr)(P6THIS_ p6IIoBuffer** pBuffer ) P6PURE;
4601 };
4602 
4603 // {9D517A85-BC81-4bf8-B2FD-FB679A9BC9A3}
4604 #define IF_p6IKMIPEncoder {0x9d517a85,0xbc81,0x4bf8,{0xb2,0xfd,0xfb,0x67,0x9a,0x9b,0xc9,0xa3}}
4605 
4606 // {7E0BAB5E-B69F-4bcd-8CA1-9D40EC0C44D9}
4607 #define COMP_p6KMIPEncoder {0x7e0bab5e,0xb69f,0x4bcd,{0x8c,0xa1,0x9d,0x40,0xec,0xc,0x44,0xd9}}
4608 
4609 
4610 #ifdef __cplusplus
4611 } // extern "C"
4612 } // namespace
4613 #endif
4614 
4615 #endif
4616 
4617 
P6KMIP_X509CERTNAME attribute.
P6KMIP_CERTNAME attribute.
P6KMIP_DOMAINPARAMS.
Definition: p6kmipencoder.h:95
P6KMIP_USAGELIMITS attribute.
P6LONGLONG P6INT64
Definition: p6types.h:56
P6KMIP_NAME alternativeName
P6KMIP_VERSION.
Const Binary string.
Definition: p6types.h:178
P6KMIP_CRYPTOSTREAM.
A convience structure to pass around a narrow string along with its length.
Definition: p6types.h:225
P6UINT32 attribCount
P6KMIP_CRYPTOPARAMS * pParams
This interface provides key metadata infrormation and key access.
Definition: p6cryptokey.h:1195
P6KMIP_CERTID certificateIdentifier
P6UINT32 compressionType
unsigned int P6UINT32
Definition: p6types.h:46
P6KMIP_ATTRIBUTE * pAttributeList
P6KMIP_CAPABILITIES * pCapabilities
P6KMIP_PUT.
P6KMIP_REVOCATION attribute.
P6KMIP_MSGEXTENSION.
#define P6DECLAREICOM
Definition: p6defs.h:175
Constant KMIP definitions.
I/O Buffer Interfaces.
This interface is used to create / encode the construction of a KMIP message as defined in Key Manage...
P6KMIP_ATTRIBUTE.
#define P6PURE
Definition: p6defs.h:176
P6KMIP_REVOCATION revocation
P6KMIP_SIGNIN.
P6KMIP_CRYPTOIN.
unsigned char P6BOOL
Boolean type.
Definition: p6types.h:112
P6KMIP_RAWKEY.
P6KMIP_NAME attribute.
Definition: p6kmipencoder.h:49
P6NCSTR uniqueIdentifier
P6KMIP_DRIVEKEY.
P6KMIP_DIGEST attribute.
This factory interface is responsible for creating and managing memory pooled Io Buffers (p6IIoBuffer...
Definition: p6iobuffer.h:605
P6KMIP_KEY.
P6KMIP_PASSWORD.
P6UINT32 * pInitialCounterValue
Definition: p6kmipencoder.h:85
P6KMIP_ATTESTATION.
P6KMIP_SPLITKEY.
P6KMIP_CERTID attribute.
P6KMIP_PASSWORD password
P6KMIP_CRYPTOPARAMS params
P6KMIP_RNGPARAMS randomNumberGenerator
P6KMIP_CRYPTOPARAMS attribute.
Definition: p6kmipencoder.h:72
P6UINT32 cryptoAlgorithm
unsigned char P6UINT8
Definition: p6types.h:36
P6UINT32 cryptoAlgorithm
P6KMIP_ERROR.
P6KMIP_CERTNAME certificateSubject
P6KMIP_KEYWRAPPING.
P6KMIP_CREDENTIAL.
P6UINT32 * pInvocationFieldLength
Definition: p6kmipencoder.h:83
P6KMIP_DIGEST digest
P6KMIP_RESPONSEPARAMS.
Interface definition for Diffe-Hellman Key Exchange References: 1) RFC 4253, SSH Transport Layer Prot...
P6UINT32 hashingAlgorithm
P6KMIP_QUERYRESULT.
P6KMIP_LINK attribute.
int P6INT32
Definition: p6types.h:47
The base interface all [p6]COM components must derive from and implement.
Definition: p6comdef.h:97
P6KMIP_KEYWRAPPING * pWrapInfo
P6KMIP_APPLICATION applicationInfo
P6KMIP_APPLICATION * pNamespaces
P6KMIP_X509CERTID attribute.
P6KMIP_CRYPTOPARAMS * pParams
P6KMIP_DEVICE.
Binary string.
Definition: p6types.h:164
P6KMIP_ATTRIBUTE * pAttributeList
P6KMIP_RNGPARAMS.
Interface definition for X509 V3 Certificates.
P6NCSTR replacedIdentifier
P6ULONGLONG P6UINT64
Definition: p6types.h:55
P6KMIP_EXTENSION * pExtension
P6KMIP_PROFILEINFO attribute.
P6KMIP_SETVALIDATION.
P6UINT32 P6KMIPVERSION
P6KMIPVERSION.
P6KMIP_NAME keyValueLocation
P6KMIP_CREDENTIAL * pCredential
P6KMIP_XATTRIB extension
This component provides the basics of the key exchange calculates used in the Diffe-Hellman key excha...
P6KMIP_KEYWRAPPING * pWrapInfo
This interface is used to create / encode the construction of a KMIP request message as defined in Ke...
P6KMIP_ENCODER_PREF.
P6UINT32 keyFormatType
This interface allows the caller to access parts of an X509 V3 certificate for use in protocols and i...
Definition: p6cert.h:111
P6KMIP_ATTRIBUTE * pAttributeList
P6KMIP_PROFILEINFO * pProfiles
P6KMIP_CERTNAME certificateIssuer
P6KMIP_XATTRIB attribute.
P6KMIP_SETVALIDATION * pValidations
p6ICryptoKey * pKey
P6KMIP_NONCE.
#define P6DECLCOMMETHOD(method)
Definition: p6defs.h:173
P6KMIP_USAGELIMITS usageLimits
P6INT64 P6TIME
The wallclock time represented as the number of microseconds since midnight January 1 1970 UTC...
Definition: p6types.h:238
P6KMIP_CAPABILITIES.
P6KMIP_PGPKEY.
#define P6THIS_
Definition: p6defs.h:177
P6KMIP_TEMPLATEATTRIBUTE.
P6KMIP_DOMAINPARAMS dParams
P6UINT32 P6KMIPENCODERFLAGS
P6KMIPENCODERFLAGS.
P6KMIP_X509CERTNAME x509certificateIssuer
P6KMIP_APPLICATION attribute.
P6KMIP_REQUESTPARAMS.
P6KMIP_CRYPTOPARAMS cParams
P6KMIP_CRYPTOPARAMS params
P6KMIP_SPLITSPEC.
P6KMIP_ATTESTATION attestation
P6KMIP_ATTRIBUTE * pAttributeList
Interfaces for wallclock and interval time.
#define P6THIS
Definition: p6defs.h:178
P6R_VENDOR_SLOT_INFO * pExtension
Definition: pkcs11p6r.h:144
P6KMIP_WRAPPINGSPEC.
P6KMIP_WRAPPEDKEY.
P6UINT32 * pRegistrationMethods
P6KMIP_X509CERTNAME x509certificateSubject
P6KMIP_KEYID.
P6KMIP_X509CERTID x509certificateIdentifier
This interface is used to create / encode the construction of a KMIP request message as defined in Ke...
This interface is used to create / encode the construction of a KMIP response message as defined in K...
P6KMIP_EXTENSION.
#define P6DECLAREIF_(iface, baseif)
Definition: p6defs.h:172
P6R Cryptographic key interface definitions.