debuginfod/debuginfod-client.c: use long for cache time configurations

Message ID 20211209095123.3178606-1-alex@linutronix.de
State Committed
Headers
Series debuginfod/debuginfod-client.c: use long for cache time configurations |

Commit Message

Alexander Kanavin Dec. 9, 2021, 9:51 a.m. UTC
  time_t is platform dependent and some of architectures e.g.
x32, riscv32, arc use 64bit time_t even while they are 32bit
architectures, therefore directly using integer printf formats will not
work portably.

Use a plain long everywhere as the intervals are small enough
that it will not be problematic.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 debuginfod/debuginfod-client.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
  

Comments

Frank Ch. Eigler Dec. 9, 2021, 11:35 a.m. UTC | #1
Hi -

> x32, riscv32, arc use 64bit time_t even while they are 32bit
> architectures, therefore directly using integer printf formats will not
> work portably.

> Use a plain long everywhere as the intervals are small enough
> that it will not be problematic.

lgtm!

- FChE
  
Mark Wielaard Dec. 15, 2021, 11:54 p.m. UTC | #2
Hi,

On Thu, Dec 09, 2021 at 06:35:14AM -0500, Frank Ch. Eigler via Elfutils-devel wrote:
> > x32, riscv32, arc use 64bit time_t even while they are 32bit
> > architectures, therefore directly using integer printf formats will not
> > work portably.
> 
> > Use a plain long everywhere as the intervals are small enough
> > that it will not be problematic.
> 
> lgtm!

Added ChangeLog entry and pushed.

Thanks,

Mark
  

Patch

diff --git a/debuginfod/debuginfod-client.c b/debuginfod/debuginfod-client.c
index 9bf97bfc..024b0954 100644
--- a/debuginfod/debuginfod-client.c
+++ b/debuginfod/debuginfod-client.c
@@ -135,17 +135,17 @@  struct debuginfod_client
    how frequently the cache should be cleaned. The file's st_mtime represents
    the time of last cleaning.  */
 static const char *cache_clean_interval_filename = "cache_clean_interval_s";
-static const time_t cache_clean_default_interval_s = 86400; /* 1 day */
+static const long cache_clean_default_interval_s = 86400; /* 1 day */
 
 /* The cache_miss_default_s within the debuginfod cache specifies how
    frequently the 000-permision file should be released.*/
-static const time_t cache_miss_default_s = 600; /* 10 min */
+static const long cache_miss_default_s = 600; /* 10 min */
 static const char *cache_miss_filename = "cache_miss_s";
 
 /* The cache_max_unused_age_s file within the debuginfod cache specifies the
    the maximum time since last access that a file will remain in the cache.  */
 static const char *cache_max_unused_age_filename = "max_unused_age_s";
-static const time_t cache_default_max_unused_age_s = 604800; /* 1 week */
+static const long cache_default_max_unused_age_s = 604800; /* 1 week */
 
 /* Location of the cache of files downloaded from debuginfods.
    The default parent directory is $HOME, or '/' if $HOME doesn't exist.  */