diff --git a/src/agent.c b/src/agent.c index 10e0506ddb6a4437d218792b821a0ec9969e4134..76f4d16fb2b850242e2ccd8fd16001d998a06327 100644 --- a/src/agent.c +++ b/src/agent.c @@ -2292,8 +2292,18 @@ static void wifi_cac_event_handler(void *c, struct blob_attr *msg) event = blobmsg_data(tb[1]); radio = agent_get_radio_with_ifname(a, ifname); - if (!radio) + if (!radio) { +#if (EASYMESH_VERSION >=6) + /* If event reported on mld netdev */ + if (agent_get_mld_by_ifname(a, ifname) && + (!strcmp(event, "cac-start") || !strcmp(event, "cac-end"))) { + radio = agent_get_radio_by_band(a, BAND_5); + if (!radio) + return; + } else +#endif return; + } /* Update preferences - send CMDU when changed */ if (!strcmp(event, "cac-start") || !strcmp(event, "cac-end"))