Mysterious SSL failures in iOS 9 simulator (but not on real devices)
Mysterious SSL failures in iOS 9 simulator (but not on real devices)
- Subject: Mysterious SSL failures in iOS 9 simulator (but not on real devices)
- From: Jens Alfke <email@hidden>
- Date: Fri, 14 Aug 2015 16:24:02 -0700
Are there any known issues with SSL and CFStream in the iOS 9 simulator? I’ve spent a lot of time in the last two days banging my head against an issue that’s breaking a unit test in the framework I work on. The test ensures that we can start a WebSocket-over-SSL listener, open a connection to it, and send data; it’s run all in the same process to make the unit test self-contained. This test is failing in the iOS 9 simulator; it works on a real iPhone 6 and it works in the iOS 8 simulator.
The conditions for failure are:
Running iOS 9
AND running in a simulator (not a device)
AND the server socket is opened in-process
AND the connection is opened in-process
In other words, the unit test can successfully make a connection to a listener running externally (in a native Mac process on the same machine), or it can run a server that’s connected to from a Mac process. It’s only if _both_ client and server are in the same simulated iOS 9 process that it fails.
I’ve tried everything I can think of to troubleshoot this. But the actual failure happens down in SecureTransport or CFStream — the only thing I see is a logged message about SSLHandshake failing with error -9806 (errSSLClosedAbort). I’m sure this has something to do with App Transport Security, but it’s hard to tell what because there’s no way to get any further details about what went wrong. And I’ve already done the work of making both the client and server network code compatible with ATS.
(Xcode 7 beta 5, El Capitan beta 6)
Any ideas? I’m hoping someone will say “oh yeah, the beta 5 iOS simulator has known networking problems” and I can breath a sigh of relief and wait for the next beta.
—Jens
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Macnetworkprog mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden