diff options
Diffstat (limited to '')
-rw-r--r-- | net/llc/llc_station.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/llc/llc_station.c b/net/llc/llc_station.c index c29170e76..64e2c67e1 100644 --- a/net/llc/llc_station.c +++ b/net/llc/llc_station.c @@ -77,6 +77,9 @@ static int llc_station_ac_send_test_r(struct sk_buff *skb) u32 data_size; struct sk_buff *nskb; + if (skb->mac_len < ETH_HLEN) + goto out; + /* The test request command is type U (llc_len = 3) */ data_size = ntohs(eth_hdr(skb)->h_proto) - 3; nskb = llc_alloc_frame(NULL, skb->dev, LLC_PDU_TYPE_U, data_size); |