Skip to content

Instantly share code, notes, and snippets.

@krunk4ever
Created November 17, 2015 23:41
Show Gist options
  • Save krunk4ever/936e03b48c030e26a3a6 to your computer and use it in GitHub Desktop.
Save krunk4ever/936e03b48c030e26a3a6 to your computer and use it in GitHub Desktop.
$ /usr/bin/nscurl --ats-diagnostics https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation --verbose
Starting ATS Diagnostics
Configuring ATS Info.plist keys and displaying the result of HTTPS loads to https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation.
A test will "PASS" if URLSession:task:didCompleteWithError: returns a nil error.
================================================================================
Default ATS Secure Connection
---
ATS Default Connection
ATS Dictionary:
{
}
2015-11-17 15:40:47.700 nscurl[41870:5059864] CFNetwork SSLHandshake failed (-9801)
2015-11-17 15:40:47.700 nscurl[41870:5059864] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9801)
Result : FAIL
Error : Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made." UserInfo={_kCFStreamErrorCodeKey=-9801, NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?, NSUnderlyingError=0x7ffb48d0dc40 {Error Domain=kCFErrorDomainCFNetwork Code=-1200 "(null)" UserInfo={_kCFStreamPropertySSLClientCertificateState=0, _kCFNetworkCFStreamSSLErrorOriginalValue=-9801, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9801}}, NSLocalizedDescription=An SSL error has occurred and a secure connection to the server cannot be made., NSErrorFailingURLKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, NSErrorFailingURLStringKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, _kCFStreamErrorDomainKey=3}
---
================================================================================
Allowing Arbitrary Loads
---
Allow All Loads
ATS Dictionary:
{
NSAllowsArbitraryLoads = true;
}
Result : PASS
---
================================================================================
Configuring TLS exceptions for api.cloud.opentable.com
---
TLSv1.2
ATS Dictionary:
{
NSExceptionDomains = {
"api.cloud.opentable.com" = {
NSExceptionMinimumTLSVersion = "TLSv1.2";
};
};
}
2015-11-17 15:40:47.930 nscurl[41870:5059864] CFNetwork SSLHandshake failed (-9801)
2015-11-17 15:40:47.930 nscurl[41870:5059864] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9801)
Result : FAIL
Error : Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made." UserInfo={_kCFStreamErrorCodeKey=-9801, NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?, NSUnderlyingError=0x7ffb4b100eb0 {Error Domain=kCFErrorDomainCFNetwork Code=-1200 "(null)" UserInfo={_kCFStreamPropertySSLClientCertificateState=0, _kCFNetworkCFStreamSSLErrorOriginalValue=-9801, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9801}}, NSLocalizedDescription=An SSL error has occurred and a secure connection to the server cannot be made., NSErrorFailingURLKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, NSErrorFailingURLStringKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, _kCFStreamErrorDomainKey=3}
---
---
TLSv1.1
ATS Dictionary:
{
NSExceptionDomains = {
"api.cloud.opentable.com" = {
NSExceptionMinimumTLSVersion = "TLSv1.1";
};
};
}
2015-11-17 15:40:47.951 nscurl[41870:5059864] CFNetwork SSLHandshake failed (-9801)
2015-11-17 15:40:47.952 nscurl[41870:5059864] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9801)
Result : FAIL
Error : Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made." UserInfo={_kCFStreamErrorCodeKey=-9801, NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?, NSUnderlyingError=0x7ffb48fa6a50 {Error Domain=kCFErrorDomainCFNetwork Code=-1200 "(null)" UserInfo={_kCFStreamPropertySSLClientCertificateState=0, _kCFNetworkCFStreamSSLErrorOriginalValue=-9801, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9801}}, NSLocalizedDescription=An SSL error has occurred and a secure connection to the server cannot be made., NSErrorFailingURLKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, NSErrorFailingURLStringKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, _kCFStreamErrorDomainKey=3}
---
---
TLSv1.0
ATS Dictionary:
{
NSExceptionDomains = {
"api.cloud.opentable.com" = {
NSExceptionMinimumTLSVersion = "TLSv1.0";
};
};
}
Result : PASS
---
================================================================================
Configuring PFS exceptions for api.cloud.opentable.com
---
Disabling Perfect Forward Secrecy
ATS Dictionary:
{
NSExceptionDomains = {
"api.cloud.opentable.com" = {
NSExceptionRequiresForwardSecrecy = false;
};
};
}
2015-11-17 15:40:48.037 nscurl[41870:5059864] CFNetwork SSLHandshake failed (-9801)
2015-11-17 15:40:48.037 nscurl[41870:5059864] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9801)
Result : FAIL
Error : Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made." UserInfo={_kCFStreamErrorCodeKey=-9801, NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?, NSUnderlyingError=0x7ffb4b2003c0 {Error Domain=kCFErrorDomainCFNetwork Code=-1200 "(null)" UserInfo={_kCFStreamPropertySSLClientCertificateState=0, _kCFNetworkCFStreamSSLErrorOriginalValue=-9801, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9801}}, NSLocalizedDescription=An SSL error has occurred and a secure connection to the server cannot be made., NSErrorFailingURLKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, NSErrorFailingURLStringKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, _kCFStreamErrorDomainKey=3}
---
================================================================================
Configuring PFS exceptions and allowing insecure HTTP for api.cloud.opentable.com
---
Disabling Perfect Forward Secrecy and Allowing Insecure HTTP
ATS Dictionary:
{
NSExceptionDomains = {
"api.cloud.opentable.com" = {
NSExceptionAllowsInsecureHTTPLoads = true;
NSExceptionRequiresForwardSecrecy = false;
};
};
}
2015-11-17 15:40:48.052 nscurl[41870:5059864] CFNetwork SSLHandshake failed (-9801)
2015-11-17 15:40:48.066 nscurl[41870:5059864] CFNetwork SSLHandshake failed (-9801)
2015-11-17 15:40:48.079 nscurl[41870:5059864] CFNetwork SSLHandshake failed (-9801)
2015-11-17 15:40:48.079 nscurl[41870:5059864] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9801)
Result : FAIL
Error : Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made." UserInfo={_kCFStreamErrorCodeKey=-9801, NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?, NSUnderlyingError=0x7ffb4b102620 {Error Domain=kCFErrorDomainCFNetwork Code=-1200 "(null)" UserInfo={_kCFStreamPropertySSLClientCertificateState=0, _kCFNetworkCFStreamSSLErrorOriginalValue=-9801, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9801}}, NSLocalizedDescription=An SSL error has occurred and a secure connection to the server cannot be made., NSErrorFailingURLKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, NSErrorFailingURLStringKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, _kCFStreamErrorDomainKey=3}
---
================================================================================
Configuring TLS exceptions with PFS disabled for api.cloud.opentable.com
---
TLSv1.2 with PFS disabled
ATS Dictionary:
{
NSExceptionDomains = {
"api.cloud.opentable.com" = {
NSExceptionMinimumTLSVersion = "TLSv1.2";
NSExceptionRequiresForwardSecrecy = false;
};
};
}
2015-11-17 15:40:48.099 nscurl[41870:5059864] CFNetwork SSLHandshake failed (-9801)
2015-11-17 15:40:48.100 nscurl[41870:5059864] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9801)
Result : FAIL
Error : Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made." UserInfo={_kCFStreamErrorCodeKey=-9801, NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?, NSUnderlyingError=0x7ffb4b102650 {Error Domain=kCFErrorDomainCFNetwork Code=-1200 "(null)" UserInfo={_kCFStreamPropertySSLClientCertificateState=0, _kCFNetworkCFStreamSSLErrorOriginalValue=-9801, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9801}}, NSLocalizedDescription=An SSL error has occurred and a secure connection to the server cannot be made., NSErrorFailingURLKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, NSErrorFailingURLStringKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, _kCFStreamErrorDomainKey=3}
---
---
TLSv1.1 with PFS disabled
ATS Dictionary:
{
NSExceptionDomains = {
"api.cloud.opentable.com" = {
NSExceptionMinimumTLSVersion = "TLSv1.1";
NSExceptionRequiresForwardSecrecy = false;
};
};
}
2015-11-17 15:40:48.120 nscurl[41870:5059864] CFNetwork SSLHandshake failed (-9801)
2015-11-17 15:40:48.120 nscurl[41870:5059864] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9801)
Result : FAIL
Error : Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made." UserInfo={_kCFStreamErrorCodeKey=-9801, NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?, NSUnderlyingError=0x7ffb48f7b940 {Error Domain=kCFErrorDomainCFNetwork Code=-1200 "(null)" UserInfo={_kCFStreamPropertySSLClientCertificateState=0, _kCFNetworkCFStreamSSLErrorOriginalValue=-9801, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9801}}, NSLocalizedDescription=An SSL error has occurred and a secure connection to the server cannot be made., NSErrorFailingURLKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, NSErrorFailingURLStringKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, _kCFStreamErrorDomainKey=3}
---
---
TLSv1.0 with PFS disabled
ATS Dictionary:
{
NSExceptionDomains = {
"api.cloud.opentable.com" = {
NSExceptionMinimumTLSVersion = "TLSv1.0";
NSExceptionRequiresForwardSecrecy = false;
};
};
}
Result : PASS
---
================================================================================
Configuring TLS exceptions with PFS disabled and insecure HTTP allowed for api.cloud.opentable.com
---
TLSv1.2 with PFS disabled and insecure HTTP allowed
ATS Dictionary:
{
NSExceptionDomains = {
"api.cloud.opentable.com" = {
NSExceptionAllowsInsecureHTTPLoads = true;
NSExceptionMinimumTLSVersion = "TLSv1.2";
NSExceptionRequiresForwardSecrecy = false;
};
};
}
2015-11-17 15:40:48.171 nscurl[41870:5059864] CFNetwork SSLHandshake failed (-9801)
2015-11-17 15:40:48.187 nscurl[41870:5059864] CFNetwork SSLHandshake failed (-9801)
2015-11-17 15:40:48.206 nscurl[41870:5059864] CFNetwork SSLHandshake failed (-9801)
2015-11-17 15:40:48.206 nscurl[41870:5059864] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9801)
Result : FAIL
Error : Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made." UserInfo={_kCFStreamErrorCodeKey=-9801, NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?, NSUnderlyingError=0x7ffb4b301290 {Error Domain=kCFErrorDomainCFNetwork Code=-1200 "(null)" UserInfo={_kCFStreamPropertySSLClientCertificateState=0, _kCFNetworkCFStreamSSLErrorOriginalValue=-9801, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9801}}, NSLocalizedDescription=An SSL error has occurred and a secure connection to the server cannot be made., NSErrorFailingURLKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, NSErrorFailingURLStringKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, _kCFStreamErrorDomainKey=3}
---
---
TLSv1.1 with PFS disabled and insecure HTTP allowed
ATS Dictionary:
{
NSExceptionDomains = {
"api.cloud.opentable.com" = {
NSExceptionAllowsInsecureHTTPLoads = true;
NSExceptionMinimumTLSVersion = "TLSv1.1";
NSExceptionRequiresForwardSecrecy = false;
};
};
}
2015-11-17 15:40:48.221 nscurl[41870:5059864] CFNetwork SSLHandshake failed (-9801)
2015-11-17 15:40:48.244 nscurl[41870:5059864] CFNetwork SSLHandshake failed (-9801)
2015-11-17 15:40:48.268 nscurl[41870:5059864] CFNetwork SSLHandshake failed (-9801)
2015-11-17 15:40:48.269 nscurl[41870:5059864] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9801)
Result : FAIL
Error : Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made." UserInfo={_kCFStreamErrorCodeKey=-9801, NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?, NSUnderlyingError=0x7ffb4b202100 {Error Domain=kCFErrorDomainCFNetwork Code=-1200 "(null)" UserInfo={_kCFStreamPropertySSLClientCertificateState=0, _kCFNetworkCFStreamSSLErrorOriginalValue=-9801, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9801}}, NSLocalizedDescription=An SSL error has occurred and a secure connection to the server cannot be made., NSErrorFailingURLKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, NSErrorFailingURLStringKey=https://api.cloud.opentable.com/umami_venue/api/v4/Restaurant/108712/reservation, _kCFStreamErrorDomainKey=3}
---
---
TLSv1.0 with PFS disabled and insecure HTTP allowed
ATS Dictionary:
{
NSExceptionDomains = {
"api.cloud.opentable.com" = {
NSExceptionAllowsInsecureHTTPLoads = true;
NSExceptionMinimumTLSVersion = "TLSv1.0";
NSExceptionRequiresForwardSecrecy = false;
};
};
}
Result : PASS
---
================================================================================
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment