Allow NetworkFactories to match any network specifier on a request
Current usage of NetworkSpecifier: network factory will match a request if the request has either a (1) empty network specifier, or (2) a network specifier which is identical to that of the network factory. Note: 'matching' w.r.t. network specifier - all other matching rules are still in effect. Change: add rule (3) or the network specifier of the network factory is the special string (which is defined as "*" and which user-facing network requests aren't allowed to use). Rationale: allows on-demand network creation. Example: - Can specify a Wi-Fi NetworkRequest with NetworkSpecifier="ssid" - It will match a Wi-Fi network factory specifying NetworkSpecifier="*" - That network factory will bring up a Wi-Fi network, connecting to the specified SSID. - Once the network is created it will create a NetworkAgent which will now have a NetworkSpecifier matching that of the request (not the match-all special string!) That final step of making sure that the NetworkAgent matches the request and not the match-all is critical to delivering any subsequent callbacks correctly. I.e. your network will only get callbacks which match it. Bug: 26192833 Change-Id: I49e3b492e0bb48a3f6e9a34e3f94f0e1cf89741f
Loading
Please register or sign in to comment