- if (usteer_roam_sm_found_better_node(si, &ev, ROAM_TRIGGER_WAIT_KICK))
- break;
-
- /* Kick back to SCAN state if candidate expired */
- usteer_roam_sm_start_scan(si, &ev);
- break;
-
- case ROAM_TRIGGER_WAIT_KICK:
- if (si->signal > min_signal)
- break;
-
- usteer_roam_set_state(si, ROAM_TRIGGER_NOTIFY_KICK, &ev);
- usteer_ubus_notify_client_disassoc(si);
- break;
- case ROAM_TRIGGER_NOTIFY_KICK:
- if (current_time - si->roam_event < config.roam_kick_delay * 100)
- break;
-
- usteer_roam_set_state(si, ROAM_TRIGGER_KICK, &ev);
- break;
- case ROAM_TRIGGER_KICK:
- usteer_ubus_kick_client(si);
+ usteer_ubus_bss_transition_request(si, 1, false, false, 100);
+ si->kick_time = current_time;