* [PATCH net-next 2/2] sysctl: range checking in do_proc_dointvec_ms_jiffies_conv [not found] <cover.1374654531.git.ffusco@redhat.com> @ 2013-07-24 8:39 ` Francesco Fusco 2013-07-24 14:35 ` Sergei Shtylyov 2013-07-26 21:23 ` David Miller 0 siblings, 2 replies; 3+ messages in thread From: Francesco Fusco @ 2013-07-24 8:39 UTC (permalink / raw) To: davem; +Cc: netdev, Andrew Morton, linux-kernel When (integer) sysctl values are expressed in ms and have to be represented internally as jiffies. The msecs_to_jiffies function returns an unsigned long, which gets assigned to the integer. This patch prevents the value to be assigned if bigger than INT_MAX, done in a similar way as in cba9f3 ("Range checking in do_proc_dointvec_(userhz_)jiffies_conv"). Signed-off-by: Francesco Fusco <ffusco@redhat.com> CC: Andrew Morton <akpm@linux-foundation.org> CC: linux-kernel@vger.kernel.org --- kernel/sysctl.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/kernel/sysctl.c b/kernel/sysctl.c index ac09d98..00813e5 100644 --- a/kernel/sysctl.c +++ b/kernel/sysctl.c @@ -2346,7 +2346,11 @@ static int do_proc_dointvec_ms_jiffies_conv(bool *negp, unsigned long *lvalp, int write, void *data) { if (write) { - *valp = msecs_to_jiffies(*negp ? -*lvalp : *lvalp); + unsigned long jif = 0; + jif = msecs_to_jiffies(*negp ? -*lvalp : *lvalp); + if (jif > INT_MAX) + return 1; + *valp = (int)jif; } else { int val = *valp; unsigned long lval; -- 1.8.3.1 ^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH net-next 2/2] sysctl: range checking in do_proc_dointvec_ms_jiffies_conv 2013-07-24 8:39 ` [PATCH net-next 2/2] sysctl: range checking in do_proc_dointvec_ms_jiffies_conv Francesco Fusco @ 2013-07-24 14:35 ` Sergei Shtylyov 2013-07-26 21:23 ` David Miller 1 sibling, 0 replies; 3+ messages in thread From: Sergei Shtylyov @ 2013-07-24 14:35 UTC (permalink / raw) To: Francesco Fusco; +Cc: davem, netdev, Andrew Morton, linux-kernel Hello. On 24-07-2013 12:39, Francesco Fusco wrote: > When (integer) sysctl values are expressed in ms and have to be > represented internally as jiffies. The msecs_to_jiffies function > returns an unsigned long, which gets assigned to the integer. > This patch prevents the value to be assigned if bigger than > INT_MAX, done in a similar way as in cba9f3 ("Range checking in > do_proc_dointvec_(userhz_)jiffies_conv"). > Signed-off-by: Francesco Fusco <ffusco@redhat.com> > CC: Andrew Morton <akpm@linux-foundation.org> > CC: linux-kernel@vger.kernel.org > --- > kernel/sysctl.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > diff --git a/kernel/sysctl.c b/kernel/sysctl.c > index ac09d98..00813e5 100644 > --- a/kernel/sysctl.c > +++ b/kernel/sysctl.c > @@ -2346,7 +2346,11 @@ static int do_proc_dointvec_ms_jiffies_conv(bool *negp, unsigned long *lvalp, > int write, void *data) > { > if (write) { > - *valp = msecs_to_jiffies(*negp ? -*lvalp : *lvalp); > + unsigned long jif = 0; Pointless initializer. And an empty line wouldn't hurt after declaration. > + jif = msecs_to_jiffies(*negp ? -*lvalp : *lvalp); One space after = is enough. > + if (jif > INT_MAX) > + return 1; > + *valp = (int)jif; WBR, Sergei ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH net-next 2/2] sysctl: range checking in do_proc_dointvec_ms_jiffies_conv 2013-07-24 8:39 ` [PATCH net-next 2/2] sysctl: range checking in do_proc_dointvec_ms_jiffies_conv Francesco Fusco 2013-07-24 14:35 ` Sergei Shtylyov @ 2013-07-26 21:23 ` David Miller 1 sibling, 0 replies; 3+ messages in thread From: David Miller @ 2013-07-26 21:23 UTC (permalink / raw) To: ffusco; +Cc: netdev, akpm, linux-kernel From: Francesco Fusco <ffusco@redhat.com> Date: Wed, 24 Jul 2013 10:39:07 +0200 > When (integer) sysctl values are expressed in ms and have to be > represented internally as jiffies. The msecs_to_jiffies function > returns an unsigned long, which gets assigned to the integer. > This patch prevents the value to be assigned if bigger than > INT_MAX, done in a similar way as in cba9f3 ("Range checking in > do_proc_dointvec_(userhz_)jiffies_conv"). > > Signed-off-by: Francesco Fusco <ffusco@redhat.com> Applied with the changes suggested by Sergei. ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2013-07-26 21:23 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <cover.1374654531.git.ffusco@redhat.com>
2013-07-24 8:39 ` [PATCH net-next 2/2] sysctl: range checking in do_proc_dointvec_ms_jiffies_conv Francesco Fusco
2013-07-24 14:35 ` Sergei Shtylyov
2013-07-26 21:23 ` David Miller
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox