[LEDE-DEV] [OpenWrt-Devel] [PATCH] mac80211: pass hostapd control socket to mesh-mode supplicant
Daniel Golle
daniel at makrotopia.org
Thu Apr 19 04:04:45 PDT 2018
Hi Daniel
On Thu, Apr 19, 2018 at 12:52:56PM +0200, daniel wrote:
> This patch breaks encrypted mesh mode.
Yes, I reverted it yesterday afternoon...
>
> I agree, there is still something wrong with the logic when using encrypted mesh.
Yes, and that's on my agenda for tonight (fixing /lib/netifd/wireless/mac80211.sh)
> Also the setting of the mesh parameters fails, because nl80211_mesh_join must
> happen before nl80211_update_mesh_config. This results in these errors:
> ---
> netifd: radio1 (6314): command failed: Link has been severed (-67)
> ---
> Originating from net/wireless/nl80211.c:nl80211_update_mesh_config():6133
> through calling in 'iw set mesh_params' at /lib/netifd/wireless/mac80211.sh:678
>
> When using mesh without encryption this is not an issue, because
> 'iw mesh_join' is called before 'iw set mesh_params'
> in '/lib/netifd/wireless/mac80211.sh:678
>
> With encryption the setting of the parameters need to happen after
> wpa_supplicant triggered nl80211_mesh_join.
>
> But I don't know how to solve this properly yet either...
Making wpa_supplicant set the mesh parameters (it already does that,
but uses non-configurable default values). I added support to at least
handle mesh_fwding, because it was what I needed for my use-case, see
https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=ff8df2b3f9c161edc3ab543bdbeb04a9fb45c959
Cheers
Daniel
>
> On 04/13/2018 01:41 AM, Daniel Golle wrote:
> > Unlike when operating in Ad-Hoc mode, we apparently need to pass the
> > hostapd control socket interface to wpa_supplicant when using 802.11s
> > mesh mode.
> >
> > There also seems to still be something wrong with the logic setting
> > channel and (v)htmode parameters when using AP + mesh...
> >
> > Signed-off-by: Daniel Golle <daniel at makrotopia.org>
> > ---
> > package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh b/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh
> > index bf9d52ae42..3a1d475a5c 100644
> > --- a/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh
> > +++ b/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh
> > @@ -633,7 +633,7 @@ mac80211_setup_vif() {
> > if [ -n "$key" ]; then
> > wireless_vif_parse_encryption
> > freq="$(get_freq "$phy" "$channel")"
> > - mac80211_setup_supplicant_noctl || failed=1
> > + mac80211_setup_supplicant || failed=1
> > else
> > json_get_vars mesh_id mcast_rate
> >
> >
>
> --
> Regards
>
> Daniel Danzberger
> embeDD GmbH, Alter Postplatz 2, CH-6370 Stans
>
> _______________________________________________
> Lede-dev mailing list
> Lede-dev at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/lede-dev
More information about the Lede-dev
mailing list