mbox series

[v5,0/6] MLO control socket changes

Message ID 20240813083852.3945773-1-quic_adisi@quicinc.com
Headers show
Series MLO control socket changes | expand

Message

Aditya Kumar Singh Aug. 13, 2024, 8:38 a.m. UTC
Control socket for each link BSS of MLD currently needs to be in a separate
directory since interface name is same for all links in an AP MLD. Hence
once the first link comes up, rest of links will not come up if using the
same control interface directory.

Hence, introduce link level sockets. Each link will use socket with name
"<interface>_link<link id>" under given control interface directory.

Also, introduce a MLD level socket with name "<interface>" in the same
directory. This will help to route the commands to underlying links if
required as well as it will keep backwards compatibility with other
applications trying to find "<interface>" file in the control interface
directory.

Aditya Kumar Singh (5):
  ctrl_iface: MLO: introduce MLD level socket
  hostapd_cli: MLO: pass 'LINKID' in the command
  hostapd_cli: MLO: add status command for MLD socket
  tests: MLO: use link ID to access control sockets
  tests: MLO: add MLD socket connectivity test case

Karthikeyan Kathirvel (1):
  ctrl_iface: create link based hapd control sockets
---
v5: * When moving LINKID from postfix to prefix, handling the same via
      cli was missed, fixed that in [3].
    * No changes in other patches.

v4: * Moved LINKID <link id> as prefix in MLD level socket command.
    * os_snprintf() and os_snprintf_error() usage wherever needed.
    * CONFIG_IEEE8021BE guard usage changes to avoid duplicate statements.

v3: * Email correction in [0] and [6].

v2: * Rebased on ToT. No conflicts in [1-4].
    * Fixed newly added EHT MLO and RSN Override sim test cases. [5/6]
---
 hostapd/ctrl_iface.c             | 384 ++++++++++++++++++++++++++++++-
 hostapd/ctrl_iface.h             |   4 +
 hostapd/hostapd_cli.c            |  70 +++++-
 hostapd/main.c                   |   5 +
 src/ap/hostapd.c                 |  39 ++++
 src/ap/hostapd.h                 |  11 +
 src/common/wpa_ctrl.c            |  63 +++++
 src/common/wpa_ctrl.h            |   7 +
 tests/hwsim/hostapd.py           |  27 ++-
 tests/hwsim/mld.py               |  36 +++
 tests/hwsim/test_eht.py          | 126 +++++++++-
 tests/hwsim/test_rsn_override.py |   2 +
 12 files changed, 749 insertions(+), 25 deletions(-)
 create mode 100644 tests/hwsim/mld.py


base-commit: 43943ea5b31fb84bcb3b01f0d85d301a28e66e4c

Comments

Jouni Malinen Sept. 1, 2024, 9:28 a.m. UTC | #1
On Tue, Aug 13, 2024 at 02:08:46PM +0530, Aditya Kumar Singh wrote:
> Control socket for each link BSS of MLD currently needs to be in a separate
> directory since interface name is same for all links in an AP MLD. Hence
> once the first link comes up, rest of links will not come up if using the
> same control interface directory.
> 
> Hence, introduce link level sockets. Each link will use socket with name
> "<interface>_link<link id>" under given control interface directory.
> 
> Also, introduce a MLD level socket with name "<interface>" in the same
> directory. This will help to route the commands to underlying links if
> required as well as it will keep backwards compatibility with other
> applications trying to find "<interface>" file in the control interface
> directory.
> 
> Aditya Kumar Singh (5):
>   ctrl_iface: MLO: introduce MLD level socket
>   hostapd_cli: MLO: pass 'LINKID' in the command
>   hostapd_cli: MLO: add status command for MLD socket
>   tests: MLO: use link ID to access control sockets
>   tests: MLO: add MLD socket connectivity test case
> 
> Karthikeyan Kathirvel (1):
>   ctrl_iface: create link based hapd control sockets

Thanks patches 1-2 and 5-6 applied with cleanup.