lipengwei
2019-10-10 63375242d875e9ba350308d29e23ccf12a00a0f9
frameworks/AFNetworking.framework/Headers/AFSecurityPolicy.h
old mode 100755 new mode 100644
@@ -1,5 +1,5 @@
// AFSecurityPolicy.h
// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/)
// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ )
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
@@ -36,7 +36,7 @@
NS_ASSUME_NONNULL_BEGIN
@interface AFSecurityPolicy : NSObject
@interface AFSecurityPolicy : NSObject <NSSecureCoding, NSCopying>
/**
 The criteria by which server trust should be evaluated against the pinned SSL certificates. Defaults to `AFSSLPinningModeNone`.
@@ -44,9 +44,13 @@
@property (readonly, nonatomic, assign) AFSSLPinningMode SSLPinningMode;
/**
 The certificates used to evaluate server trust according to the SSL pinning mode. By default, this property is set to any (`.cer`) certificates included in the app bundle. Note that if you create an array with duplicate certificates, the duplicate certificates will be removed. Note that if pinning is enabled, `evaluateServerTrust:forDomain:` will return true if any pinned certificate matches.
 The certificates used to evaluate server trust according to the SSL pinning mode.
  By default, this property is set to any (`.cer`) certificates included in the target compiling AFNetworking. Note that if you are using AFNetworking as embedded framework, no certificates will be pinned by default. Use `certificatesInBundle` to load certificates from your target, and then create a new policy by calling `policyWithPinningMode:withPinnedCertificates`.
 Note that if pinning is enabled, `evaluateServerTrust:forDomain:` will return true if any pinned certificate matches.
 */
@property (nonatomic, strong, nullable) NSArray *pinnedCertificates;
@property (nonatomic, strong, nullable) NSSet <NSData *> *pinnedCertificates;
/**
 Whether or not to trust servers with an invalid or expired SSL certificates. Defaults to `NO`.
@@ -57,6 +61,17 @@
 Whether or not to validate the domain name in the certificate's CN field. Defaults to `YES`.
 */
@property (nonatomic, assign) BOOL validatesDomainName;
///-----------------------------------------
/// @name Getting Certificates from the Bundle
///-----------------------------------------
/**
 Returns any certificates included in the bundle. If you are using AFNetworking as an embedded framework, you must use this method to find the certificates you have included in your app bundle, and use them when creating your security policy by calling `policyWithPinningMode:withPinnedCertificates`.
 @return The certificates included in the given bundle.
 */
+ (NSSet <NSData *> *)certificatesInBundle:(NSBundle *)bundle;
///-----------------------------------------
/// @name Getting Specific Security Policies
@@ -82,22 +97,19 @@
 */
+ (instancetype)policyWithPinningMode:(AFSSLPinningMode)pinningMode;
/**
 Creates and returns a security policy with the specified pinning mode.
 @param pinningMode The SSL pinning mode.
 @param pinnedCertificates The certificates to pin against.
 @return A new security policy.
 */
+ (instancetype)policyWithPinningMode:(AFSSLPinningMode)pinningMode withPinnedCertificates:(NSSet <NSData *> *)pinnedCertificates;
///------------------------------
/// @name Evaluating Server Trust
///------------------------------
/**
 Whether or not the specified server trust should be accepted, based on the security policy.
 This method should be used when responding to an authentication challenge from a server.
 @param serverTrust The X.509 certificate trust of the server.
 @return Whether or not to trust the server.
 @warning This method has been deprecated in favor of `-evaluateServerTrust:forDomain:`.
 */
- (BOOL)evaluateServerTrust:(SecTrustRef)serverTrust DEPRECATED_ATTRIBUTE;
/**
 Whether or not the specified server trust should be accepted, based on the security policy.