Zbigniew Jędrzejewski-Szmek 62fe94
From e931d3f4241231e4102eda06adaf7cbfd68c6a5d Mon Sep 17 00:00:00 2001
Zbigniew Jędrzejewski-Szmek 62fe94
From: Thomas Hindoe Paaboel Andersen <phomes@gmail.com>
Zbigniew Jędrzejewski-Szmek 62fe94
Date: Sat, 27 Sep 2014 22:25:07 +0200
Zbigniew Jędrzejewski-Szmek 62fe94
Subject: [PATCH] bootchart: check return of strftime
Zbigniew Jędrzejewski-Szmek 62fe94
Zbigniew Jędrzejewski-Szmek 62fe94
Found by coverity. Fixes: CID#996314 and #996312
Zbigniew Jędrzejewski-Szmek 62fe94
---
Zbigniew Jędrzejewski-Szmek 62fe94
 src/bootchart/bootchart.c | 8 ++++++--
Zbigniew Jędrzejewski-Szmek 62fe94
 src/bootchart/svg.c       | 5 +++--
Zbigniew Jędrzejewski-Szmek 62fe94
 2 files changed, 9 insertions(+), 4 deletions(-)
Zbigniew Jędrzejewski-Szmek 62fe94
Zbigniew Jędrzejewski-Szmek 62fe94
diff --git a/src/bootchart/bootchart.c b/src/bootchart/bootchart.c
Zbigniew Jędrzejewski-Szmek 62fe94
index 8ef5ad18a6..366a5ab5d0 100644
Zbigniew Jędrzejewski-Szmek 62fe94
--- a/src/bootchart/bootchart.c
Zbigniew Jędrzejewski-Szmek 62fe94
+++ b/src/bootchart/bootchart.c
Zbigniew Jędrzejewski-Szmek 62fe94
@@ -389,7 +389,9 @@ int main(int argc, char *argv[]) {
Zbigniew Jędrzejewski-Szmek 62fe94
 
Zbigniew Jędrzejewski-Szmek 62fe94
                 if (!of && (access(arg_output_path, R_OK|W_OK|X_OK) == 0)) {
Zbigniew Jędrzejewski-Szmek 62fe94
                         t = time(NULL);
Zbigniew Jędrzejewski-Szmek 62fe94
-                        strftime(datestr, sizeof(datestr), "%Y%m%d-%H%M", localtime(&t);;
Zbigniew Jędrzejewski-Szmek 62fe94
+                        r = strftime(datestr, sizeof(datestr), "%Y%m%d-%H%M", localtime(&t);;
Zbigniew Jędrzejewski-Szmek 62fe94
+                        assert_se(r > 0);
Zbigniew Jędrzejewski-Szmek 62fe94
+
Zbigniew Jędrzejewski-Szmek 62fe94
                         snprintf(output_file, PATH_MAX, "%s/bootchart-%s.svg", arg_output_path, datestr);
Zbigniew Jędrzejewski-Szmek 62fe94
                         of = fopen(output_file, "we");
Zbigniew Jędrzejewski-Szmek 62fe94
                 }
Zbigniew Jędrzejewski-Szmek 62fe94
@@ -457,7 +459,9 @@ int main(int argc, char *argv[]) {
Zbigniew Jędrzejewski-Szmek 62fe94
 
Zbigniew Jędrzejewski-Szmek 62fe94
         if (!of) {
Zbigniew Jędrzejewski-Szmek 62fe94
                 t = time(NULL);
Zbigniew Jędrzejewski-Szmek 62fe94
-                strftime(datestr, sizeof(datestr), "%Y%m%d-%H%M", localtime(&t);;
Zbigniew Jędrzejewski-Szmek 62fe94
+                r = strftime(datestr, sizeof(datestr), "%Y%m%d-%H%M", localtime(&t);;
Zbigniew Jędrzejewski-Szmek 62fe94
+                assert_se(r > 0);
Zbigniew Jędrzejewski-Szmek 62fe94
+
Zbigniew Jędrzejewski-Szmek 62fe94
                 snprintf(output_file, PATH_MAX, "%s/bootchart-%s.svg", arg_output_path, datestr);
Zbigniew Jędrzejewski-Szmek 62fe94
                 of = fopen(output_file, "we");
Zbigniew Jędrzejewski-Szmek 62fe94
         }
Zbigniew Jędrzejewski-Szmek 62fe94
diff --git a/src/bootchart/svg.c b/src/bootchart/svg.c
Zbigniew Jędrzejewski-Szmek 62fe94
index 135883fb83..faf377e506 100644
Zbigniew Jędrzejewski-Szmek 62fe94
--- a/src/bootchart/svg.c
Zbigniew Jędrzejewski-Szmek 62fe94
+++ b/src/bootchart/svg.c
Zbigniew Jędrzejewski-Szmek 62fe94
@@ -162,7 +162,7 @@ static void svg_title(const char *build) {
Zbigniew Jędrzejewski-Szmek 62fe94
         char *c;
Zbigniew Jędrzejewski-Szmek 62fe94
         FILE *f;
Zbigniew Jędrzejewski-Szmek 62fe94
         time_t t;
Zbigniew Jędrzejewski-Szmek 62fe94
-        int fd;
Zbigniew Jędrzejewski-Szmek 62fe94
+        int fd, r;
Zbigniew Jędrzejewski-Szmek 62fe94
         struct utsname uts;
Zbigniew Jędrzejewski-Szmek 62fe94
 
Zbigniew Jędrzejewski-Szmek 62fe94
         /* grab /proc/cmdline */
Zbigniew Jędrzejewski-Szmek 62fe94
@@ -196,7 +196,8 @@ static void svg_title(const char *build) {
Zbigniew Jędrzejewski-Szmek 62fe94
 
Zbigniew Jędrzejewski-Szmek 62fe94
         /* date */
Zbigniew Jędrzejewski-Szmek 62fe94
         t = time(NULL);
Zbigniew Jędrzejewski-Szmek 62fe94
-        strftime(date, sizeof(date), "%a, %d %b %Y %H:%M:%S %z", localtime(&t);;
Zbigniew Jędrzejewski-Szmek 62fe94
+        r = strftime(date, sizeof(date), "%a, %d %b %Y %H:%M:%S %z", localtime(&t);;
Zbigniew Jędrzejewski-Szmek 62fe94
+        assert_se(r > 0);
Zbigniew Jędrzejewski-Szmek 62fe94
 
Zbigniew Jędrzejewski-Szmek 62fe94
         /* CPU type */
Zbigniew Jędrzejewski-Szmek 62fe94
         fd = openat(procfd, "cpuinfo", O_RDONLY);