ubus: set scan duration to roam scan interval
Some clients seem to ignore scan requests with unreasonably high measurement durations. This was observed with a Google Pixel 4A as well as a Xiaomi Mi 10T. Advertise a scan duration which closely matches the roam scan-interval. This triggers scans more reliably with the aformentioned devices. Signed-off-by: David Bauer <mail@david-bauer.net>
This commit is contained in:
2
ubus.c
2
ubus.c
@@ -557,7 +557,7 @@ int usteer_ubus_trigger_client_scan(struct sta_info *si)
|
||||
blob_buf_init(&b, 0);
|
||||
blobmsg_printf(&b, "addr", MAC_ADDR_FMT, MAC_ADDR_DATA(si->sta->addr));
|
||||
blobmsg_add_u32(&b, "mode", BEACON_MEASUREMENT_ACTIVE);
|
||||
blobmsg_add_u32(&b, "duration", 65535);
|
||||
blobmsg_add_u32(&b, "duration", config.roam_scan_interval / 100);
|
||||
blobmsg_add_u32(&b, "channel", 0);
|
||||
blobmsg_add_u32(&b, "op_class", si->scan_band ? 1 : 12);
|
||||
return ubus_invoke(ubus_ctx, ln->obj_id, "rrm_beacon_req", b.head, NULL, 0, 100);
|
||||
|
Reference in New Issue
Block a user