[lttng-dev] [PATCH lttng-tools] Fix: Integer overflowed argument
Jérémie Galarneau
jeremie.galarneau at efficios.com
Wed May 18 18:24:18 UTC 2016
Merged, thanks!
Jérémie
On Tue, May 17, 2016 at 9:11 AM, Mathieu Desnoyers
<mathieu.desnoyers at efficios.com> wrote:
> Found by Coverity:
>
> CID 1242317 (#1 of 2): Integer overflowed argument (INTEGER_OVERFLOW)25.
> overflow_sink: Overflowed or truncated value (or a value computed from
> an overflowed or truncated value) new_nbmem * 304UL used as critical
> argument to function.
>
> CID 1242317 (#2 of 2): Integer overflowed argument (INTEGER_OVERFLOW)27.
> overflow_sink: Overflowed or truncated value (or a value computed from
> an overflowed or truncated value) (new_nbmem - nbmem) * 304UL used as
> critical argument to function.
>
> Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers at efficios.com>
> ---
> src/bin/lttng-sessiond/syscall.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/bin/lttng-sessiond/syscall.c b/src/bin/lttng-sessiond/syscall.c
> index 02fec15..cbc8cdf 100644
> --- a/src/bin/lttng-sessiond/syscall.c
> +++ b/src/bin/lttng-sessiond/syscall.c
> @@ -82,7 +82,7 @@ int syscall_init_table(void)
>
> /* Double memory size. */
> new_nbmem = max(index, nbmem << 1);
> - if (new_nbmem < nbmem) {
> + if (new_nbmem > SIZE_MAX / sizeof(*new_list)) {
> /* Overflow, stop everything, something went really wrong. */
> ERR("Syscall listing memory size overflow. Stopping");
> free(syscall_table);
> --
> 2.1.4
>
--
Jérémie Galarneau
EfficiOS Inc.
http://www.efficios.com
More information about the lttng-dev
mailing list