diff options
Diffstat (limited to 'net/mac802154/wpan.c')
| -rw-r--r-- | net/mac802154/wpan.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/net/mac802154/wpan.c b/net/mac802154/wpan.c index 3c3069fd6971..547838822d5e 100644 --- a/net/mac802154/wpan.c +++ b/net/mac802154/wpan.c | |||
| @@ -462,7 +462,10 @@ mac802154_subif_frame(struct mac802154_sub_if_data *sdata, struct sk_buff *skb, | |||
| 462 | skb->pkt_type = PACKET_OTHERHOST; | 462 | skb->pkt_type = PACKET_OTHERHOST; |
| 463 | break; | 463 | break; |
| 464 | default: | 464 | default: |
| 465 | break; | 465 | spin_unlock_bh(&sdata->mib_lock); |
| 466 | pr_debug("invalid dest mode\n"); | ||
| 467 | kfree_skb(skb); | ||
| 468 | return NET_RX_DROP; | ||
| 466 | } | 469 | } |
| 467 | 470 | ||
| 468 | spin_unlock_bh(&sdata->mib_lock); | 471 | spin_unlock_bh(&sdata->mib_lock); |
| @@ -573,6 +576,7 @@ void mac802154_wpans_rx(struct mac802154_priv *priv, struct sk_buff *skb) | |||
| 573 | ret = mac802154_parse_frame_start(skb, &hdr); | 576 | ret = mac802154_parse_frame_start(skb, &hdr); |
| 574 | if (ret) { | 577 | if (ret) { |
| 575 | pr_debug("got invalid frame\n"); | 578 | pr_debug("got invalid frame\n"); |
| 579 | kfree_skb(skb); | ||
| 576 | return; | 580 | return; |
| 577 | } | 581 | } |
| 578 | 582 | ||
