From: James Prestwood <prestwoj@gmail.com>
To: iwd@lists.linux.dev
Cc: James Prestwood <prestwoj@gmail.com>
Subject: [PATCH 2/8] station: add additional internal state, STATION_STATE_NETCONFIG
Date: Wed, 3 Jan 2024 10:46:32 -0800 [thread overview]
Message-ID: <20240103184638.533221-2-prestwoj@gmail.com> (raw)
In-Reply-To: <20240103184638.533221-1-prestwoj@gmail.com>
This is still treated as "connecting" from a DBus perspective but
will allow for better handling internally for some roaming corner
cases.
---
src/dpp.c | 1 +
src/station.c | 5 +++++
src/station.h | 1 +
src/wsc.c | 1 +
4 files changed, 8 insertions(+)
diff --git a/src/dpp.c b/src/dpp.c
index af6574fb..74b4c2bc 100644
--- a/src/dpp.c
+++ b/src/dpp.c
@@ -3761,6 +3761,7 @@ static void dpp_station_state_watch(enum station_state state, void *user_data)
case STATION_STATE_CONNECTING:
case STATION_STATE_CONNECTED:
case STATION_STATE_CONNECTING_AUTO:
+ case STATION_STATE_NETCONFIG:
if (L_WARN_ON(dpp->role == DPP_CAPABILITY_CONFIGURATOR))
dpp_reset(dpp);
diff --git a/src/station.c b/src/station.c
index 5c9ede8b..57d22e91 100644
--- a/src/station.c
+++ b/src/station.c
@@ -1497,6 +1497,8 @@ static const char *station_state_to_string(enum station_state state)
return "ft-roaming";
case STATION_STATE_FW_ROAMING:
return "fw-roaming";
+ case STATION_STATE_NETCONFIG:
+ return "connecting (netconfig)";
}
return "invalid";
@@ -1633,6 +1635,7 @@ static void station_enter_state(struct station *station,
station_set_drop_unicast_l2_multicast(station, false);
break;
case STATION_STATE_DISCONNECTING:
+ case STATION_STATE_NETCONFIG:
break;
case STATION_STATE_ROAMING:
case STATION_STATE_FT_ROAMING:
@@ -3344,6 +3347,7 @@ static void station_disconnect_event(struct station *station, void *event_data)
case STATION_STATE_CONNECTED:
case STATION_STATE_FT_ROAMING:
case STATION_STATE_FW_ROAMING:
+ case STATION_STATE_NETCONFIG:
station_disassociated(station);
return;
default:
@@ -4274,6 +4278,7 @@ static bool station_property_get_state(struct l_dbus *dbus,
break;
case STATION_STATE_CONNECTING:
case STATION_STATE_CONNECTING_AUTO:
+ case STATION_STATE_NETCONFIG:
statestr = "connecting";
break;
case STATION_STATE_CONNECTED:
diff --git a/src/station.h b/src/station.h
index 0d502a08..a38327e4 100644
--- a/src/station.h
+++ b/src/station.h
@@ -45,6 +45,7 @@ enum station_state {
STATION_STATE_ROAMING, /* Reassociation */
STATION_STATE_FT_ROAMING, /* Fast transition */
STATION_STATE_FW_ROAMING, /* Firmware roamed by itself */
+ STATION_STATE_NETCONFIG,
};
enum station_event {
diff --git a/src/wsc.c b/src/wsc.c
index cda877cf..f88f5deb 100644
--- a/src/wsc.c
+++ b/src/wsc.c
@@ -654,6 +654,7 @@ static void wsc_check_can_connect(struct wsc_station_dbus *wsc,
case STATION_STATE_CONNECTING:
case STATION_STATE_CONNECTING_AUTO:
case STATION_STATE_CONNECTED:
+ case STATION_STATE_NETCONFIG:
if (station_disconnect(wsc->station) < 0)
goto error;
--
2.34.1
next prev parent reply other threads:[~2024-01-03 18:46 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-03 18:46 [PATCH 1/8] station: handle netconfig after roaming for FW roams James Prestwood
2024-01-03 18:46 ` James Prestwood [this message]
2024-01-03 18:46 ` [PATCH 3/8] station: add handling for new NETCONFIG state James Prestwood
2024-01-04 18:14 ` Denis Kenzior
2024-01-04 18:31 ` James Prestwood
2024-01-04 18:55 ` Denis Kenzior
2024-01-04 19:55 ` James Prestwood
2024-01-04 21:01 ` Denis Kenzior
2024-01-03 18:46 ` [PATCH 4/8] station: add debug events for internal states James Prestwood
2024-01-04 17:57 ` Denis Kenzior
2024-01-03 18:46 ` [PATCH 5/8] auto-t: update roam test to use new debug events James Prestwood
2024-01-04 17:58 ` Denis Kenzior
2024-01-03 18:46 ` [PATCH 6/8] auto-t: add test for roaming + netconfig James Prestwood
2024-01-03 18:46 ` [PATCH 7/8] auto-t: improve failure handling in testPSK-roam James Prestwood
2024-01-04 18:00 ` Denis Kenzior
2024-01-03 18:46 ` [PATCH 8/8] auto-t: fix random testPSK-roam failure James Prestwood
2024-01-04 18:00 ` Denis Kenzior
2024-01-04 17:56 ` [PATCH 1/8] station: handle netconfig after roaming for FW roams Denis Kenzior
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240103184638.533221-2-prestwoj@gmail.com \
--to=prestwoj@gmail.com \
--cc=iwd@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox