From 4c9b2e72057ca3d1578b33ff75ad251bb8225a9c Mon Sep 17 00:00:00 2001 From: Andrey Smirnov Date: Wed, 6 Jan 2016 22:17:35 -0800 Subject: commands/hwclock: Check return value of rtc_read_time() It is possible for rtc_read_time() to fill struct rtc_time it returns with invalid values, so we have to check for its return value before using returned time. Signed-off-by: Andrey Smirnov Signed-off-by: Sascha Hauer --- commands/hwclock.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/commands/hwclock.c b/commands/hwclock.c index 7633132022..6a0fe0342a 100644 --- a/commands/hwclock.c +++ b/commands/hwclock.c @@ -93,11 +93,11 @@ static int do_hwclock(int argc, char *argv[]) char *env_name = NULL; int opt; int set = 0; + int ret; int ntp_to_hw = 0; char *ntpserver = NULL; while ((opt = getopt(argc, argv, "f:s:e:n:")) > 0) { - int ret; switch (opt) { case 'f': @@ -151,7 +151,9 @@ static int do_hwclock(int argc, char *argv[]) return rtc_set_time(r, &stm); } - rtc_read_time(r, &tm); + ret = rtc_read_time(r, &tm); + if (ret < 0) + return ret; if (env_name) { unsigned long time; -- cgit v1.2.3