From 2fdb85eec2f01d40b13bf8de04ca27cd846f8564 Mon Sep 17 00:00:00 2001 From: Sam Bingner Date: Fri, 25 Jan 2019 22:13:10 -1000 Subject: Export function to check if a file is in static trust cache --- inject.h | 1 + inject.m | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/inject.h b/inject.h index 613a950..14c45aa 100644 --- a/inject.h +++ b/inject.h @@ -12,5 +12,6 @@ NSString *cdhashFor(NSString *file); int injectTrustCache(NSArray *files, uint64_t trust_chain); +bool isInAMFIStaticCache(NSString *path); #endif diff --git a/inject.m b/inject.m index 8dca775..64eacd2 100644 --- a/inject.m +++ b/inject.m @@ -56,7 +56,7 @@ struct hash_entry_t { typedef uint8_t hash_t[TRUST_CDHASH_LEN]; -bool check_amfi(NSString *path) { +bool isInAMFIStaticCache(NSString *path) { return MISValidateSignatureAndCopyInfo(path, @{kMISValidationOptionAllowAdHocSigning: @YES, kMISValidationOptionRespectUppTrustAndAuthorization: @YES}, NULL) == 0; } @@ -110,7 +110,7 @@ NSArray *filteredHashes(uint64_t trust_chain, NSDictionary *hashes) { #endif NSMutableDictionary *filtered = [hashes mutableCopy]; for (NSData *cdhash in [filtered allKeys]) { - if (check_amfi(filtered[cdhash])) { + if (isInAMFIStaticCache(filtered[cdhash])) { printf("%s: already in static trustcache, not reinjecting\n", [filtered[cdhash] UTF8String]); [filtered removeObjectForKey:cdhash]; } -- cgit v1.2.3