[PATCH v5 4/6] hostapd_cli: MLO: add status command for MLD socket
Aditya Kumar Singh
quic_adisi at quicinc.com
Mon Sep 2 00:37:40 PDT 2024
On 9/1/24 14:33, Jouni Malinen wrote:
> On Tue, Aug 13, 2024 at 02:08:50PM +0530, Aditya Kumar Singh wrote:
>> Add MLD level 'status' command. Currently each link level socket has got
>> 'status' command. When the same is passed on MLD level socket without any
>> link id, it routes it to first BSS of the MLD if available. Handle this
>> now properly.
>>
>> If link id is not passed then it will be treated as MLD level status
>> command.
>
> This is not a hostapd_cli change, but a hostapd change to add a STATUS
> control interface command. Sure, that new command could be used with
> hostapd_cli, but this patch does not introduce any new hostapd_cli
> changes. The commit message should be clearer on that.
Sure, noted. Thanks for correcting.
>
>>> status
>> name=wlan0
>> mld_address=AA:BB:CC:DD:EE:FF
>> num_links=2
>> LINK INFORMATION
>
> That "LINK INFORMATION" line feels a bit strange. Why would it be needed
> here?
Just to separate MLD level info from link level info. Can be omitted if
that's not really required.
>
>> link_id=0
>> link_addr=AA:BB:CC:DD:EE:EE
>> link_id=1
>> link_addr=AA:BB:CC:DD:FF:FF
>
> link_addr[0]=AA:BB:CC:DD:EE:EE
> link_addr[1]=AA:BB:CC:DD:FF:FF
>
> Might be easier to use in a parser since that would provide unique
> <name>=<value> lines from the command.
Yeah, see your point.
>
>> diff --git a/hostapd/ctrl_iface.c b/hostapd/ctrl_iface.c
>> @@ -4724,6 +4724,49 @@ done:
>> +int hostapd_ctrl_mld_iface_status(struct hostapd_mld *mld, char *buf,
>> + size_t buflen)
>
>> + if (!mld->fbss) {
>> + ret = os_snprintf(buf + len, buflen - len,
>> + "\n No Link information present\n");
>> + if (os_snprintf_error(buflen - len, ret))
>> + return len;
>> + len += ret;
>> + }
>
> What is that " No Link information present" supposed to do here and why
> does this continue printing "LINK INFORMATION" after this?
Oops! return should be there. Thanks for pointing it out. This check is
there, let's say you have MLD with 2 links initially. Now, you have
disabled both of the links. So during this time, link info will not
printed. Hence, that check is there.
>
> That initial space on the line and now equals sign makes this somewhat
> inconvenient if one were to want to use a generic parser of
> <name>=<value> pairs.
Oh okay. Got it.
>
>> + ret = os_snprintf(buf + len, buflen - len,
>> + "LINK INFORMATION\n");
>
> This would be added after that " No Link information present" line..
Yeah. return should be there in the if().
Having said that, do you want me to re-spin a new version? Or will you
correct it while applying?
--
Aditya
More information about the Hostap
mailing list