Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
p6kmipclient.h
Go to the documentation of this file.
1 
17 #ifndef P6KMIPCLIENT_H__
18 #define P6KMIPCLIENT_H__ 1
19 
20 #include "p6net.h"
21 #include "p6kmipencoder.h"
22 #include "p6keystore.h"
23 #include "p6domxml.h"
24 
25 
26 namespace P6R {
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
37 interface p6IKMIPVersions : public p6ICom
38 {
49  P6COMMETHOD next( P6KMIP_VERSION* pSupported ) = 0;
50 
59  P6COMMETHOD reset() = 0;
60 
71  P6COMMETHOD count( P6UINT32* pNumber ) = 0;
72 };
73 // {B319EC18-E064-4c7b-9B91-1C20C7FE4BC2}
74 #define IF_p6IKMIPVersions {0xb319ec18,0xe064,0x4c7b,{0x9b,0x91,0x1c,0x20,0xc7,0xfe,0x4b,0xc2}}
75 
76 // {4EA4E33B-C6CF-47fa-96E5-D42E9A3EFCB3}
77 #define COMP_p6KMIPVersions {0x4ea4e33b,0xc6cf,0x47fa,{0x96,0xe5,0xd4,0x2e,0x9a,0x3e,0xfc,0xb3}}
78 
79 
85 interface p6IKMIPEnum : public p6ICom
86 {
102  P6COMMETHOD next( P6NCSTR* pUTF8String ) = 0;
103 
112  P6COMMETHOD reset() = 0;
113 
124  P6COMMETHOD count( P6UINT32* pNumber ) = 0;
125 };
126 // {249E72B1-1658-40fa-A85D-A122385CEF75}
127 #define IF_p6IKMIPEnum {0x249e72b1,0x1658,0x40fa,{0xa8,0x5d,0xa1,0x22,0x38,0x5c,0xef,0x75}}
128 
129 // {38FBB4E8-9AD8-48b8-997F-501D3A398419}
130 #define COMP_p6KMIPEnum {0x38fbb4e8,0x9ad8,0x48b8,{0x99,0x7f,0x50,0x1d,0x3a,0x39,0x84,0x19}}
131 
132 
138 interface p6IKMIPStr : public p6ICom
139 {
155  P6COMMETHOD next( P6NCSTR* pUTF8String ) = 0;
156 
165  P6COMMETHOD reset() = 0;
166 
177  P6COMMETHOD count( P6UINT32* pNumber ) = 0;
178 };
179 // {CD246EDF-3340-437e-93AF-87C6A6AA7CE2}
180 #define IF_p6IKMIPStr {0xcd246edf,0x3340,0x437e,{0x93,0xaf,0x87,0xc6,0xa6,0xaa,0x7c,0xe2}}
181 
182 // {3A5A4252-73CA-45ca-9891-77E6A969FA7F}
183 #define COMP_p6KMIPStr {0x3a5a4252,0x73ca,0x45ca,{0x98,0x91,0x77,0xe6,0xa9,0x69,0xfa,0x7f}}
184 
185 
191 interface p6IKMIPBinary : public p6ICom
192 {
208  P6COMMETHOD next( P6BSTR* pBuffer ) = 0;
209 
221  P6COMMETHOD associatedValue( P6UINT64* pNumber ) = 0;
222 
231  P6COMMETHOD reset() = 0;
232 
243  P6COMMETHOD count( P6UINT32* pNumber ) = 0;
244 };
245 // {4C634FD3-5F17-4454-83D5-57BF5B5594D7}
246 #define IF_p6IKMIPBinary {0x4c634fd3,0x5f17,0x4454,{0x83,0xd5,0x57,0xbf,0x5b,0x55,0x94,0xd7}}
247 
248 // {9F939B61-6FC4-4579-83C5-AD61ABBF3A22}
249 #define COMP_p6KMIPBinary {0x9f939b61,0x6fc4,0x4579,{0x83,0xc5,0xad,0x61,0xab,0xbf,0x3a,0x22}}
250 
251 
259 typedef struct {
263 
271 typedef struct {
275 
276 
329 typedef struct {
332  union {
377  } value;
378 } P6KMIP_OBJECT_ATTRIBUTE;
379 
380 
386 interface p6IKMIPAttribute : public p6ICom
387 {
405 
419  P6COMMETHOD next( P6UINT32* pType ) = 0;
420 
429  P6COMMETHOD reset() = 0;
430 
441  P6COMMETHOD count( P6UINT32* pNumber ) = 0;
442 };
443 // {E39E896D-8F38-456d-A1C7-17E22119A919}
444 #define IF_p6IKMIPAttribute {0xe39e896d,0x8f38,0x456d,{0xa1,0xc7,0x17,0xe2,0x21,0x19,0xa9,0x19}}
445 
446 // {1AB3DF9E-5B29-4372-89CA-163DD31B65FC}
447 #define COMP_p6KMIPAttribute {0x1ab3df9e,0x5b29,0x4372,{0x89,0xca,0x16,0x3d,0xd3,0x1b,0x65,0xfc}}
448 
449 
455 interface p6IKMIPNamespace : public p6ICom
456 {
474  P6COMMETHOD next( P6KMIP_APPLICATION* pNamespace ) = 0;
475 
484  P6COMMETHOD reset() = 0;
485 
496  P6COMMETHOD count( P6UINT32* pNumber ) = 0;
497 };
498 // {AC4ABE06-E273-4c83-889D-5DDA6A023300}
499 #define IF_p6IKMIPNamespace {0xac4abe06,0xe273,0x4c83,{0x88,0x9d,0x5d,0xda,0x6a,0x2,0x33,0x0}}
500 
501 // {1E9FC2E2-F05C-478a-A098-D0087CC7C081}
502 #define COMP_p6KMIPNamespace {0x1e9fc2e2,0xf05c,0x478a,{0xa0,0x98,0xd0,0x8,0x7c,0xc7,0xc0,0x81}}
503 
504 
510 interface p6IKMIPName : public p6ICom
511 {
528  P6COMMETHOD next( P6KMIP_NAME* pName ) = 0;
529 
538  P6COMMETHOD reset() = 0;
539 
550  P6COMMETHOD count( P6UINT32* pNumber ) = 0;
551 };
552 // {055E94DA-FB6A-4083-B55A-4449C2101D77}
553 #define IF_p6IKMIPName {0x55e94da,0xfb6a,0x4083,{0xb5,0x5a,0x44,0x49,0xc2,0x10,0x1d,0x77}}
554 
555 // {966CE299-DC38-488a-898A-B79BBD0C3228}
556 #define COMP_p6KMIPName {0x966ce299,0xdc38,0x488a,{0x89,0x8a,0xb7,0x9b,0xbd,0xc,0x32,0x28}}
557 
558 
564 interface p6IKMIPExtInfo : public p6ICom
565 {
581  P6COMMETHOD next( P6KMIP_EXTENSION* pExtension ) = 0;
582 
591  P6COMMETHOD reset() = 0;
592 
603  P6COMMETHOD count( P6UINT32* pNumber ) = 0;
604 };
605 // {2D95D569-2BBE-4aaf-84FF-83890DA72F3F}
606 #define IF_p6IKMIPExtInfo {0x2d95d569,0x2bbe,0x4aaf,{0x84,0xff,0x83,0x89,0xd,0xa7,0x2f,0x3f}}
607 
608 // {0B49847A-1711-4e2b-A792-E98C0851A514}
609 #define COMP_p6KMIPExtInfo {0xb49847a,0x1711,0x4e2b,{0xa7,0x92,0xe9,0x8c,0x8,0x51,0xa5,0x14}}
610 
611 
625 typedef struct {
633 
642 typedef struct {
646 
659 typedef struct {
667 
685 typedef struct {
690 
694 
707 typedef struct {
710 
714 
724 typedef struct {
729 
742 typedef struct {
750 
760 typedef struct {
765 
781 typedef struct {
787 
790 
791 
804 typedef struct {
812 
824 typedef struct {
831 
842 typedef struct {
848 
867 typedef struct {
871  union {
880  } value;
881 } P6KMIP_REGKEYPARAMS;
882 
894 typedef struct {
901 
914 typedef struct {
918  union {
921  } value;
922 } P6KMIP_CERTPARAMS;
923 
938 typedef struct {
944 
956 typedef struct {
963 
974 typedef struct {
980 
990 typedef struct {
995 
1006 typedef struct {
1012 
1021 typedef struct {
1025 
1034 typedef struct {
1038 
1049 typedef struct {
1053 } P6KMIP_LEASE;
1054 
1067 typedef struct {
1073 } P6KMIP_RESULT;
1074 
1088 typedef struct {
1097 
1106 typedef struct {
1110 
1119 typedef struct {
1123 
1134 typedef struct {
1140 
1149 typedef struct {
1153 
1163 typedef struct {
1167 } P6KMIP_BLOB;
1168 
1179 typedef struct {
1184 } P6KMIP_PGPBLOB;
1185 
1199 typedef struct {
1204  union {
1207  } value;
1208 } P6KMIP_KEYBLOCK;
1209 
1222 typedef struct {
1230 
1245 typedef struct {
1255 
1267 typedef struct {
1274 
1284 typedef struct {
1289 
1307 typedef struct {
1320 
1330 typedef struct {
1335 
1345 typedef struct {
1349 } P6KMIP_SIGNOUT;
1350 
1361 typedef struct {
1366 
1401 typedef struct {
1404  union {
1424  } value;
1425 } P6KMIP_MANAGED;
1426 
1427 
1473 typedef struct {
1477  union {
1513  } operation;
1514 } P6KMIP_BATCHRESULT;
1515 
1521 interface p6IKMIPResult : public p6ICom
1522 {
1534  P6COMMETHOD next( P6KMIP_BATCHRESULT* pItem ) = 0;
1535 
1544  P6COMMETHOD reset() = 0;
1545 
1556  P6COMMETHOD count( P6UINT32* pNumber ) = 0;
1557 };
1558 // {3DEBB8D7-6A9C-4e96-87E5-8CE94A0F4F4D}
1559 #define IF_p6IKMIPResult {0x3debb8d7,0x6a9c,0x4e96,{0x87,0xe5,0x8c,0xe9,0x4a,0xf,0x4f,0x4d}}
1560 
1561 // {E87F5FD3-7C14-4f47-BDBB-A3BBC20FBF97}
1562 #define COMP_p6KMIPResult {0xe87f5fd3,0x7c14,0x4f47,{0xbd,0xbb,0xa3,0xbb,0xc2,0xf,0xbf,0x97}}
1563 
1564 
1618 typedef struct {
1633 } P6KMIP_PREF;
1634 
1635 
1667 const P6KMIPFLAGS P6KMIPFLG_NOFLAGS = 0x00000000;
1668 const P6KMIPFLAGS P6KMIPFLG_TRACE_OFF = 0x00000002;
1669 const P6KMIPFLAGS P6KMIPFLG_TRACE_BASIC = 0x00000004;
1670 const P6KMIPFLAGS P6KMIPFLG_TRACE_MSGS = 0x00000008;
1671 const P6KMIPFLAGS P6KMIPFLG_TRACE_FORMATXML = 0x00000010;
1672 const P6KMIPFLAGS P6KMIPFLG_TRACE_FORMATJSON = 0x00000020;
1673 const P6KMIPFLAGS P6KMIPFLG_TRACE_FORMATJSONML = 0x00000040;
1674 const P6KMIPFLAGS P6KMIPFLG_TRACE_FORMATBINARY = 0x00000080;
1675 const P6KMIPFLAGS P6KMIPFLG_TRACE_VERBOSE = 0x00000100;
1676 const P6KMIPFLAGS P6KMIPFLG_DEBUG_MODE = 0x00000200;
1677 const P6KMIPFLAGS P6KMIPFLG_TRACE_FORMATKMIPXML = 0x00000400;
1678 const P6KMIPFLAGS P6KMIPFLG_TRACE_HTTPHEADERS = 0x00000800;
1679 
1691 interface p6IKMIPClient : public p6ICom
1692 {
1722  P6COMMETHOD initialize( P6KMIPFLAGS flags, p6IKeystore* pCerts, P6KMIP_PREF preferences ) = 0;
1723 
1745  P6COMMETHOD setSSLOptions( const P6WCHAR* pCiphers, P6SECURESOCKETFLAGS fSecureFlags ) = 0;
1746 
1768  P6COMMETHOD open( const P6WCHAR* pHost, P6UINT32 port, P6KMIP_CREDENTIAL* pCredential ) = 0;
1769 
1777  P6COMMETHOD close() = 0;
1778 
1792 
1809  P6COMMETHOD extractExtension( P6UINT16 batchIndex, P6KMIP_RESPEXTENSION* pExtension ) = 0;
1810 
1828 
1845  P6COMMETHOD addAttributes( P6UINT32 attribCount, P6KMIP_ATTRIBPARAMS* pAttributes, p6IKMIPResult** pResult ) = 0;
1846 
1865  P6COMMETHOD activateObject( P6NCSTR uniqueId, P6KMIP_MSGEXTENSION* pExtension, p6IKMIPStr** ppUniqueId, P6KMIP_RESULT* pResult ) = 0;
1866 
1885  P6COMMETHOD archiveObject( P6NCSTR uniqueId, P6KMIP_MSGEXTENSION* pExtension, p6IKMIPStr** ppUniqueId, P6KMIP_RESULT* pResult ) = 0;
1886 
1906  P6COMMETHOD cancel( P6BCSTR asynchCorrelation, P6KMIP_MSGEXTENSION* pExtension, P6KMIP_RESULT* pResult, P6UINT32* pCancelResult ) = 0;
1907 
1924  P6COMMETHOD certifyObject( P6KMIP_CERTIFYPARAMS certifyParams, P6KMIP_NEWOBJECT* pCertify, P6KMIP_RESULT* pResult ) = 0;
1925 
1942  P6COMMETHOD createKeyObject( P6KMIP_KEYPARAMS keyParams, P6KMIP_NEWOBJECT* pCreate, P6KMIP_RESULT* pResult ) = 0;
1943 
1961  P6COMMETHOD createKeyPairObjects( P6KMIP_PAIRPARAMS pairParams, P6KMIP_NEWOBJECT* pPrivate, P6KMIP_NEWOBJECT* pPublic, P6KMIP_RESULT* pResult ) = 0;
1962 
1979  P6COMMETHOD createSplitKey( P6KMIP_SPLITPARAMS keyParams, P6KMIP_NEWOBJECT* pCreate, P6KMIP_RESULT* pResult ) = 0;
1980 
1997  P6COMMETHOD joinSplitKey( P6KMIP_JOINPARAMS keyParams, P6KMIP_NEWOBJECT* pCreate, P6KMIP_RESULT* pResult ) = 0;
1998 
2020  P6COMMETHOD deleteAttributeObject( P6NCSTR uniqueId, P6NCSTR attributeName, P6INT32* pIndex, P6KMIP_MSGEXTENSION* pExtension, P6KMIP_ATTRIBRESULT* pDelResult, P6KMIP_RESULT* pResult ) = 0;
2021 
2038  P6COMMETHOD deriveKeyObject( P6KMIP_DERIVEPARAMS keyParams, P6KMIP_NEWOBJECT* pDerived, P6KMIP_RESULT* pResult ) = 0;
2039 
2058  P6COMMETHOD destroyObject( P6NCSTR uniqueId, P6KMIP_MSGEXTENSION* pExtension, p6IKMIPStr** ppUniqueId, P6KMIP_RESULT* pResult ) = 0;
2059 
2078  P6COMMETHOD discoverVersions( P6BOOL bClientVersions, P6KMIP_MSGEXTENSION* pExtension, p6IKMIPVersions** ppVersions, P6KMIP_RESULT* pResult ) = 0;
2079 
2097 
2116 
2135  P6COMMETHOD getAttributeList( P6NCSTR uniqueId, P6KMIP_MSGEXTENSION* pExtension, P6KMIP_ATTRIBUTENAMES* pName, P6KMIP_RESULT* pResult ) = 0;
2136 
2153  P6COMMETHOD getObject( P6KMIP_GETPARAMS get, P6KMIP_MANAGED* pObject, P6KMIP_RESULT* pResult ) = 0;
2154 
2176 
2197  P6COMMETHOD getUsageAllocation( P6NCSTR uniqueId, P6UINT64 usageLimitsCount, P6KMIP_MSGEXTENSION* pExtension, p6IKMIPStr** ppUniqueId, P6KMIP_RESULT* pResult ) = 0;
2198 
2225  P6COMMETHOD checkAndGetUsageAllocation( P6KMIP_CHECKPARAMS check, P6NCSTR uniqueId, P6UINT64 usageLimitsCount, P6KMIP_MSGEXTENSION* pExtension, p6IKMIPStr** ppUniqueId, P6KMIP_CHECKRESULT* pCheck, P6KMIP_RESULT* pResult ) = 0;
2226 
2243  P6COMMETHOD locateObject( P6KMIP_LOCATEPARAMS locate, p6IKMIPStr** ppUniqueId, P6KMIP_RESULT* pResult ) = 0;
2244 
2267 
2288  P6COMMETHOD locateAndGetObject( P6KMIP_LOCATEPARAMS locate, P6KMIP_GETPARAMS get, P6KMIP_MANAGED* pObject, P6KMIP_RESULT* pLocateResult, P6KMIP_RESULT* pGetResult ) = 0;
2289 
2308 
2326 
2344  P6COMMETHOD modifyAttributes( P6UINT32 attribCount, P6KMIP_ATTRIBPARAMS* pAttributes, p6IKMIPResult** pResult ) = 0;
2345 
2365  P6COMMETHOD obtainLease( P6NCSTR uniqueId, P6KMIP_MSGEXTENSION* pExtension, P6KMIP_LEASE* pLease, P6KMIP_RESULT* pResult ) = 0;
2366 
2385  P6COMMETHOD poll( P6BCSTR asynchCorrelation, P6KMIP_MSGEXTENSION* pExtension, p6IKMIPResult** pResult ) = 0;
2386 
2406  P6COMMETHOD queryServer( P6UINT32 queryCount, P6UINT32* pQueryFunctions, P6KMIP_MSGEXTENSION* pExtension, P6KMIP_SERVERINFO* pCapabilities, P6KMIP_RESULT* pResult ) = 0;
2407 
2424  P6COMMETHOD reCertifyObject( P6KMIP_CERTIFYPARAMS certifyParams, P6KMIP_NEWOBJECT* pCertify, P6KMIP_RESULT* pResult ) = 0;
2425 
2444  P6COMMETHOD recoverObject( P6NCSTR uniqueId, P6KMIP_MSGEXTENSION* pExtension, p6IKMIPStr** ppUniqueId, P6KMIP_RESULT* pResult ) = 0;
2445 
2464  P6COMMETHOD registerCertificateObject( P6KMIP_CERTPARAMS certificate, P6KMIP_NEWOBJECT* pRegResult, P6KMIP_RESULT* pResult ) = 0;
2465 
2485 
2505 
2525 
2544  P6COMMETHOD registerOpaqueObject( P6KMIP_OPAQUEPARAMS objParams, P6KMIP_NEWOBJECT* pRegResult, P6KMIP_RESULT* pResult ) = 0;
2545 
2565 
2582  P6COMMETHOD reKeyObject( P6KMIP_KEYPARAMS keyParams, P6KMIP_NEWOBJECT* pReKey, P6KMIP_RESULT* pResult ) = 0;
2583 
2601  P6COMMETHOD reKeyPairObjects( P6KMIP_PAIRPARAMS pairParams, P6KMIP_NEWOBJECT* pPrivate, P6KMIP_NEWOBJECT* pPublic, P6KMIP_RESULT* pResult ) = 0;
2602 
2623  P6COMMETHOD revokeObject( P6NCSTR uniqueId, P6KMIP_REVOCATION reason, P6TIME* pOccurenceDate, P6KMIP_MSGEXTENSION* pExtension, p6IKMIPStr** ppUniqueId, P6KMIP_RESULT* pResult ) = 0;
2624 
2645  P6COMMETHOD revokeAndDestroyObject( P6NCSTR uniqueId, P6KMIP_REVOCATION reason, P6TIME* pOccurenceDate, P6KMIP_MSGEXTENSION* pExtension, p6IKMIPStr** ppUniqueId, P6KMIP_RESULT* pResult ) = 0;
2646 
2663  P6COMMETHOD encrypt( P6KMIP_ENCRYPTPARAMS encryptParams, P6KMIP_CRYPTOOUT* pCipherText, P6KMIP_RESULT* pResult ) = 0;
2664 
2681  P6COMMETHOD decrypt( P6KMIP_ENCRYPTPARAMS decryptParams, P6KMIP_CRYPTOOUT* pClearText, P6KMIP_RESULT* pResult ) = 0;
2682 
2699  P6COMMETHOD sign( P6KMIP_SIGNPARAMS signParams, P6KMIP_SIGNOUT* pCipherText, P6KMIP_RESULT* pResult ) = 0;
2700 
2717  P6COMMETHOD signatureVerify( P6KMIP_SIGNPARAMS signParams, P6KMIP_SIGNOUT* pClearText, P6KMIP_RESULT* pResult ) = 0;
2718 
2735  P6COMMETHOD MAC( P6KMIP_SIGNPARAMS macParams, P6KMIP_SIGNOUT* pCipherText, P6KMIP_RESULT* pResult ) = 0;
2736 
2753  P6COMMETHOD MACVerify( P6KMIP_SIGNPARAMS macParams, P6KMIP_SIGNOUT* pClearText, P6KMIP_RESULT* pResult ) = 0;
2754 
2772  P6COMMETHOD RNGRetrieve( P6INT32 dataLength, P6KMIP_MSGEXTENSION* pExtension, p6IKMIPBinary** pData, P6KMIP_RESULT* pResult ) = 0;
2773 
2791  P6COMMETHOD RNGSeed( P6BCSTR data, P6KMIP_MSGEXTENSION* pExtension, P6INT32* pDataLength, P6KMIP_RESULT* pResult ) = 0;
2792 
2811  P6COMMETHOD hash( P6KMIP_CRYPTOPARAMS cParams, P6BCSTR data, P6KMIP_MSGEXTENSION* pExtension, p6IKMIPBinary** pHash, P6KMIP_RESULT* pResult ) = 0;
2812 
2829  P6COMMETHOD validate( P6KMIP_VALIDATEPARAMS chain, P6UINT32* pValidity, P6KMIP_RESULT* pResult ) = 0;
2830 
2845 
2859  P6COMMETHOD serverSupportsObject( P6UINT32 objectType ) = 0;
2860 
2872  P6COMMETHOD getResponseDOM( p6IDOMXML** pResponse ) = 0;
2873 };
2874 
2875 // {EAC45E0F-0C17-481c-801D-613EBE000581}
2876 #define IF_p6IKMIPClient {0xeac45e0f,0xc17,0x481c,{0x80,0x1d,0x61,0x3e,0xbe,0x0,0x5,0x81}}
2877 
2878 // {05AF5ED8-C94F-436b-943F-F13744FD2DFD}
2879 #define COMP_p6KMIPClient {0x5af5ed8,0xc94f,0x436b,{0x94,0x3f,0xf1,0x37,0x44,0xfd,0x2d,0xfd}}
2880 
2881 
2882 #ifdef __cplusplus
2883 }
2884 #endif
2885 
2886 } // namespace
2887 
2888 
2889 #endif
2890 
P6KMIP_TEMPLATEATTRIBUTE attributes
Definition: p6kmipclient.h:726
P6KMIP_MANAGED getObject
This interface is an enumerator that returns a list of KMIP UTF-8 text string type values...
Definition: p6kmipclient.h:138
P6KMIP_ATTRIBPARAMS.
Definition: p6kmipclient.h:990
P6KMIP_KEYWRAPPING * pWrapInfo
Definition: p6kmipclient.h:827
virtual P6R::P6ERR serverSupportsOperation(P6UINT32 opCode)=0
Does the KMIP server support the specified operation? The caller can use this function instead of cal...
P6KMIP_DOMAINPARAMS.
Definition: p6kmipencoder.h:88
P6KMIP_DOMAINPARAMS dParams
Definition: p6kmipclient.h:339
P6KMIP_CRYPTOPARAMS encryptParams
P6KMIP_SIGNPARAMS.
P6KMIP_USAGELIMITS attribute.
virtual P6R::P6ERR reKeyObject(P6KMIP_KEYPARAMS keyParams, P6KMIP_NEWOBJECT *pReKey, P6KMIP_RESULT *pResult)=0
Ask the KMIP server to re-key an existing symmetric key managed object with a set of attributes speci...
P6LONGLONG P6INT64
Definition: p6types.h:50
P6KMIP_RESPEXTENSION.
const P6KMIPFLAGS P6KMIPFLG_TRACE_HTTPHEADERS
This interface allows the caller to find an existing key, certificate, or blob (e.g., password) by a namespace and name pair.
Definition: p6keystore.h:487
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:786
P6KMIP_TEMPLATEATTRIBUTE attributes
Definition: p6kmipclient.h:762
p6IKMIPAttribute * pAttributes
P6KMIP_NEWOBJECT joinSplitKey
P6KMIP_VERSION.
P6KMIP_BLOB.
Const Binary string.
Definition: p6types.h:168
p6IKMIPAttribute * pTemplate
P6KMIP_NEWOBJECT privateKeyInfo
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:689
P6KMIP_RAWCERT rawCertificate
Definition: p6kmipclient.h:920
virtual P6R::P6ERR count(P6UINT32 *pNumber)=0
Return to the caller the total number of items stored in the enumerator.
P6KMIP_ATTRIBRESULT deleteAttribute
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:709
virtual P6R::P6ERR reKeyPairObjects(P6KMIP_PAIRPARAMS pairParams, P6KMIP_NEWOBJECT *pPrivate, P6KMIP_NEWOBJECT *pPublic, P6KMIP_RESULT *pResult)=0
Ask the KMIP server to re-key an asymmetric key pair set of managed objects with a set of attributes ...
A convience structure to pass around a narrow string along with its length.
Definition: p6types.h:215
P6KMIP_SPLITSPEC splitdef
Definition: p6kmipclient.h:725
This interface is an enumerator that returns a list of KMIP P6KMIP_VERSION values.
Definition: p6kmipclient.h:37
P6KMIP_PAIRPARAMS.
Definition: p6kmipclient.h:685
virtual P6R::P6ERR registerTemplateObject(P6KMIP_TEMPLATEPARAMS tparams, P6KMIP_NEWOBJECT *pRegResult, P6KMIP_RESULT *pResult)=0
Register a template managed object with the connected KMIP server.
virtual P6R::P6ERR reset()=0
This method is used to re-start the enumerator at the beginning.
P6KMIP_KEYWRAPPINGDATA wrapData
virtual P6R::P6ERR destroyObject(P6NCSTR uniqueId, P6KMIP_MSGEXTENSION *pExtension, p6IKMIPStr **ppUniqueId, P6KMIP_RESULT *pResult)=0
Change the state on a managed object to deactivated and remove its content from a KMIP server...
P6KMIP_TEMPLATEATTRIBUTE attributes
Definition: p6kmipclient.h:898
This interface provides key metadata infrormation and key access.
Definition: p6cryptokey.h:787
p6IDHKeyExchange * pDHPubKey
Definition: p6kmipclient.h:877
P6KMIP_DERIVEPARAMS.
Definition: p6kmipclient.h:760
P6UINT32 privateKeyEncoding
p6IKMIPAttribute * pAttributes
unsigned int P6UINT32
Definition: p6types.h:40
P6R's interface of the DOM parser.
Definition: p6domxml.h:99
P6UINT32 P6KMIPFLAGS
P6KMIPFLAGS.
P6KMIP_OBJECT_X509NAME x509certificateSubject
Definition: p6kmipclient.h:343
P6KMIP_TEMPLATEATTRIBUTE * pAttributes
Definition: p6kmipclient.h:747
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:665
P6KMIP_ATTRIBUTENAMES.
P6KMIP_REVOCATION attribute.
P6KMIP_MSGEXTENSION.
P6KMIP_WRAPSECRETDATA.
virtual P6R::P6ERR checkAndGetUsageAllocation(P6KMIP_CHECKPARAMS check, P6NCSTR uniqueId, P6UINT64 usageLimitsCount, P6KMIP_MSGEXTENSION *pExtension, p6IKMIPStr **ppUniqueId, P6KMIP_CHECKRESULT *pCheck, P6KMIP_RESULT *pResult)=0
This function sends the combination of a check operation followed by a get usage allocation operation...
p6IKMIPBinary * pAsynchCorrelation
P6KMIP_ATTRIBRESULT getAttributes
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:727
P6KMIP_BLOB secretData
P6R's keystore component to manage keys, certificates, and blobs.
P6KMIP_TEMPLATEATTRIBUTE * pPrivateKeyAttributes
Definition: p6kmipclient.h:687
virtual P6R::P6ERR sign(P6KMIP_SIGNPARAMS signParams, P6KMIP_SIGNOUT *pCipherText, P6KMIP_RESULT *pResult)=0
Request the server to sign data passed in the signParams parameter with a selected key (a KMIP 1...
p6IKMIPStr * pUniqueId
P6KMIP_ATTRIBUTE.
p6IKMIPStr * pMessage
P6KMIP_WRAPKEYBLOCK wrappedPublicKey
p6IKMIPStr * pVendorId
Definition: p6kmipclient.h:628
P6KMIP_SIGNIN.
virtual P6R::P6ERR modifyAttributeObject(P6KMIP_ATTRIBPARAMS attribute, P6KMIP_ATTRIBRESULT *pModResult, P6KMIP_RESULT *pResult)=0
Change the value of an existing attribute of a managed object, selected by the uniqueIdentifier param...
P6KMIP_SPLITPARAMS.
Definition: p6kmipclient.h:724
virtual P6R::P6ERR cancel(P6BCSTR asynchCorrelation, P6KMIP_MSGEXTENSION *pExtension, P6KMIP_RESULT *pResult, P6UINT32 *pCancelResult)=0
Cancel a pending KMIP server request.
P6KMIP_NEWOBJECT reKeyObject
P6KMIP_CRYPTOIN.
p6IKMIPStr * pUniqueId
const P6KMIPFLAGS P6KMIPFLG_TRACE_BASIC
P6KMIP_USAGELIMITS usageLimits
Definition: p6kmipclient.h:353
P6KMIP_NEWKEYPAIR.
p6ICryptoKey * pKey
bool P6BOOL
Boolean type.
Definition: p6types.h:101
P6KMIP_ENCRYPTPARAMS.
virtual P6R::P6ERR getUsageAllocation(P6NCSTR uniqueId, P6UINT64 usageLimitsCount, P6KMIP_MSGEXTENSION *pExtension, p6IKMIPStr **ppUniqueId, P6KMIP_RESULT *pResult)=0
Request from the KMIP server a usage allocation for a managed object that can provide cryptographic p...
virtual P6R::P6ERR deleteAttributeObject(P6NCSTR uniqueId, P6NCSTR attributeName, P6INT32 *pIndex, P6KMIP_MSGEXTENSION *pExtension, P6KMIP_ATTRIBRESULT *pDelResult, P6KMIP_RESULT *pResult)=0
Delete an existing attribute of a managed object, selected by the uniqueIdentifier parameter or by th...
virtual P6R::P6ERR registerSecretDataObject(P6KMIP_SECRETPARAMS secret, P6KMIP_NEWOBJECT *pRegResult, P6KMIP_RESULT *pResult)=0
Register a secret data managed object with the connected KMIP server.
P6KMIP_TEMPLATEATTRIBUTE properties
Definition: p6kmipclient.h:939
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:846
p6IKMIPBinary * pAlternateNames
Definition: p6kmipclient.h:261
P6KMIP_RAWKEY.
virtual P6R::P6ERR decrypt(P6KMIP_ENCRYPTPARAMS decryptParams, P6KMIP_CRYPTOOUT *pClearText, P6KMIP_RESULT *pResult)=0
Request the server to decrypt data passed in the decryptParams parameter with a selected key (a KMIP ...
P6KMIP_TEMPLATEATTRIBUTE * pAttributes
Definition: p6kmipclient.h:708
P6KMIP_PREF.
P6KMIP_NAME attribute.
Definition: p6kmipencoder.h:48
virtual P6R::P6ERR modifyAttributes(P6UINT32 attribCount, P6KMIP_ATTRIBPARAMS *pAttributes, p6IKMIPResult **pResult)=0
Modify existing attributes to a managed object(s), selected by the uniqueId parameter or by the ID pl...
P6KMIP_NEWOBJECT createObject
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:810
P6KMIP_OBJECT_CERTNAME certificateSubject
Definition: p6kmipclient.h:346
virtual P6R::P6ERR createSplitKey(P6KMIP_SPLITPARAMS keyParams, P6KMIP_NEWOBJECT *pCreate, P6KMIP_RESULT *pResult)=0
Ask the KMIP server to create a split key and register each split as a separate managed object (a KMI...
P6KMIP_NEWKEYPAIR keyPairObjects
virtual P6R::P6ERR next(P6KMIP_EXTENSION *pExtension)=0
Iterate though one or more returned server supported extension definitions.
P6KMIP_DRIVEKEY.
P6KMIP_NEWOBJECT certifyObject
P6KMIP_DIGEST attribute.
P6KMIP_TEMPLATEATTRIBUTE attributes
Definition: p6kmipclient.h:868
p6IKMIPStr * pNamespaces
Definition: p6kmipclient.h:630
P6KMIP_KEYPARAMS.
Definition: p6kmipclient.h:707
virtual P6R::P6ERR encrypt(P6KMIP_ENCRYPTPARAMS encryptParams, P6KMIP_CRYPTOOUT *pCipherText, P6KMIP_RESULT *pResult)=0
Request the server to encrypt data passed in the encryptParams parameter with a selected key (a KMIP ...
P6UINT32 validityIndicator
P6UINT32 maxTTLVSize
P6KMIP_BLOB opaqueObject
P6UINT32 * pKeyCompression
Definition: p6kmipclient.h:959
virtual P6R::P6ERR serverSupportsObject(P6UINT32 objectType)=0
Does the KMIP server support the specified managed object (e.g., a PGP key)? The caller can use this ...
P6KMIP_CRYPTOPARAMS cParams
Definition: p6kmipclient.h:338
virtual P6R::P6ERR createKeyPairObjects(P6KMIP_PAIRPARAMS pairParams, P6KMIP_NEWOBJECT *pPrivate, P6KMIP_NEWOBJECT *pPublic, P6KMIP_RESULT *pResult)=0
Ask the KMIP server to create an asymmetric key pair set of managed objects with a set of attributes ...
P6KMIP_SIGNOUT.
p6IKMIPBinary * pServerInfo
Definition: p6kmipclient.h:629
virtual P6R::P6ERR count(P6UINT32 *pNumber)=0
Return to the caller the total number of items stored in the enumerator.
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:899
P6KMIP_PGPBLOB.
virtual P6R::P6ERR queryServer(P6UINT32 queryCount, P6UINT32 *pQueryFunctions, P6KMIP_MSGEXTENSION *pExtension, P6KMIP_SERVERINFO *pCapabilities, P6KMIP_RESULT *pResult)=0
Query the KMIP server to determine it capabilities If an error is returned by the server any Result M...
P6UINT32 symmetricKeyEncoding
const P6KMIPFLAGS P6KMIPFLG_TRACE_FORMATJSON
P6KMIP_SPLITKEY.
virtual P6R::P6ERR locateAndCheckObject(P6KMIP_LOCATEPARAMS locate, P6KMIP_CHECKPARAMS check, p6IKMIPStr **ppUniqueId, P6KMIP_RESULT *pResult, P6KMIP_CHECKRESULT *pCheck)=0
This function sends the combination of a locate operation followed by a check operation to a KMIP ser...
p6IKMIPBinary * pPrimeFieldSize
P6KMIP_CERTID attribute.
P6UINT16 asynchronous
virtual P6R::P6ERR count(P6UINT32 *pNumber)=0
Return to the caller the total number of items stored in the enumerator.
P6R's interface of the DOM parser.
P6KMIP_TEMPLATEATTRIBUTE attributes
Definition: p6kmipclient.h:828
virtual P6R::P6ERR reset()=0
This method is used to re-start the enumerator at the beginning.
virtual P6R::P6ERR discoverVersions(P6BOOL bClientVersions, P6KMIP_MSGEXTENSION *pExtension, p6IKMIPVersions **ppVersions, P6KMIP_RESULT *pResult)=0
Query the KMIP server as to what protocol versions it supports.
virtual P6R::P6ERR locateAndGetAttributes(P6KMIP_LOCATEPARAMS locate, P6KMIP_GETATTRIBPARAMS attrib, p6IKMIPResult **pResult)=0
This function sends the combination of a locate operation folloed by a get attributes operation to a ...
virtual P6R::P6ERR getAttributesAndGet(P6KMIP_GETATTRIBPARAMS attrib, P6KMIP_GETPARAMS get, p6IKMIPResult **pResult)=0
This function sends the combination of a get attributes operation followed by a get operation to a KM...
P6KMIP_CRYPTOPARAMS attribute.
Definition: p6kmipencoder.h:68
P6KMIP_BATCHRESULT.
P6KMIP_MSGEXTENSION * pExtension
P6KMIP_OBJECT_CERTNAME certificateIssuer
Definition: p6kmipclient.h:347
p6IKMIPBinary * pBlob
virtual P6R::P6ERR recoverObject(P6NCSTR uniqueId, P6KMIP_MSGEXTENSION *pExtension, p6IKMIPStr **ppUniqueId, P6KMIP_RESULT *pResult)=0
Request the KMIP server to make available a managed object from an archive.
P6KMIP_OBJECT_X509NAME attribute.
Definition: p6kmipclient.h:259
virtual P6R::P6ERR count(P6UINT32 *pNumber)=0
Return to the caller the total number of items stored in the enumerator.
P6KMIP_NEWOBJECT.
This interface is an enumerator that returns a list of KMIP binary array values.
Definition: p6kmipclient.h:191
virtual P6R::P6ERR next(P6KMIP_BATCHRESULT *pItem)=0
Iterate though one or more batch results of a previous request.
P6KMIP_SPLITKEY splitKey
Definition: p6kmipclient.h:875
P6KMIP_KEYWRAPPINGDATA wrapData
P6KMIP_SIGNIN cipherOp
P6KMIP_KEYWRAPPING.
P6KMIP_APPLICATION applicationInfo
Definition: p6kmipclient.h:368
virtual P6R::P6ERR getAttributes(P6KMIP_GETATTRIBPARAMS attrib, P6KMIP_ATTRIBRESULT *pGetResult, P6KMIP_RESULT *pResult)=0
Obtain one or more attributes associated with a managed object.
P6KMIP_RESULT.
P6UINT32 initialBufCount
virtual P6R::P6ERR locateObject(P6KMIP_LOCATEPARAMS locate, p6IKMIPStr **ppUniqueId, P6KMIP_RESULT *pResult)=0
Locate zero or more managed objects that match the given attributes list.
P6KMIP_VALIDATEPARAMS.
Definition: p6kmipclient.h:804
p6IKMIPBinary * pData
const P6KMIPFLAGS P6KMIPFLG_TRACE_FORMATKMIPXML
This interface is an enumerator that returns a list of KMIP attribute values.
Definition: p6kmipclient.h:386
unsigned short int P6UINT16
Definition: p6types.h:34
P6KMIP_WRAPSECRETDATA wrappedSecretData
P6KMIP_CRYPTOOUT decrypt
p6IKMIPEnum * pObjects
Definition: p6kmipclient.h:627
const P6KMIPFLAGS P6KMIPFLG_TRACE_FORMATBINARY
P6UINT32 publicKeyEncoding
P6KMIP_CREDENTIAL.
P6KMIP_ATTRIBUTE * pItemList
Definition: p6kmipclient.h:941
virtual P6R::P6ERR next(P6NCSTR *pUTF8String)=0
Iterate though one or more returned eumerations from the server.
wchar_t P6WCHAR
Wide character type see p6i18n.h.
Definition: p6types.h:76
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:763
P6KMIP_ATTRIBUTE attribute
Definition: p6kmipclient.h:992
P6KMIP_WRAPPINGSPEC * pSpec
Definition: p6kmipclient.h:960
virtual P6R::P6ERR reset()=0
This method is used to re-start the enumerator at the beginning.
P6KMIP_DERIVEKEY objects
Definition: p6kmipclient.h:761
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:916
P6KMIP_TEMPLATEATTRIBUTE attributes
Definition: p6kmipclient.h:845
P6KMIP_NEWKEYPAIR reKeyPairObjects
P6KMIP_SECRETPARAMS.
Definition: p6kmipclient.h:824
P6KMIP_SIGNOUT MACVerify
P6KMIP_MSGEXTENSION * pExtension
P6KMIP_LINK attribute.
int P6INT32
Definition: p6types.h:41
const P6WCHAR * pSubdirectory
P6KMIP_RAWKEYBLOCK.
p6IKMIPAttribute * pAttribute
The base interface all [p6]COM components must derive from and implement.
Definition: p6comdef.h:96
P6R::P6UINT32 P6SECURESOCKETFLAGS
Definition: p6net.h:538
P6KMIP_CERTIFYPARAMS.
Definition: p6kmipclient.h:781
virtual P6R::P6ERR archiveObject(P6NCSTR uniqueId, P6KMIP_MSGEXTENSION *pExtension, p6IKMIPStr **ppUniqueId, P6KMIP_RESULT *pResult)=0
Notify the KMIP server that the client believes that the managed cryptographic object can be archived...
virtual P6R::P6ERR RNGRetrieve(P6INT32 dataLength, P6KMIP_MSGEXTENSION *pExtension, p6IKMIPBinary **pData, P6KMIP_RESULT *pResult)=0
Request the server to return a random number of a specific length (a KMIP 1.2 function).
P6KMIP_X509CERTID attribute.
Definition: p6kmipencoder.h:98
P6KMIP_NEWOBJECT deriveKeyObject
P6KMIP_CERTPARAMS.
Definition: p6kmipclient.h:914
This interface is an enumerator that returns a list of results for each batch item in a request...
virtual P6R::P6ERR getAttributeList(P6NCSTR uniqueId, P6KMIP_MSGEXTENSION *pExtension, P6KMIP_ATTRIBUTENAMES *pName, P6KMIP_RESULT *pResult)=0
Obtain the list of attributes that are associated with a managed object.
virtual P6R::P6ERR getResponseDOM(p6IDOMXML **pResponse)=0
Extract the DOM object that contains the previous KMIP server response message.
p6IKMIPBinary * pRNGRetrieve
virtual P6R::P6ERR registerCertificateObject(P6KMIP_CERTPARAMS certificate, P6KMIP_NEWOBJECT *pRegResult, P6KMIP_RESULT *pResult)=0
Register any type of certificate managed object with the connected KMIP server.
P6KMIP_KEYBLOCK privateKey
P6KMIP_KEYBLOCK symmetricKey
This encoder function defined in this file presents the lower level interface to the generation of KM...
P6KMIP_CHECKRESULT.
virtual P6R::P6ERR MAC(P6KMIP_SIGNPARAMS macParams, P6KMIP_SIGNOUT *pCipherText, P6KMIP_RESULT *pResult)=0
Request the server to calculate a MAC over data passed in the macParams parameter with a selected key...
virtual P6R::P6ERR getValue(P6KMIP_OBJECT_ATTRIBUTE *pValue)=0
Return the value of the attribute type pointed to by the enumerator's cursor.
P6KMIP_RAWCERT.
Definition: p6kmipclient.h:642
virtual P6R::P6ERR addAttributes(P6UINT32 attribCount, P6KMIP_ATTRIBPARAMS *pAttributes, p6IKMIPResult **pResult)=0
Add the attribute to a managed object(s), selected by the uniqueId parameter or by the ID placeholder...
P6KMIP_X509CERTID x509certificateIdentifier
Definition: p6kmipclient.h:342
Binary string.
Definition: p6types.h:154
virtual P6R::P6ERR locateAndGetObject(P6KMIP_LOCATEPARAMS locate, P6KMIP_GETPARAMS get, P6KMIP_MANAGED *pObject, P6KMIP_RESULT *pLocateResult, P6KMIP_RESULT *pGetResult)=0
This function sends the combination of a locate operation followed by a get operation to a KMIP serve...
P6UINT32 connectTimeout
P6KMIP_KEYBLOCK publicKey
virtual P6R::P6ERR count(P6UINT32 *pNumber)=0
Return to the caller the total number of items stored in the enumerator.
P6KMIP_RAWKEYBLOCK rawPublicKey
virtual P6R::P6ERR extractExtension(P6UINT16 batchIndex, P6KMIP_RESPEXTENSION *pExtension)=0
Every KMIP message batch item can have a message extension returned from the server.
virtual P6R::P6ERR obtainLease(P6NCSTR uniqueId, P6KMIP_MSGEXTENSION *pExtension, P6KMIP_LEASE *pLease, P6KMIP_RESULT *pResult)=0
Request a lease on a managed object.
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:869
virtual P6R::P6ERR RNGSeed(P6BCSTR data, P6KMIP_MSGEXTENSION *pExtension, P6INT32 *pDataLength, P6KMIP_RESULT *pResult)=0
Request the server to seed a random number generator with the binary data in the pData parameter (a K...
virtual P6R::P6ERR next(P6KMIP_APPLICATION *pNamespace)=0
Iterate though one or more returned server supported application namespaces.
virtual P6R::P6ERR next(P6UINT32 *pType)=0
Move the cursor to the next attribute saved inside of the enumerator.
const P6KMIPFLAGS P6KMIPFLG_NOFLAGS
const P6CHAR * pVersion
p6IKMIPStr * pUniqueId
P6UINT32 maxBufferSize
This interface is an enumerator that returns a list of KMIP Extension Information values (i...
Definition: p6kmipclient.h:564
P6ULONGLONG P6UINT64
Definition: p6types.h:49
virtual P6R::P6ERR reset()=0
This method is used to re-start the enumerator at the beginning.
P6KMIP_GETPARAMS.
Definition: p6kmipclient.h:956
virtual P6R::P6ERR count(P6UINT32 *pNumber)=0
Return to the caller the total number of items stored in the enumerator.
virtual P6R::P6ERR registerMDOObject(P6KMIP_REGMDOPARAMS key, P6KMIP_NEWOBJECT *pRegResult, P6KMIP_RESULT *pResult)=0
Register a metadata-only object (MDO) with the connected KMIP server.
virtual P6R::P6ERR createKeyObject(P6KMIP_KEYPARAMS keyParams, P6KMIP_NEWOBJECT *pCreate, P6KMIP_RESULT *pResult)=0
Ask the KMIP server to create a symmetric key managed object with a set of attributes specified by th...
P6KMIP_NEWOBJECT registerObject
virtual P6R::P6ERR reset()=0
This method is used to re-start the enumerator at the beginning.
P6KMIP_TEMPLATEATTRIBUTE * pCommonAttributes
Definition: p6kmipclient.h:686
virtual P6R::P6ERR open(const P6WCHAR *pHost, P6UINT32 port, P6KMIP_CREDENTIAL *pCredential)=0
Open a TCP connection to the KMIP server at Host:port or IPAddr:port.
virtual P6R::P6ERR revokeObject(P6NCSTR uniqueId, P6KMIP_REVOCATION reason, P6TIME *pOccurenceDate, P6KMIP_MSGEXTENSION *pExtension, p6IKMIPStr **ppUniqueId, P6KMIP_RESULT *pResult)=0
Change the state on a managed cryptographic object to either compromised or deactivated.
virtual P6R::P6ERR next(P6KMIP_NAME *pName)=0
Iterate though one or more returned template names.
P6KMIP_BLOB rawObject
virtual P6R::P6ERR setAsynchronousIndicator(P6BOOL bAsynch)=0
This Boolean flag indicates whether the client is able to accept an asynchronous response.
p6IKMIPBinary * pData
This component provides the basics of the key exchange calculates used in the Diffe-Hellman key excha...
P6KMIP_OPAQUEPARAMS.
Definition: p6kmipclient.h:842
P6KMIP_KEYWRAPPINGDATA wrapData
P6UINT32 receiveTimeout
virtual P6R::P6ERR signatureVerify(P6KMIP_SIGNPARAMS signParams, P6KMIP_SIGNOUT *pClearText, P6KMIP_RESULT *pResult)=0
Request the server to verify a signature over data passed in the signParams parameter with a selected...
virtual P6R::P6ERR getObject(P6KMIP_GETPARAMS get, P6KMIP_MANAGED *pObject, P6KMIP_RESULT *pResult)=0
Obtain the managed object associated with a unique identifier.
This interface allows the caller to access parts of an X509 V3 certificate for use in protocols and i...
Definition: p6cert.h:180
virtual P6R::P6ERR setSSLOptions(const P6WCHAR *pCiphers, P6SECURESOCKETFLAGS fSecureFlags)=0
This method allows the caller to over ride the default SSL settings.
P6KMIP_CRYTOOUT.
p6IKMIPStr * pUsageAllocation
const P6KMIPFLAGS P6KMIPFLG_DEBUG_MODE
P6KMIP_TEMPLATEATTRIBUTE * pPublicKeyAttributes
Definition: p6kmipclient.h:688
virtual P6R::P6ERR count(P6UINT32 *pNumber)=0
Return to the caller the total number of items stored in the enumerator.
P6KMIP_ATTRIBUTENAMES getAttributeList
virtual P6R::P6ERR reset()=0
This method is used to re-start the enumerator at the beginning.
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:748
virtual P6R::P6ERR close()=0
Close an existing TCP connection to the KMIP server at Host:port.
virtual P6R::P6ERR reset()=0
This method is used to re-start the enumerator at the beginning.
p6IKMIPAttribute * pAttributes
P6KMIP_RAWKEYBLOCK rawPrivateKey
p6IKMIPName * pNames
P6KMIP_XATTRIB attribute.
p6IKMIPBinary * pKeyValue
Network interfaces and definitions.
p6IKMIPBinary * pHash
This interface is an enumerator that returns a list of KMIP Template Names (i.e., Section 2...
Definition: p6kmipclient.h:510
virtual P6R::P6ERR checkAndGet(P6KMIP_CHECKPARAMS check, P6KMIP_GETPARAMS get, P6KMIP_MANAGED *pObject, P6KMIP_CHECKRESULT *pCheck, P6KMIP_RESULT *pResult)=0
This function sends the combination of a check operation followed by a get operation to a KMIP server...
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:829
P6KMIP_MSGEXTENSION * pExtension
P6UINT32 compatibility1
#define P6COMMETHOD
Definition: p6types.h:863
P6KMIP_OBJECT_SPLITKEY wrappedSplitKey
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:978
virtual P6R::P6ERR certifyObject(P6KMIP_CERTIFYPARAMS certifyParams, P6KMIP_NEWOBJECT *pCertify, P6KMIP_RESULT *pResult)=0
Ask the KMIP server to create a certificate object for an existing public key.
P6KMIP_REGKEYPARAMS.
Definition: p6kmipclient.h:867
p6IDHKeyExchange * pDHPrivKey
Definition: p6kmipclient.h:876
P6KMIP_WRAPKEYBLOCK wrappedSymmetricKey
virtual P6R::P6ERR registerOpaqueObject(P6KMIP_OPAQUEPARAMS objParams, P6KMIP_NEWOBJECT *pRegResult, P6KMIP_RESULT *pResult)=0
Register an opaque managed object with the connected KMIP server.
P6KMIP_WRAPKEYBLOCK.
P6KMIP_NEWOBJECT reCertifyObject
P6KMIP_OBJECT_SPLITKEY splitKey
virtual P6R::P6ERR reset()=0
This method is used to re-start the enumerator at the beginning.
P6KMIP_KEYBLOCK.
virtual P6R::P6ERR count(P6UINT32 *pNumber)=0
Return to the caller the total number of items stored in the enumerator.
P6KMIP_TEMPLATEATTRIBUTE attributes
Definition: p6kmipclient.h:915
P6KMIP_NEWOBJECT publicKeyInfo
P6KMIP_OBJECT_X509NAME x509certificateIssuer
Definition: p6kmipclient.h:344
const P6KMIPFLAGS P6KMIPFLG_TRACE_FORMATXML
p6IKMIPBinary * pIV
virtual P6R::P6ERR hash(P6KMIP_CRYPTOPARAMS cParams, P6BCSTR data, P6KMIP_MSGEXTENSION *pExtension, p6IKMIPBinary **pHash, P6KMIP_RESULT *pResult)=0
Request the server to seed a random number generator with the binary data in the pData parameter (a K...
const P6KMIPFLAGS P6KMIPFLG_TRACE_FORMATJSONML
P6KMIP_ATTRIBRESULT modifyAttribute
P6INT64 P6TIME
The wallclock time represented as the number of microseconds since midnight January 1 1970 UTC...
Definition: p6types.h:228
P6KMIP_PGPKEY.
P6KMIP_RAWKEYBLOCK rawSymmetricKey
This interface is an enumerator that returns a list of KMIP Application Specific Information values (...
Definition: p6kmipclient.h:455
virtual P6R::P6ERR associatedValue(P6UINT64 *pNumber)=0
Return to the caller a value that is associated with the value LAST returned by next().
P6KMIP_OBJECT_CERTNAME attribute.
Definition: p6kmipclient.h:271
P6KMIP_CHECKPARAMS.
P6KMIP_LEASE.
p6IDHKeyExchange * pDHKey
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:942
P6KMIP_TEMPLATEATTRIBUTE.
P6KMIP_CRYPTOOUT encrypt
const P6KMIPFLAGS P6KMIPFLG_TRACE_VERBOSE
P6KMIP_REGMDOPARAMS.
Definition: p6kmipclient.h:894
P6KMIP_TEMPLATEATTRIBUTE * pAttributes
Definition: p6kmipclient.h:785
Note that the server can return a KMIP_RESULT_PENDING status in the pResult parameter.
P6KMIP_ATTRIBUTE * pAttributeList
Definition: p6kmipclient.h:664
p6IKMIPAttribute * pAttributes
const P6KMIPFLAGS P6KMIPFLG_TRACE_OFF
P6KMIP_REVOCATION revocation
Definition: p6kmipclient.h:363
P6KMIP_ATTRIBRESULT.
P6KMIP_KEYWRAPPINGDATA.
P6KMIP_JOINPARAMS.
Definition: p6kmipclient.h:742
P6KMIP_APPLICATION attribute.
virtual P6R::P6ERR poll(P6BCSTR asynchCorrelation, P6KMIP_MSGEXTENSION *pExtension, p6IKMIPResult **pResult)=0
Poll the KMIP server to determine the result of a previous request made to the KMIP server...
p6IKMIPAttribute * pAttributes
P6KMIP_PGPBLOB pgpKey
P6KMIP_SIGNOUT signatureVerify
This interface is an enumerator that returns a list of KMIP enumeration type values.
Definition: p6kmipclient.h:85
p6IKMIPStr * pUniqueId
const P6KMIPFLAGS P6KMIPFLG_TRACE_MSGS
p6IKMIPExtInfo * pExtensions
Definition: p6kmipclient.h:631
P6KMIP_SPLITSPEC.
P6KMIP_CRYPTOPARAMS signParams
P6KMIP_OBJECT_SPLITKEY.
P6KMIP_TEMPLATEPARAMS.
Definition: p6kmipclient.h:938
virtual P6R::P6ERR registerKeyObject(P6KMIP_REGKEYPARAMS key, P6KMIP_NEWOBJECT *pRegResult, P6KMIP_RESULT *pResult)=0
Register any type of key managed object (e.g., wrapped, unwrapped, tranparent, symmetric.
virtual P6R::P6ERR deriveKeyObject(P6KMIP_DERIVEPARAMS keyParams, P6KMIP_NEWOBJECT *pDerived, P6KMIP_RESULT *pResult)=0
Derive a symmetric key or secret data object from existing managed objects already known by a KMIP se...
P6KMIP_NEWOBJECT createSplitKeyObject
P6KMIP_LOCATEPARAMS.
Definition: p6kmipclient.h:659
virtual P6R::P6ERR MACVerify(P6KMIP_SIGNPARAMS macParams, P6KMIP_SIGNOUT *pClearText, P6KMIP_RESULT *pResult)=0
Request the server to verify a MAC over data passed in the macParams parameter with a selected key (a...
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:961
P6KMIP_OBJECT_ATTRIBUTE.
Definition: p6kmipclient.h:329
P6KMIP_CRYPTOIN cipherOp
P6KMIP_SERVERINFO.
Definition: p6kmipclient.h:625
virtual P6R::P6ERR next(P6BSTR *pBuffer)=0
Iterate though one or more returned binary buffers from the server.
virtual P6R::P6ERR reCertifyObject(P6KMIP_CERTIFYPARAMS certifyParams, P6KMIP_NEWOBJECT *pCertify, P6KMIP_RESULT *pResult)=0
Ask the KMIP server to renew an existing certificate object for an existing asymmetrick key pair...
P6KMIP_CHECKRESULT checkResult
virtual P6R::P6ERR validate(P6KMIP_VALIDATEPARAMS chain, P6UINT32 *pValidity, P6KMIP_RESULT *pResult)=0
Validate a single certificate chain.
P6KMIP_CERTID certificateIdentifier
Definition: p6kmipclient.h:345
virtual P6R::P6ERR addAttributeObject(P6KMIP_ATTRIBPARAMS attribute, P6KMIP_ATTRIBRESULT *pAddResult, P6KMIP_RESULT *pResult)=0
Add the attribute to a managed object, selected by the uniqueIdentifier parameter or by the ID placeh...
P6KMIP_WRAPPINGSPEC.
virtual P6R::P6ERR count(P6UINT32 *pNumber)=0
Return to the caller the total number of items stored in the enumerator.
P6KMIP_MANAGED.
virtual P6R::P6ERR joinSplitKey(P6KMIP_JOINPARAMS keyParams, P6KMIP_NEWOBJECT *pCreate, P6KMIP_RESULT *pResult)=0
Ask the KMIP server to create a new managed object from several parts of a split key (a KMIP 1...
P6UINT32 sendTimeout
p6IKMIPStr * pUniqueId
P6KMIP_GETATTRIBPARAMS.
Definition: p6kmipclient.h:974
P6UINT32 * pSecretDataType
Definition: p6kmipclient.h:746
P6KMIP_WRAPPEDKEY.
virtual P6R::P6ERR initialize(P6KMIPFLAGS flags, p6IKeystore *pCerts, P6KMIP_PREF preferences)=0
Sets up the component to run properly.
P6KMIP_ATTRIBRESULT addAttribute
P6KMIP_WRAPKEYBLOCK wrappedPrivateKey
P6KMIP_WRAPPEDKEY wrapKey
Definition: p6kmipclient.h:874
p6IKMIPEnum * pOperations
Definition: p6kmipclient.h:626
virtual P6R::P6ERR activateObject(P6NCSTR uniqueId, P6KMIP_MSGEXTENSION *pExtension, p6IKMIPStr **ppUniqueId, P6KMIP_RESULT *pResult)=0
Change the state on a managed cryptographic object from a Pre-active to the active state...
p6IKMIPBinary * pBlob
virtual P6R::P6ERR next(P6KMIP_VERSION *pSupported)=0
Iterate though one or more returned server supported versopns.
virtual P6R::P6ERR reset()=0
This method is used to re-start the enumerator at the beginning.
virtual P6R::P6ERR revokeAndDestroyObject(P6NCSTR uniqueId, P6KMIP_REVOCATION reason, P6TIME *pOccurenceDate, P6KMIP_MSGEXTENSION *pExtension, p6IKMIPStr **ppUniqueId, P6KMIP_RESULT *pResult)=0
First revoke and then destroy the managed object identified by the uniqueId parameter.
char P6CHAR
Narrow character type.
Definition: p6types.h:71
P6KMIP_EXTENSION.
p6IKMIPBinary * pBlob
P6KMIP_MSGEXTENSION * pExtension
Definition: p6kmipclient.h:993
virtual P6R::P6ERR next(P6NCSTR *pUTF8String)=0
Iterate though one or more returned strings from the server.