| From cb75ec49c0a92f55b2241eb1cd95a3fdf63f0dac Mon Sep 17 00:00:00 2001 |
| From: Rosen Penev <rosenp@gmail.com> |
| Date: Mon, 13 Apr 2020 14:14:45 -0400 |
| Subject: [PATCH] nfs-utils: print time in 64-bit |
| |
| musl 1.2.0 defines time_t as 64-bit, even under 32-bit OSes. |
| |
| Fixes -Wformat errors. |
| |
| Signed-off-by: Rosen Penev <rosenp@gmail.com> |
| Signed-off-by: Steve Dickson <steved@redhat.com> |
| Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> |
| --- |
| support/nfs/cacheio.c | 3 ++- |
| utils/idmapd/idmapd.c | 11 ++++++----- |
| 2 files changed, 8 insertions(+), 6 deletions(-) |
| |
| diff --git a/support/nfs/cacheio.c b/support/nfs/cacheio.c |
| index 7c4cf373..126c1283 100644 |
| --- a/support/nfs/cacheio.c |
| +++ b/support/nfs/cacheio.c |
| @@ -20,6 +20,7 @@ |
| #endif |
| |
| #include <nfslib.h> |
| +#include <inttypes.h> |
| #include <stdio.h> |
| #include <stdio_ext.h> |
| #include <string.h> |
| @@ -238,7 +239,7 @@ cache_flush(int force) |
| stb.st_mtime > now) |
| stb.st_mtime = time(0); |
| |
| - sprintf(stime, "%ld\n", stb.st_mtime); |
| + sprintf(stime, "%" PRId64 "\n", (int64_t)stb.st_mtime); |
| for (c=0; cachelist[c]; c++) { |
| int fd; |
| sprintf(path, "/proc/net/rpc/%s/flush", cachelist[c]); |
| diff --git a/utils/idmapd/idmapd.c b/utils/idmapd/idmapd.c |
| index c187e7d7..893159f1 100644 |
| --- a/utils/idmapd/idmapd.c |
| +++ b/utils/idmapd/idmapd.c |
| @@ -54,6 +54,7 @@ |
| #include <dirent.h> |
| #include <unistd.h> |
| #include <netdb.h> |
| +#include <inttypes.h> |
| #include <signal.h> |
| #include <stdio.h> |
| #include <stdlib.h> |
| @@ -172,7 +173,7 @@ flush_nfsd_cache(char *path, time_t now) |
| int fd; |
| char stime[32]; |
| |
| - sprintf(stime, "%ld\n", now); |
| + sprintf(stime, "%" PRId64 "\n", (int64_t)now); |
| fd = open(path, O_RDWR); |
| if (fd == -1) |
| return -1; |
| @@ -625,8 +626,8 @@ nfsdcb(int UNUSED(fd), short which, void *data) |
| /* Name */ |
| addfield(&bp, &bsiz, im.im_name); |
| /* expiry */ |
| - snprintf(buf1, sizeof(buf1), "%lu", |
| - time(NULL) + cache_entry_expiration); |
| + snprintf(buf1, sizeof(buf1), "%" PRId64, |
| + (int64_t)time(NULL) + cache_entry_expiration); |
| addfield(&bp, &bsiz, buf1); |
| /* Note that we don't want to write the id if the mapping |
| * failed; instead, by leaving it off, we write a negative |
| @@ -653,8 +654,8 @@ nfsdcb(int UNUSED(fd), short which, void *data) |
| snprintf(buf1, sizeof(buf1), "%u", im.im_id); |
| addfield(&bp, &bsiz, buf1); |
| /* expiry */ |
| - snprintf(buf1, sizeof(buf1), "%lu", |
| - time(NULL) + cache_entry_expiration); |
| + snprintf(buf1, sizeof(buf1), "%" PRId64, |
| + (int64_t)time(NULL) + cache_entry_expiration); |
| addfield(&bp, &bsiz, buf1); |
| /* Note we're ignoring the status field in this case; we'll |
| * just map to nobody instead. */ |
| -- |
| 2.20.1 |
| |