diff options
author | Felix Fietkau <nbd@nbd.name> | 2021-09-20 18:00:03 +0200 |
---|---|---|
committer | Felix Fietkau <nbd@nbd.name> | 2021-09-20 18:00:05 +0200 |
commit | 06d11bbf1f2b61dcdb1b7088eec539fcd00b28a0 (patch) | |
tree | 114d96a01139ae345722c45e5240026f9e7ebaa9 /wireless.c | |
parent | 6fa9b042ff4dc2ef91a8b8c49cbc02cdfca0cf28 (diff) | |
download | netifd-06d11bbf1f2b61dcdb1b7088eec539fcd00b28a0.tar.gz |
wireless: only enable proxyarp/isolate for AP vifs
The settings might be present in the config as leftovers when switching
a vif from AP to sta mode. In that case, they will not be applied by wpad,
so they also must not be used by netifd
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Diffstat (limited to 'wireless.c')
-rw-r--r-- | wireless.c | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -793,6 +793,13 @@ wireless_interface_init_config(struct wireless_interface *vif) if ((cur = tb[VIF_ATTR_NETWORK])) vif->network = cur; + cur = tb[VIF_ATTR_MODE]; + if (cur) + vif->ap_mode = !strcmp(blobmsg_get_string(cur), "ap"); + + if (!vif->ap_mode) + return; + cur = tb[VIF_ATTR_ISOLATE]; if (cur) vif->isolate = blobmsg_get_bool(cur); @@ -801,9 +808,6 @@ wireless_interface_init_config(struct wireless_interface *vif) if (cur) vif->proxyarp = blobmsg_get_bool(cur); - cur = tb[VIF_ATTR_MODE]; - if (cur) - vif->ap_mode = !strcmp(blobmsg_get_string(cur), "ap"); } /* vlist update call for wireless interface list */ |