| From foo@baz Fri Jan 4 20:27:35 CET 2019 |
| From: Willem de Bruijn <willemb@google.com> |
| Date: Sun, 23 Dec 2018 12:52:18 -0500 |
| Subject: ieee802154: lowpan_header_create check must check daddr |
| |
| From: Willem de Bruijn <willemb@google.com> |
| |
| [ Upstream commit 40c3ff6d5e0809505a067dd423c110c5658c478c ] |
| |
| Packet sockets may call dev_header_parse with NULL daddr. Make |
| lowpan_header_ops.create fail. |
| |
| Fixes: 87a93e4eceb4 ("ieee802154: change needed headroom/tailroom") |
| Signed-off-by: Willem de Bruijn <willemb@google.com> |
| Acked-by: Alexander Aring <aring@mojatatu.com> |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| net/ieee802154/6lowpan/tx.c | 3 +++ |
| 1 file changed, 3 insertions(+) |
| |
| --- a/net/ieee802154/6lowpan/tx.c |
| +++ b/net/ieee802154/6lowpan/tx.c |
| @@ -48,6 +48,9 @@ int lowpan_header_create(struct sk_buff |
| const struct ipv6hdr *hdr = ipv6_hdr(skb); |
| struct neighbour *n; |
| |
| + if (!daddr) |
| + return -EINVAL; |
| + |
| /* TODO: |
| * if this package isn't ipv6 one, where should it be routed? |
| */ |