Hotspot Helper SSID property conatins passpoint domain

We use Hotspot Helper and sometimes come accross Passpoint/HS2.0 Wi-Fi networks.


We process all the SSIDs in the filter scan list and found that since iOS 10 some Passpoint domain informatin is getting into the list. This is mostly ok as we don't need to worry about it but some generic code which was processing the SSIDs failed because the domain information does not conform to the SSID type.


My question is whether this domain info should be in there or is it a bug. should it just be ignored or is it intended to give some information to the Hotspot Helper app?

Replies

… the domain information does not conform to the SSID type.

What does this mean at the API level?

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

Hi Quinn,


At the API level, the SSID property is a string so there is no fault in sending the domain.


However, as far as I am aware an SSID by definition is a 32 octet sequence. When the passpoint domain is sent, the length is too long and our SSID validation checks were showing a bad SSID.


Should it not be sent in a domain property instead, that way it would not be incorrectly read as an SSID and potentially break something downstream.


For now we just need to implement logic to ignore SSIDs longer than 32 characters which is a bit of a workaround. Or do you have any other suggestions.

You wrote:

However, as far as I am aware an SSID by definition is a 32 octet sequence.

To confirm, you’re talking about the

SSID
property of the
NEHotspotNetwork
object passed to your code via the
.filterScanList
command, right?

If so, I would recommend against trying to parse that. If you need to parse it, then I recommend that you fail gracefully. For example, if you’re parsing the SSID to create some canonical form to match against a database of supported SSIDs, if the parse fails then you know you don’t match.

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

)Yes the SSID property of NEHotspotNetwork via .filterScanList.


You are exactly right in that we are validating against a list of SSIDs we have. And as you say, we just now gracefully fail.


I filed it as a bug report (28846094) just in case there is any desire to separate domains and SSIDs in the future.