* [PATCH] bonding: correctly handle out of range parameters for lp_interval
@ 2014-03-06 18:03 Sasha Levin
2014-03-06 19:15 ` Nikolay Aleksandrov
0 siblings, 1 reply; 2+ messages in thread
From: Sasha Levin @ 2014-03-06 18:03 UTC (permalink / raw)
To: fubar, vfalico, andy; +Cc: davem, netdev, linux-kernel, nikolay, Sasha Levin
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 "bonding: add infrastructure for an option API".
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
---
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 23f3655..4d35cdc 100644
--- a/drivers/net/bonding/bond_options.c
+++ b/drivers/net/bonding/bond_options.c
@@ -124,6 +124,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[] = {
--
1.7.2.5
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [PATCH] bonding: correctly handle out of range parameters for lp_interval
2014-03-06 18:03 [PATCH] bonding: correctly handle out of range parameters for lp_interval Sasha Levin
@ 2014-03-06 19:15 ` Nikolay Aleksandrov
0 siblings, 0 replies; 2+ messages in thread
From: Nikolay Aleksandrov @ 2014-03-06 19:15 UTC (permalink / raw)
To: Sasha Levin, fubar, vfalico, andy; +Cc: davem, netdev, linux-kernel
On 03/06/2014 07:03 PM, Sasha Levin wrote:
> 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 "bonding: add infrastructure for an option API".
>
> Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
> ---
> 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 23f3655..4d35cdc 100644
> --- a/drivers/net/bonding/bond_options.c
> +++ b/drivers/net/bonding/bond_options.c
> @@ -124,6 +124,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[] = {
>
Thanks!
One note though, the commit that introduces the problem is not that one.
It's 4325b374f84e59226851636df946f2500d0bfeba ("bonding: convert
lp_interval to use the new option API"), after that's corrected you
can add my:
Acked-by: Nikolay Aleksandrov <nikolay@redhat.com>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2014-03-06 19:15 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-06 18:03 [PATCH] bonding: correctly handle out of range parameters for lp_interval Sasha Levin
2014-03-06 19:15 ` Nikolay Aleksandrov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).