ctkclient.h
1 #ifndef _CTK_CLIENT_H_ 2 #define _CTK_CLIENT_H_ 3 4 #include <CoreFoundation/CoreFoundation.h> 5 6 #include <ACMAclDefs.h> 7 #include <ACMDefs.h> 8 9 CF_IMPLICIT_BRIDGING_ENABLED 10 CF_EXTERN_C_BEGIN 11 12 #define kTKErrorDomain "TKErrorDomain" 13 #define kTKErrorCodeNotImplemented -1 14 #define kTKErrorCodeCommunicationError -2 15 #define kTKErrorCodeCorruptedData -3 16 #define kTKErrorCodeCanceledByUser -4 17 #define kTKErrorCodeAuthenticationFailed -5 18 #define kTKErrorCodeObjectNotFound -6 19 #define kTKErrorCodeTokenNotFound -7 20 #define kTKErrorCodeBadParameter -8 21 #define kTKErrorCodeAuthenticationNeeded -9 22 #define kTKErrorAuthenticationFailed TKErrorCodeAuthenticationFailed 23 #define kTKErrorObjectNotFound TKErrorCodeObjectNotFound 24 #define kTKErrorTokenNotFound TKErrorCodeTokenNotFound 25 26 #define kTKTokenControlAttribAttestingKey "TKTokenControlAttribAttesting" 27 #define kTKTokenControlAttribKeyToAttest "TKTokenControlAttribKeyToAttest" 28 #define kTKTokenControlAttribAttestationData "TKTokenControlAttribAttestationData" 29 #define kTKTokenControlAttribLifetimeControlKey "TKTokenControlAttribLifetimeControlKey" 30 #define kTKTokenControlAttribLifetimeType "TKTokenControlAttribLifetimeType" 31 32 #define kTKTokenCreateAttributeAuxParams "TKTokenCreateAttributeAuxParams" 33 #define kTKTokenCreateAttributeTestMode "kTKTokenCreateAttributeTestMode" 34 #define TKTokenKeyUsageAny 1 35 36 typedef const struct CF_BRIDGED_TYPE(id) __TKToken * TKTokenRef; 37 38 CF_EXPORT 39 CFDataRef TKTokenCopyObjectAccessControl(TKTokenRef token, CFDataRef object_id, CFErrorRef *error); 40 41 CF_EXPORT 42 CFDataRef TKTokenCopyPublicKeyData(TKTokenRef token_id, CFDataRef objectID, CFErrorRef *error); 43 44 CF_EXPORT 45 int TKTokenDeleteObject(TKTokenRef token, CFDataRef object_id, CFErrorRef *error); 46 47 CF_EXPORT 48 CFDataRef TKTokenCopySignature(TKTokenRef token, CFDataRef objectID, uint32_t padding, CFDataRef digest, CFErrorRef *error); 49 50 CF_EXPORT 51 TKTokenRef TKTokenCreate(CFDictionaryRef token_attrs, CFErrorRef *error); 52 53 CF_EXPORT 54 CFDataRef TKTokenCreateOrUpdateObject(TKTokenRef token, CFDataRef objectID, CFDictionaryRef token_attrs, CFErrorRef *error); 55 56 CF_EXPORT 57 CFDataRef TKTokenCopyObjectData(TKTokenRef token, CFDataRef object_id, CFErrorRef *error); 58 59 CF_EXPORT 60 CFDataRef TKTokenCopyObjectCreationAccessControl(TKTokenRef token, CFTypeRef object_or_attrs, CFErrorRef *error); 61 62 CF_EXPORT 63 CFDataRef TKTokenCopyOperationResult(TKTokenRef token, CFDataRef objectID, int operation, CFArrayRef algorithms, int other, CFTypeRef in1, CFTypeRef in2, CFErrorRef *error); 64 65 CF_EXPORT 66 CFDictionaryRef TKTokenControl(TKTokenRef token, CFDictionaryRef attributes, CFErrorRef *error); 67 68 CF_EXPORT 69 CFArrayRef TKTokenCopyIdentities(TKTokenRef token, int usage, CFErrorRef *error); 70 71 CF_EXPORT 72 void TKBindUserAm(CFStringRef cf_user, CFDataRef pub_key_hash, void *unknown); 73 74 CF_EXTERN_C_END 75 CF_IMPLICIT_BRIDGING_DISABLED 76 77 #endif