]> git.baikalelectronics.ru Git - kernel.git/commit
packet: validate variable length ll headers
authorWillem de Bruijn <willemb@google.com>
Thu, 10 Mar 2016 02:58:34 +0000 (21:58 -0500)
committerDavid S. Miller <davem@davemloft.net>
Thu, 10 Mar 2016 03:13:01 +0000 (22:13 -0500)
commitb1bc82f5019f0b7d16f198582ad1cae9e0d91db2
tree5044c8b8a7af7aa6c9bf017a51da01f3ca334274
parentebe2233c7fdb7e99f9dc27c486d1442a6e0bceb3
packet: validate variable length ll headers

Replace link layer header validation check ll_header_truncate with
more generic dev_validate_header.

Validation based on hard_header_len incorrectly drops valid packets
in variable length protocols, such as AX25. dev_validate_header
calls header_ops.validate for such protocols to ensure correctness
below hard_header_len.

See also http://comments.gmane.org/gmane.linux.network/401064

Fixes de0a9702b518 ("packet: make packet_snd fail on len smaller than l2 header")
Signed-off-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/packet/af_packet.c