daa5459b6a
Add 2 upstream patches from nfs-utils that fix build failures on 64-bits where time_t is assumed to be a long long when passed to printf("%ld"), but that is not always true, so in these patches the author (Petr) uses PRIu64 tag. Fixes: http://autobuild.buildroot.net/results/9bc1d43a588338b7395af7bc97535ee16a6ea2d9/ Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Cc: Petr Vorel <petr.vorel@gmail.com> Reviewed-by: Petr Vorel <petr.vorel@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
53 lines
2.0 KiB
Diff
53 lines
2.0 KiB
Diff
From d05ba5335e869bcd68c0def795c55fd5037914e3 Mon Sep 17 00:00:00 2001
|
|
From: Petr Vorel <petr.vorel () gmail ! com>
|
|
Date: Thu, 22 Jul 2021 16:15:44 +0000
|
|
Subject: [PATCH] nfsdcltrack/sqlite: Fix printf format
|
|
|
|
sqlite.c: In function 'sqlite_remove_unreclaimed':
|
|
sqlite.c:547:71: error: format '%ld' expects argument of type 'long int', but argument 4 has type 'time_t' {aka 'long long int'} [-Werror=format=]
|
|
547 | ret = snprintf(buf, sizeof(buf), "DELETE FROM clients WHERE time < %ld",
|
|
| ~~^
|
|
| |
|
|
| long int
|
|
| %lld
|
|
548 | grace_start);
|
|
| ~~~~~~~~~~~
|
|
| |
|
|
| time_t {aka long long int}
|
|
|
|
Found in Buildroot riscv32 build.
|
|
|
|
Link: http://autobuild.buildroot.net/results/9bc1d43a588338b7395af7bc97535ee16a6ea2d9/build-end.log
|
|
|
|
Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
|
|
Upstream: http://git.linux-nfs.org/?p=steved/nfs-utils.git;a=commit;h=4f2a5b64386600430ec6b71e57b88c5efaa70aed
|
|
Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
|
|
---
|
|
utils/nfsdcltrack/sqlite.c | 3 ++-
|
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/utils/nfsdcltrack/sqlite.c b/utils/nfsdcltrack/sqlite.c
|
|
index f79aebb3..cea4a411 100644
|
|
--- a/utils/nfsdcltrack/sqlite.c
|
|
+++ b/utils/nfsdcltrack/sqlite.c
|
|
@@ -46,6 +46,7 @@
|
|
#include <sys/stat.h>
|
|
#include <sys/types.h>
|
|
#include <fcntl.h>
|
|
+#include <inttypes.h>
|
|
#include <unistd.h>
|
|
#include <sqlite3.h>
|
|
#include <linux/limits.h>
|
|
@@ -544,7 +545,7 @@ sqlite_remove_unreclaimed(time_t grace_start)
|
|
int ret;
|
|
char *err = NULL;
|
|
|
|
- ret = snprintf(buf, sizeof(buf), "DELETE FROM clients WHERE time < %ld",
|
|
+ ret = snprintf(buf, sizeof(buf), "DELETE FROM clients WHERE time < %"PRIu64,
|
|
grace_start);
|
|
if (ret < 0) {
|
|
return ret;
|
|
--
|
|
2.25.1
|
|
|