diff options
author | Alex Shi <alex.shi@linaro.org> | 2016-07-21 13:58:19 +0800 |
---|---|---|
committer | Alex Shi <alex.shi@linaro.org> | 2016-07-21 13:58:19 +0800 |
commit | 74b60e9f6f938d0cd4c7a71e583aee3cc6c5fbba (patch) | |
tree | 15cbca70f3f6d7e10da7d82154a78e6ca35dca8c /net/ax25/ax25_ip.c | |
parent | f24f1475658431d60bcd4e6e5de951ba1663dd43 (diff) | |
parent | 1d508e233d21a7848cf54d7d03b40dac2d9ea873 (diff) |
Merge branch 'linux-linaro-lsk-v4.1' into linux-linaro-lsk-v4.1-rtlsk-v4.1-16.07-rt
Conflicts:
mm/swap.c
Diffstat (limited to 'net/ax25/ax25_ip.c')
-rw-r--r-- | net/ax25/ax25_ip.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/net/ax25/ax25_ip.c b/net/ax25/ax25_ip.c index 7c646bb2c6f7..98d206b22653 100644 --- a/net/ax25/ax25_ip.c +++ b/net/ax25/ax25_ip.c @@ -229,8 +229,23 @@ netdev_tx_t ax25_ip_xmit(struct sk_buff *skb) } #endif +static bool ax25_validate_header(const char *header, unsigned int len) +{ + ax25_digi digi; + + if (!len) + return false; + + if (header[0]) + return true; + + return ax25_addr_parse(header + 1, len - 1, NULL, NULL, &digi, NULL, + NULL); +} + const struct header_ops ax25_header_ops = { .create = ax25_hard_header, + .validate = ax25_validate_header, }; EXPORT_SYMBOL(ax25_header_ops); |