xref: /OK3568_Linux_fs/buildroot/package/nfs-utils/0001-nfsdcltrack-sqlite-Fix-printf-format.patch (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1From d05ba5335e869bcd68c0def795c55fd5037914e3 Mon Sep 17 00:00:00 2001
2From: Petr Vorel <petr.vorel () gmail ! com>
3Date: Thu, 22 Jul 2021 16:15:44 +0000
4Subject: [PATCH] nfsdcltrack/sqlite: Fix printf format
5
6sqlite.c: In function 'sqlite_remove_unreclaimed':
7sqlite.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=]
8  547 |  ret = snprintf(buf, sizeof(buf), "DELETE FROM clients WHERE time < %ld",
9      |                                                                     ~~^
10      |                                                                       |
11      |                                                                       long int
12      |                                                                     %lld
13  548 |    grace_start);
14      |    ~~~~~~~~~~~
15      |    |
16      |    time_t {aka long long int}
17
18Found in Buildroot riscv32 build.
19
20Link: http://autobuild.buildroot.net/results/9bc1d43a588338b7395af7bc97535ee16a6ea2d9/build-end.log
21
22Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
23Upstream: http://git.linux-nfs.org/?p=steved/nfs-utils.git;a=commit;h=4f2a5b64386600430ec6b71e57b88c5efaa70aed
24Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
25---
26 utils/nfsdcltrack/sqlite.c | 3 ++-
27 1 file changed, 2 insertions(+), 1 deletion(-)
28
29diff --git a/utils/nfsdcltrack/sqlite.c b/utils/nfsdcltrack/sqlite.c
30index f79aebb3..cea4a411 100644
31--- a/utils/nfsdcltrack/sqlite.c
32+++ b/utils/nfsdcltrack/sqlite.c
33@@ -46,6 +46,7 @@
34 #include <sys/stat.h>
35 #include <sys/types.h>
36 #include <fcntl.h>
37+#include <inttypes.h>
38 #include <unistd.h>
39 #include <sqlite3.h>
40 #include <linux/limits.h>
41@@ -544,7 +545,7 @@ sqlite_remove_unreclaimed(time_t grace_start)
42 	int ret;
43 	char *err = NULL;
44
45-	ret = snprintf(buf, sizeof(buf), "DELETE FROM clients WHERE time < %ld",
46+	ret = snprintf(buf, sizeof(buf), "DELETE FROM clients WHERE time < %"PRIu64,
47 			grace_start);
48 	if (ret < 0) {
49 		return ret;
50--
512.25.1
52
53