blob: 5bd6ba961c20d32bdcfeecc0a7c014e47b2be659 [file] [log] [blame]
Andrew Geisslerc926e172021-05-07 16:11:35 -05001From 14dfe84943b8f9e6f504536d8735ef6356210b40 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Mon, 19 Apr 2021 23:29:10 +0200
4Subject: [PATCH] debuginfod/debuginfod-client.c: correct string format on
5 32bit arches with 64bit time_t
6
7Use intmax_t to print time_t
8
9time_t is platform dependent and some of architectures e.g.
10x32, riscv32, arc use 64bit time_t even while they are 32bit
11architectures, therefore directly using integer printf formats will not
12work portably, use intmax_t to typecast time_t into printf family of
13functions
14
15Upstream-Status: Pending
16
17Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
18Signed-off-by: Khem Raj <raj.khem@gmail.com>
19---
20 debuginfod/debuginfod-client.c | 10 +++++-----
21 1 file changed, 5 insertions(+), 5 deletions(-)
22
23diff --git a/debuginfod/debuginfod-client.c b/debuginfod/debuginfod-client.c
24index de26af5..39e28f2 100644
25--- a/debuginfod/debuginfod-client.c
26+++ b/debuginfod/debuginfod-client.c
27@@ -229,7 +229,7 @@ debuginfod_init_cache (char *cache_path, char *interval_path, char *maxage_path)
28 if (fd < 0)
29 return -errno;
30
31- if (dprintf(fd, "%ld", cache_clean_default_interval_s) < 0)
32+ if (dprintf(fd, "%jd", (intmax_t)cache_clean_default_interval_s) < 0)
33 return -errno;
34
35 /* init max age config file. */
36@@ -237,7 +237,7 @@ debuginfod_init_cache (char *cache_path, char *interval_path, char *maxage_path)
37 && (fd = open(maxage_path, O_CREAT | O_RDWR, DEFFILEMODE)) < 0)
38 return -errno;
39
40- if (dprintf(fd, "%ld", cache_default_max_unused_age_s) < 0)
41+ if (dprintf(fd, "%jd", (intmax_t)cache_default_max_unused_age_s) < 0)
42 return -errno;
43
44 return 0;
45@@ -263,7 +263,7 @@ debuginfod_clean_cache(debuginfod_client *c,
46 if (interval_file == NULL)
47 return -errno;
48
49- int rc = fprintf(interval_file, "%ld", cache_clean_default_interval_s);
50+ int rc = fprintf(interval_file, "%jd", (intmax_t)cache_clean_default_interval_s);
51 fclose(interval_file);
52
53 if (rc < 0)
54@@ -275,7 +275,7 @@ debuginfod_clean_cache(debuginfod_client *c,
55 interval_file = fopen(interval_path, "r");
56 if (interval_file)
57 {
58- if (fscanf(interval_file, "%ld", &clean_interval) != 1)
59+ if (fscanf(interval_file, "%jd", (intmax_t*)(&clean_interval)) != 1)
60 clean_interval = cache_clean_default_interval_s;
61 fclose(interval_file);
62 }
63@@ -291,7 +291,7 @@ debuginfod_clean_cache(debuginfod_client *c,
64 max_unused_file = fopen(max_unused_path, "r");
65 if (max_unused_file)
66 {
67- if (fscanf(max_unused_file, "%ld", &max_unused_age) != 1)
68+ if (fscanf(max_unused_file, "%jd", (intmax_t*)(&max_unused_age)) != 1)
69 max_unused_age = cache_default_max_unused_age_s;
70 fclose(max_unused_file);
71 }
72--
732.31.1
74