telenordigital / connect-ios-sdk

Docs 📒👉
https://telenordigital.github.io/id-docs.telenordigital.com/integrate-ios-sdk.html
Apache License 2.0
9 stars 8 forks source link

Forced HE over WiFi #32

Closed atanasdb closed 6 years ago

atanasdb commented 7 years ago

Add the possibility to execute request towards specific URLs found from the .well-known configuration API using the cellular network interface, thus achieving successful HE even when both WiFi and cellular are on.

See design doc at https://confluence.skunk-works.no/confluence/x/30BRAg.

jorunfa commented 7 years ago

Skimmed through it, but I can't say I have reviewed all the low level stuff thoroughly. Is there anything I can skip over?

What will change for the developer using the library?

atanasdb commented 7 years ago

You could skip those: _WriteMemoryCallback sockoptcallback MemoryStruct opensocket These are widely used libcurl constructs, that are in most of their examples.

isInterfaceEnabled -> Just trust that it works :) I mean that en0 is Wifi, and pdp_ip0 is cellular.

This will only affect WebView users of the SDK that have both wifi and cellular turned on. In this case the wellknown endpoint will be fetched (to get the "whitelisted" network_authentication_target_urls) and an interception filter will be registered in the webview. Requests to network_authentication_target_urls will be performed with libcurl. Before the actual requests to those urls, we use the libcurl feature to pre-select the request's socket's interface ( so we can forward those requests through the cellular interface).

Should not affect users that are not in the previous set of conditions.

atanasdb commented 6 years ago

Ok, I removed the instructions as they might be confusing.