scan: add [Rank].BandModifier2_4Ghz

Similar to the 5/6Ghz options, allow modifying the rank for 2.4Ghz
scan results.
This commit is contained in:
James Prestwood 2023-09-25 11:54:15 -07:00 committed by Denis Kenzior
parent 8285318228
commit f5ae310eae
1 changed files with 8 additions and 0 deletions

View File

@ -53,6 +53,7 @@
#include "src/scan.h"
/* User configurable options */
static double RANK_2G_FACTOR;
static double RANK_5G_FACTOR;
static double RANK_6G_FACTOR;
static uint32_t SCAN_MAX_INTERVAL;
@ -1634,6 +1635,9 @@ static void scan_bss_compute_rank(struct scan_bss *bss)
rank = (double)bss->data_rate / max_rate * USHRT_MAX;
if (bss->frequency < 3000)
rank *= RANK_2G_FACTOR;
/* Prefer 5G networks over 2.4G and 6G */
if (bss->frequency >= 4900 && bss->frequency < 5900)
rank *= RANK_5G_FACTOR;
@ -2355,6 +2359,10 @@ static int scan_init(void)
scan_contexts = l_queue_new();
if (!l_settings_get_double(config, "Rank", "BandModifier2_4Ghz",
&RANK_2G_FACTOR))
RANK_2G_FACTOR = 1.0;
if (!l_settings_get_double(config, "Rank", "BandModifier5Ghz",
&RANK_5G_FACTOR))
RANK_5G_FACTOR = 1.0;