LDN services: Difference between revisions
No edit summary  | 
				|||
| Line 1,156: | Line 1,156: | ||
This is "nn::ldn::ScanFilter". This is a 0x60-byte struct with 8-byte alignment.  | This is "nn::ldn::ScanFilter". This is a 0x60-byte struct with 8-byte alignment.  | ||
sdknso copies the input ScanFilter to a tmp struct on stack, which is then used with the cmd.  | sdknso copies the input ScanFilter to a tmp struct on stack (with [[#ScanFilterFlag|Flag]] masking), which is then used with the cmd. sdknso only copies Bssid with [[#ScanPrivate|ScanPrivate]], with [[#Scan|Scan]] it also masks out the [[#ScanFilterFlag|Flag]] for Bssid.  | ||
{| class="wikitable" border="1"  | {| class="wikitable" border="1"  | ||
| Line 1,176: | Line 1,176: | ||
| 0x5C || 0x4 || [[#ScanFilterFlag|Flag]]  | | 0x5C || 0x4 || [[#ScanFilterFlag|Flag]]  | ||
|}  | |}  | ||
Each [[#ScanFilterFlag|Flag]] bit when set enables using the corresponding ScanFilter data. This is usually a compare with the ScanFilter data and the internal [[#NetworkInfo|NetworkInfo]] data.  | |||
* NetworkType: (ScanFilter_NetworkType & NetworkInfo_NetworkType) must be non-zero.  | |||
* Ssid: The length fields must match, then memcmp is used.  | |||
The filtering func also handles validating the Band/Channel, however these fields are internal only and are not exposed in the user ScanFilter.  | |||
= ScanFilterFlag =  | = ScanFilterFlag =  | ||