time: settimeofday: Validate the values of tv from user
authorSasha Levin <sasha.levin@oracle.com>
Thu, 4 Dec 2014 00:22:48 +0000 (19:22 -0500)
committerJiri Slaby <jslaby@suse.cz>
Thu, 29 Jan 2015 14:45:01 +0000 (15:45 +0100)
commit7d191a70e81163aabc6e6ad1ad578ca4c6cc6981
tree4eed8402a942ed38c4d70239d5b611bbbe54e27b
parent8dc75a54f3dc579f615840c4200b17b17665bce7
time: settimeofday: Validate the values of tv from user

commit 6ada1fc0e1c4775de0e043e1bd3ae9d065491aa5 upstream.

An unvalidated user input is multiplied by a constant, which can result in
an undefined behaviour for large values. While this is validated later,
we should avoid triggering undefined behaviour.

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
[jstultz: include trivial milisecond->microsecond correction noticed
by Andy]
Signed-off-by: John Stultz <john.stultz@linaro.org>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
include/linux/time.h
kernel/time.c