BssidBlocklistMonitor - switch constants to overlay
Programmable by OEMs.
Bug: 148111749
Test: atest FrameworksWifiTests
Test: Manually checked in dumpsys
Change-Id: I6e81f68950377e1d0f359cc37cbe2bd4d64a88be
diff --git a/service/res/values/config.xml b/service/res/values/config.xml
index 460dce4..6d6d00e 100644
--- a/service/res/values/config.xml
+++ b/service/res/values/config.xml
@@ -306,6 +306,36 @@
<integer-array translatable="false" name="config_wifiSingleSavedNetworkConnectedScanIntervalScheduleSec">
</integer-array>
+ <!-- List of constants that indicate the number of consecutive failures per type needed to block a BSSID.
+ A blocked BSSID will not be considered in network selection and firmware roaming.-->
+ <integer translatable="false" name="config_wifiBssidBlocklistMonitorApUnableToHandleNewStaThreshold"> 1 </integer>
+ <integer translatable="false" name="config_wifiBssidBlocklistMonitorNetworkValidationFailureThreshold"> 1 </integer>
+ <integer translatable="false" name="config_wifiBssidBlocklistMonitorWrongPasswordThreshold"> 1 </integer>
+ <integer translatable="false" name="config_wifiBssidBlocklistMonitorEapFailureThreshold"> 1 </integer>
+ <integer translatable="false" name="config_wifiBssidBlocklistMonitorAssociationRejectionThreshold"> 3 </integer>
+ <integer translatable="false" name="config_wifiBssidBlocklistMonitorAssociationTimeoutThreshold"> 3 </integer>
+ <integer translatable="false" name="config_wifiBssidBlocklistMonitorAuthenticationFailureThreshold"> 3 </integer>
+ <integer translatable="false" name="config_wifiBssidBlocklistMonitorDhcpFailureThreshold"> 3 </integer>
+ <integer translatable="false" name="config_wifiBssidBlocklistMonitorAbnormalDisconnectThreshold"> 3 </integer>
+
+ <!-- Base duration to block a BSSID after consecutive failures happen. (default = 5 mins)
+ The blocklist duration is increased exponentially for a BSSID that consecutively gets added to the blocklist.
+ ie. 5/10/20/40/... up to the upper limit defined by config_wifiBssidBlocklistMonitorMaxBlockDurationMs -->
+ <integer translatable="false" name="config_wifiBssidBlocklistMonitorBaseBlockDurationMs"> 300000 </integer>
+
+ <!-- The failure streak is the number of times a BSSID consecutively gets blocked without ever
+ successfully connecting in between, and is used to calculate the exponentially growing blocklist time.
+ Any BSSID with failure streak greater than the failure streak cap will be blocked for
+ config_wifiBssidBlocklistMonitorMaxBlockDurationMs. -->
+ <integer translatable="false" name="config_wifiBssidBlocklistMonitorFailureStreakCap"> 7 </integer>
+
+ <!-- The maximum duration to block a BSSID (default = 18 hours) -->
+ <integer translatable="false" name="config_wifiBssidBlocklistMonitorMaxBlockDurationMs"> 64800000 </integer>
+
+ <!-- If a non-locally generated disconnect happens within this time window after association,
+ then count it as a failure with reason code REASON_ABNORMAL_DISCONNECT (default = 30 seconds) -->
+ <integer translatable="false" name="config_wifiBssidBlocklistAbnormalDisconnectTimeWindowMs"> 30000 </integer>
+
<!-- Indicates that hidden networks are to be scanned during scan only mode -->
<bool translatable="false" name="config_wifiScanHiddenNetworksScanOnlyMode">false</bool>