ctkclient.c
1 #include <ctkclient.h> 2 3 static int verbose = 0; 4 5 __attribute__((constructor)) 6 static void initme(void) { 7 verbose = getenv("STUB_VERBOSE") != NULL; 8 } 9 10 CFDataRef TKTokenCopyObjectAccessControl(TKTokenRef token, CFDataRef object_id, CFErrorRef *error) { 11 return NULL; 12 } 13 14 CFDataRef TKTokenCopyPublicKeyData(TKTokenRef token_id, CFDataRef objectID, CFErrorRef *error) { 15 return NULL; 16 } 17 18 int TKTokenDeleteObject(TKTokenRef token, CFDataRef object_id, CFErrorRef *error) { 19 return 0; 20 } 21 22 CFDataRef TKTokenCopySignature(TKTokenRef token, CFDataRef objectID, uint32_t padding, CFDataRef digest, CFErrorRef *error) { 23 return NULL; 24 } 25 26 TKTokenRef TKTokenCreate(CFDictionaryRef token_attrs, CFErrorRef *error) { 27 return NULL; 28 } 29 30 CFDataRef TKTokenCreateOrUpdateObject(TKTokenRef token, CFDataRef objectID, CFDictionaryRef token_attrs, CFErrorRef *error) { 31 return NULL; 32 } 33 34 CFDataRef TKTokenCopyObjectData(TKTokenRef token, CFDataRef object_id, CFErrorRef *error) { 35 return NULL; 36 } 37 38 CFDataRef TKTokenCopyObjectCreationAccessControl(TKTokenRef token, CFTypeRef object_or_attrs, CFErrorRef *error) { 39 return NULL; 40 } 41 42 CFDictionaryRef TKTokenControl(TKTokenRef token, CFDictionaryRef attributes, CFErrorRef *error) 43 { 44 return NULL; 45 } 46 47 CFArrayRef TKTokenCopyIdentities(TKTokenRef token, int usage, CFErrorRef *error) 48 { 49 return NULL; 50 } 51 52 CFDataRef TKTokenCopyOperationResult(TKTokenRef token, CFDataRef objectID, int operation, CFArrayRef algorithms, int other, CFTypeRef in1, CFTypeRef in2, CFErrorRef *error) 53 { 54 return NULL; 55 } 56 57 CF_EXPORT 58 void TKBindUserAm(CFStringRef cf_user, CFDataRef pub_key_hash, void *unknown) { 59 if (verbose) puts("STUB: TKBindUserAm called"); 60 return; 61 }