diff options
author | Sasha Levin <sasha.levin@oracle.com> | 2014-03-06 16:53:11 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-03-06 17:06:17 -0500 |
commit | 5bd4e4c158ceb4e76ce9ed005c876d59caad8af2 (patch) | |
tree | f86025147af2f0f35b6210bd1c668c9c24a943f7 /drivers/net/bonding/bond_options.c | |
parent | d2d273ffabd315eecefce21a4391d44b6e156b73 (diff) | |
download | linux-5bd4e4c158ceb4e76ce9ed005c876d59caad8af2.tar.bz2 |
bonding: correctly handle out of range parameters for lp_interval
We didn't correctly check cases where the value for lp_interval is not
within the legal range due to a missing table terminator.
This would let userspace trigger a kernel panic by specifying a value out
of range:
echo -1 > /sys/devices/virtual/net/bond0/bonding/lp_interval
Introduced by commit 4325b374f84 ("bonding: convert lp_interval to use
the new option API").
Acked-by: Nikolay Aleksandrov <nikolay@redhat.com>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/bonding/bond_options.c')
-rw-r--r-- | drivers/net/bonding/bond_options.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/bonding/bond_options.c b/drivers/net/bonding/bond_options.c index c37878432717..298c26509095 100644 --- a/drivers/net/bonding/bond_options.c +++ b/drivers/net/bonding/bond_options.c @@ -121,6 +121,7 @@ static struct bond_opt_value bond_resend_igmp_tbl[] = { static struct bond_opt_value bond_lp_interval_tbl[] = { { "minval", 1, BOND_VALFLAG_MIN | BOND_VALFLAG_DEFAULT}, { "maxval", INT_MAX, BOND_VALFLAG_MAX}, + { NULL, -1, 0}, }; static struct bond_option bond_opts[] = { |