Re: How SCNetworkReachability works with proxy and no DNS resolving?
There were some pretty substantial changes made to the way SCNetworkReachability works under the covers in 10.11 to address issues like this. The solution that Jens provided is a pretty good approximation for older systems. If you do add smarts to handle proxies with reachability, it may be wise to only use it prior to 10.11. -josh
On May 23, 2016, at 5:12 AM, Yulia Bensman <ybensman@interwise.com> wrote:
Thanks for everyone, But maybe – if it works correct in 10.11, maybe there is any means to make it working in other versions of Mac OS?
From: Jens Alfke [mailto:jens@mooseyard.com] Sent: Sunday, May 22, 2016 6:51 PM To: Yulia Bensman Cc: macnetworkprog@lists.apple.com Subject: Re: How SCNetworkReachability works with proxy and no DNS resolving?
In my code, I check whether the server’s address requires a proxy. If so, I use the reachability API only to check whether an Internet connection is available, and then try to connect.
Here’s the code I use to check for a proxy:
+ (BOOL) usingProxyForURL: (NSURL*)url { NSDictionary* settings = CFBridgingRelease(CFNetworkCopySystemProxySettings()); NSArray* proxies = CFBridgingRelease(CFNetworkCopyProxiesForURL((__bridge CFURLRef)url, (__bridge CFDictionaryRef)settings)); for (NSDictionary* proxy in proxies) { if (![proxy[(id)kCFProxyTypeKey] isEqual: (id)kCFProxyTypeNone]) return YES; } return NO; }
—Jens
************************************************************************************ This footnote confirms that this email message has been scanned by PineApp Mail-SeCure for the presence of malicious code, vandals & computer viruses. ************************************************************************************
= _______________________________________________ Do not post admin requests to the list. They will be ignored. Macnetworkprog mailing list (Macnetworkprog@lists.apple.com) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/macnetworkprog/jgraessley%40apple.co...
This email sent to jgraessley@apple.com
_______________________________________________ Do not post admin requests to the list. They will be ignored. Macnetworkprog mailing list (Macnetworkprog@lists.apple.com) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/macnetworkprog/site_archiver%40lists... This email sent to site_archiver@lists.apple.com
participants (1)
-
Josh Graessley