diff --git a/subsys/net/l2/ieee802154/ieee802154.c b/subsys/net/l2/ieee802154/ieee802154.c index 09fdf8d28cfc9..bc9af9700bd2a 100644 --- a/subsys/net/l2/ieee802154/ieee802154.c +++ b/subsys/net/l2/ieee802154/ieee802154.c @@ -317,7 +317,7 @@ static bool ieeee802154_check_dst_addr(struct net_if *iface, struct ieee802154_m if (!(dst_plain->pan_id == IEEE802154_BROADCAST_PAN_ID || dst_plain->pan_id == sys_cpu_to_le16(ctx->pan_id))) { LOG_DBG("Frame PAN ID does not match!"); - return false; + goto out; } if (mhr->fs->fc.dst_addr_mode == IEEE802154_ADDR_MODE_SHORT) { diff --git a/subsys/net/l2/ieee802154/ieee802154_mgmt.c b/subsys/net/l2/ieee802154/ieee802154_mgmt.c index 5703a4dfe7063..993bcc12ae919 100644 --- a/subsys/net/l2/ieee802154/ieee802154_mgmt.c +++ b/subsys/net/l2/ieee802154/ieee802154_mgmt.c @@ -567,6 +567,7 @@ static int ieee802154_associate(uint32_t mgmt_request, struct net_if *iface, if (ieee802154_radio_send(iface, pkt, pkt->buffer)) { net_pkt_unref(pkt); ret = -EIO; + k_sem_give(&ctx->scan_ctx_lock); NET_ERR("Could not associate: cannot send association request"); goto out; }