File pacemaker#3407-0001-Log-fencer-always-format-time_t-values-as-long-long.patch of Package pacemaker.34780

From 6a882fe8c09c8173e69c2951d294f239ead91b2d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ferenc=20W=C3=A1gner?= <wferi@debian.org>
Date: Fri, 22 Mar 2024 16:40:07 +0100
Subject: [PATCH] Log: fencer: always format time_t values as long long
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Conventionally it's signed long under the GNU C library, which is 32
bits on 32-bit architectures, but Glibc provides the __TIME_BITS==64
option, which makes it signed long long instead (64 bits) and makes no
difference on 64-bit architectures [1].  This enables using the %lld
conversion specifier uniformly across all supported architectures.
This got exposed by Debian recently transitioning to 64-bit time_t [2].

[1] https://sourceware.org/glibc/wiki/Y2038ProofnessDesign
[2] https://wiki.debian.org/ReleaseGoals/64bit-time

Signed-off-by: Ferenc Wágner <wferi@debian.org>
---
 daemons/fenced/fenced_remote.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Index: pacemaker-2.1.7+20231219.0f7f88312/daemons/fenced/fenced_remote.c
===================================================================
--- pacemaker-2.1.7+20231219.0f7f88312.orig/daemons/fenced/fenced_remote.c
+++ pacemaker-2.1.7+20231219.0f7f88312/daemons/fenced/fenced_remote.c
@@ -1042,8 +1042,8 @@ merge_duplicates(remote_fencing_op_t *op
         }
         if ((other->total_timeout > 0)
             && (now > (other->total_timeout + other->created))) {
-            crm_trace("%.8s not duplicate of %.8s: old (%ld vs. %ld + %d)",
-                      op->id, other->id, now, other->created,
+            crm_trace("%.8s not duplicate of %.8s: old (%lld vs. %lld + %ds)",
+                      op->id, other->id, (long long)now, (long long)other->created,
                       other->total_timeout);
             continue;
         }
openSUSE Build Service is sponsored by