summaryrefslogtreecommitdiff
path: root/net/ax25/ax25_ip.c
diff options
context:
space:
mode:
authorWillem de Bruijn <willemb@google.com>2016-03-09 21:58:32 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-04-20 15:42:00 +0900
commit8b8d278aa4de9335682bbd4a3bb619af015c859e (patch)
tree206439f2b6ac4cff73a10959c2fb5fdce2b4e91a /net/ax25/ax25_ip.c
parentcd8101d8ece8d776b79b7e0528cc8ba6d6c33562 (diff)
net: validate variable length ll headers
[ Upstream commit 2793a23aacbd754dbbb5cb75093deb7e4103bace ] Netdevice parameter hard_header_len is variously interpreted both as an upper and lower bound on link layer header length. The field is used as upper bound when reserving room at allocation, as lower bound when validating user input in PF_PACKET. Clarify the definition to be maximum header length. For validation of untrusted headers, add an optional validate member to header_ops. Allow bypassing of validation by passing CAP_SYS_RAWIO, for instance for deliberate testing of corrupt input. In this case, pad trailing bytes, as some device drivers expect completely initialized headers. See also http://comments.gmane.org/gmane.linux.network/401064 Signed-off-by: Willem de Bruijn <willemb@google.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net/ax25/ax25_ip.c')
0 files changed, 0 insertions, 0 deletions