Eric Blake 53a90b9724 cutils: Assert in-range base for string-to-integer conversions
POSIX states that the value of endptr is unspecified if strtol()
fails with EINVAL due to an invalid base argument.  Since none of
the callers to check_strtox_error() initialized endptr, we could
end up propagating uninitialized data back to a caller on error.
However, passing an out-of-range base is already a sign of poor
programming, so let's just assert that base is in range, at which
point check_strtox_error() can be tightened to assert that it is
receiving an initialized ep that points somewhere within the
caller's original string, regardless of whether strto*() succeeded
or failed with ERANGE.

Reported-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Signed-off-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20181206151856.77503-1-eblake@redhat.com>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
2018-12-11 18:28:47 +01:00
..
2018-10-29 13:35:22 +00:00
2018-09-25 15:50:15 +02:00
2018-10-02 18:47:55 +02:00
2017-09-22 14:11:25 +02:00
2017-09-22 14:11:23 +02:00
2018-10-02 18:47:55 +02:00
2018-10-29 16:23:17 -04:00
2018-06-01 16:01:29 +01:00
2018-10-02 18:47:55 +02:00
2018-10-02 18:47:55 +02:00
2018-10-02 18:47:55 +02:00
2018-08-24 20:26:37 +02:00
2018-06-29 12:32:10 +02:00
2017-12-20 22:01:24 +08:00