[stgt] [PATCH] util.h: correct range check of str_to_int_gt() and str_to_int_lt()
Ryusuke Konishi
konishi.ryusuke at lab.ntt.co.jp
Tue Dec 10 05:49:47 CET 2013
The range checks of str_to_int_gt() and str_to_int_lt() are not
implemented literally. The current definitions fail to reject a
marginal value.
Due to this difference, tgtd accepts option "-t 0" without an error,
which overrides nr_iothreads to 0 and causes clients to hang.
This corrects str_to_int_gt()/str_to_int_lt() and prevents the issue.
Signed-off-by: Ryusuke Konishi <konishi.ryusuke at lab.ntt.co.jp>
---
usr/util.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/usr/util.h b/usr/util.h
index 08a6dd3..0e34c35 100644
--- a/usr/util.h
+++ b/usr/util.h
@@ -159,7 +159,7 @@ struct signalfd_siginfo {
#define str_to_int_gt(str, val, minv) \
({ \
int ret = str_to_int(str, val); \
- if (!ret && (val < minv)) \
+ if (!ret && (val <= minv)) \
ret = ERANGE; \
ret; \
})
@@ -177,7 +177,7 @@ struct signalfd_siginfo {
#define str_to_int_lt(str, val, maxv) \
({ \
int ret = str_to_int(str, val); \
- if (!ret && (val > maxv)) \
+ if (!ret && (val >= maxv)) \
ret = ERANGE; \
ret; \
})
--
1.7.9.3
--
To unsubscribe from this list: send the line "unsubscribe stgt" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
More information about the stgt
mailing list