2222
2323#import " AFSecurityPolicy.h"
2424
25- // Equivalent of macro in <AssertMacros.h>, without causing compiler warning:
26- // "'DebugAssert' is deprecated: first deprecated in OS X 10.8"
27- #ifndef AF_Require
28- #define AF_Require (assertion, exceptionLabel ) \
29- do { \
30- if (__builtin_expect (!(assertion), 0 )) { \
31- goto exceptionLabel; \
32- } \
33- } while (0 )
34- #endif
35-
36- #ifndef AF_Require_noErr
37- #define AF_Require_noErr (errorCode, exceptionLabel ) \
38- do { \
39- if (__builtin_expect (0 != (errorCode), 0 )) { \
40- goto exceptionLabel; \
41- } \
42- } while (0 )
43- #endif
25+ #import < AssertMacros.h>
4426
4527#if !defined(__IPHONE_OS_VERSION_MIN_REQUIRED)
4628static NSData * AFSecKeyGetData (SecKeyRef key) {
4729 CFDataRef data = NULL ;
4830
49- AF_Require_noErr (SecItemExport (key, kSecFormatUnknown , kSecItemPemArmour , NULL , &data), _out);
31+ __Require_noErr_Quiet (SecItemExport (key, kSecFormatUnknown , kSecItemPemArmour , NULL , &data), _out);
5032
5133 return (__bridge_transfer NSData *)data;
5234
@@ -77,14 +59,14 @@ static id AFPublicKeyForCertificate(NSData *certificate) {
7759 SecTrustResultType result;
7860
7961 allowedCertificate = SecCertificateCreateWithData (NULL , (__bridge CFDataRef)certificate);
80- AF_Require (allowedCertificate != NULL , _out);
62+ __Require_Quiet (allowedCertificate != NULL , _out);
8163
8264 allowedCertificates[0 ] = allowedCertificate;
8365 tempCertificates = CFArrayCreate (NULL , (const void **)allowedCertificates, 1 , NULL );
8466
8567 policy = SecPolicyCreateBasicX509 ();
86- AF_Require_noErr (SecTrustCreateWithCertificates (tempCertificates, policy, &allowedTrust), _out);
87- AF_Require_noErr (SecTrustEvaluate (allowedTrust, &result), _out);
68+ __Require_noErr_Quiet (SecTrustCreateWithCertificates (tempCertificates, policy, &allowedTrust), _out);
69+ __Require_noErr_Quiet (SecTrustEvaluate (allowedTrust, &result), _out);
8870
8971 allowedPublicKey = (__bridge_transfer id )SecTrustCopyPublicKey (allowedTrust);
9072
@@ -111,7 +93,7 @@ static id AFPublicKeyForCertificate(NSData *certificate) {
11193static BOOL AFServerTrustIsValid (SecTrustRef serverTrust) {
11294 BOOL isValid = NO ;
11395 SecTrustResultType result;
114- AF_Require_noErr (SecTrustEvaluate (serverTrust, &result), _out);
96+ __Require_noErr_Quiet (SecTrustEvaluate (serverTrust, &result), _out);
11597
11698 isValid = (result == kSecTrustResultUnspecified || result == kSecTrustResultProceed );
11799
@@ -142,10 +124,10 @@ static BOOL AFServerTrustIsValid(SecTrustRef serverTrust) {
142124 CFArrayRef certificates = CFArrayCreate (NULL , (const void **)someCertificates, 1 , NULL );
143125
144126 SecTrustRef trust;
145- AF_Require_noErr (SecTrustCreateWithCertificates (certificates, policy, &trust), _out);
127+ __Require_noErr_Quiet (SecTrustCreateWithCertificates (certificates, policy, &trust), _out);
146128
147129 SecTrustResultType result;
148- AF_Require_noErr (SecTrustEvaluate (trust, &result), _out);
130+ __Require_noErr_Quiet (SecTrustEvaluate (trust, &result), _out);
149131
150132 [trustChain addObject: (__bridge_transfer id )SecTrustCopyPublicKey (trust)];
151133
0 commit comments