The socket option to set that restriction is not public. If you are trying to avoid any cellular traffic, you would also need a way to avoid sending DNS over cellular. That functionality is also not public.
I did notice the following documentation on developer.apple.com: https://developer.apple.com/library/ios/documentation/CoreFoundation/Reference/CFSocketStreamRef/index.html If you can use a CFSocketStream to establish the connection, you could use kCFStreamPropertySocketNativeHandle to fetch the file descriptor out. POSIX/BSD socket APIs won’t trigger cellular to dial or VPNs to come up among other problems. -josh > On Dec 8, 2014, at 1:33 PM, Jens Alfke <j...@mooseyard.com> wrote: > > I need to (optionally) prevent a TCP socket from being opened over a cellular > connection. The Apple docs describe how to do this when using NSURLConnection > or CFStream APIs, but the code in question uses the POSIX/BSD socket API. > (Not my choice; I'm using GCDAsyncSocket and that's how it works.) > > Is there some setsockopt mode, equivalent to kCFStreamPropertyNoCellular, to > disable cellular networking? I couldn't find it in the man page. > > —Jens > _______________________________________________ > 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.com > > This email sent to jgraess...@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/archive%40mail-archive.com This email sent to arch...@mail-archive.com