Re: [PATCH v2 7/9] test_sysctl: add simple proc_dointvec() case

From: Luis R. Rodriguez
Date: Tue May 16 2017 - 18:46:24 EST


On Mon, Feb 13, 2017 at 02:00:13PM -0800, Kees Cook wrote:
> On Fri, Feb 10, 2017 at 4:36 PM, Luis R. Rodriguez <mcgrof@xxxxxxxxxx> wrote:
> > diff --git a/tools/testing/selftests/sysctl/sysctl.sh b/tools/testing/selftests/sysctl/sysctl.sh
> > index 14b9d875db42..45fd2ee5739c 100755
> > --- a/tools/testing/selftests/sysctl/sysctl.sh
> > +++ b/tools/testing/selftests/sysctl/sysctl.sh
> > @@ -24,6 +24,7 @@ TEST_FILE=$(mktemp)
> > @@ -261,6 +268,48 @@ run_limit_digit()
> > test_rc
> > }
> >
> > +# You are using an int
> > +run_limit_digit_int()
> > +{
> > + echo -n "Testing INT_MAX works ..."
> > + reset_vals
> > + TEST_STR="$INT_MAX"
> > + echo -n $TEST_STR > $TARGET
> > +
> > + if ! verify "${TARGET}"; then
> > + echo "FAIL" >&2
> > + rc=1
> > + else
> > + echo "ok"
> > + fi
> > + test_rc
> > +
> > + echo -n "Testing INT_MAX + 1 will fail as expected..."
> > + reset_vals
> > + TEST_STR=$(($INT_MAX+1))
>
> Is the shell always going to do the right thing here? Maybe these test
> values should be explicitly hard-coded? I'm on the fence...

Will use the good 'ol time tested:

let TEST_STR=$INT_MAX+1

I had used it for all other sums before, not sure why I went short-cut mode.
Either way this is requiring /bin/bash at the top header, but yeah not sure
when that short cut mode addition was added to bash. Better to be both safe
and consistent.

Luis