summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorJozsef Kadlecsik <kadlec@blackhole.kfki.hu>2018-06-01 20:59:14 +0200
committerJozsef Kadlecsik <kadlec@blackhole.kfki.hu>2018-06-01 20:59:14 +0200
commitcef553009b5181ae3c9f465c0e300ec8c8b37fbd (patch)
treed29251244ca4ff0d8a737c474971c90e87c3e2a8 /lib
parent8b140bd12daffd6b3c6e50af9c55f8a601900664 (diff)
Limit max timeout value to (UINT_MAX >> 1)/MSEC_PER_SEC
Due to the negative value condition in msecs_to_jiffies(), the real max possible timeout value must be set to (UINT_MAX >> 1)/MSEC_PER_SEC. Neutron Soutmun proposed the proper fix, but an insufficient one was applied, see https://patchwork.ozlabs.org/patch/400405/.
Diffstat (limited to 'lib')
-rw-r--r--lib/parse.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/parse.c b/lib/parse.c
index 7cd6436..9a79ccd 100644
--- a/lib/parse.c
+++ b/lib/parse.c
@@ -1334,7 +1334,7 @@ ipset_parse_timeout(struct ipset_session *session,
assert(opt == IPSET_OPT_TIMEOUT);
assert(str);
- err = string_to_number_ll(session, str, 0, UINT_MAX/1000, &llnum);
+ err = string_to_number_ll(session, str, 0, (UINT_MAX>>1)/1000, &llnum);
if (err == 0) {
/* Timeout is expected to be 32bits wide, so we have
to convert it here */