From c120c1ebbcb68966e229d4c3647fdbb511150f94 Mon Sep 17 00:00:00 2001 From: Reid Wahl Date: Wed, 8 Jan 2025 20:44:25 -0800 Subject: [PATCH 1/2] Low: various: Correct some printf specifiers As of 18a93372, we can use the 'z' modifier for size_t and ssize_t. So here we take advantage of that to avoid some (long long) casts. We also correct some incorrect specifiers (signed vs. unsigned, and using proper macros from inttypes.h). Signed-off-by: Reid Wahl --- daemons/controld/controld_fsa.c | 12 +++--- daemons/controld/controld_messages.c | 8 ++-- lib/cluster/cpg.c | 24 +++++------ lib/common/ipc_server.c | 25 ++++++----- lib/common/remote.c | 62 ++++++++++++---------------- lib/services/services_linux.c | 17 ++++---- 6 files changed, 67 insertions(+), 81 deletions(-) Index: pacemaker-3.0.0+20250128.fa492f5181/daemons/controld/controld_fsa.c =================================================================== --- pacemaker-3.0.0+20250128.fa492f5181.orig/daemons/controld/controld_fsa.c +++ pacemaker-3.0.0+20250128.fa492f5181/daemons/controld/controld_fsa.c @@ -1,5 +1,5 @@ /* - * Copyright 2004-2024 the Pacemaker project contributors + * Copyright 2004-2025 the Pacemaker project contributors * * The version control history for this file may have further details. * @@ -9,6 +9,7 @@ #include +#include // PRIx64 #include #include #include // uint64_t @@ -279,9 +280,10 @@ s_crmd_fsa(enum crmd_fsa_cause cause) || (controld_globals.fsa_actions != A_NOTHING) || pcmk_is_set(controld_globals.flags, controld_fsa_is_stalled)) { - crm_debug("Exiting the FSA: queue=%d, fsa_actions=%#llx, stalled=%s", + crm_debug("Exiting the FSA: queue=%d, fsa_actions=%" PRIx64 + ", stalled=%s", g_list_length(controld_globals.fsa_message_queue), - (unsigned long long) controld_globals.fsa_actions, + controld_globals.fsa_actions, pcmk__flag_text(controld_globals.flags, controld_fsa_is_stalled)); } else { @@ -505,9 +507,9 @@ s_crmd_fsa_actions(fsa_data_t * fsa_data /* Error checking and reporting */ } else { - crm_err("Action %s not supported " QB_XS " %#llx", + crm_err("Action %s not supported " QB_XS " %" PRIx64, fsa_action2string(controld_globals.fsa_actions), - (unsigned long long) controld_globals.fsa_actions); + controld_globals.fsa_actions); register_fsa_error_adv(C_FSA_INTERNAL, I_ERROR, fsa_data, NULL, __func__); } Index: pacemaker-3.0.0+20250128.fa492f5181/daemons/controld/controld_messages.c =================================================================== --- pacemaker-3.0.0+20250128.fa492f5181.orig/daemons/controld/controld_messages.c +++ pacemaker-3.0.0+20250128.fa492f5181/daemons/controld/controld_messages.c @@ -9,8 +9,10 @@ #include -#include +#include // PRIx64 +#include // uint64_t #include +#include #include #include @@ -110,8 +112,7 @@ register_fsa_input_adv(enum crmd_fsa_cau fsa_data->actions = with_actions; if (with_actions != A_NOTHING) { - crm_trace("Adding actions %.16llx to input", - (unsigned long long) with_actions); + crm_trace("Adding actions %.16" PRIx64 " to input", with_actions); } if (data != NULL) { @@ -1382,4 +1383,3 @@ broadcast_remote_state_message(const cha pcmk__cluster_send_message(NULL, pcmk_ipc_controld, msg); pcmk__xml_free(msg); } - Index: pacemaker-3.0.0+20250128.fa492f5181/lib/cluster/cpg.c =================================================================== --- pacemaker-3.0.0+20250128.fa492f5181.orig/lib/cluster/cpg.c +++ pacemaker-3.0.0+20250128.fa492f5181/lib/cluster/cpg.c @@ -1,5 +1,5 @@ /* - * Copyright 2004-2024 the Pacemaker project contributors + * Copyright 2004-2025 the Pacemaker project contributors * * The version control history for this file may have further details. * @@ -237,8 +237,7 @@ crm_cs_flush(gpointer data) } sent++; - crm_trace("CPG message sent, size=%llu", - (unsigned long long) iov->iov_len); + crm_trace("CPG message sent, size=%zu", iov->iov_len); cs_message_queue = g_list_remove(cs_message_queue, iov); free(iov->iov_base); @@ -360,10 +359,9 @@ check_message_sanity(const pcmk__cpg_msg (((msg->size > 1) && (msg->data[msg->size - 2] == '\0')) || (msg->data[msg->size - 1] != '\0'))) { crm_err("CPG message %d from %s invalid: " - "Payload does not end at byte %llu " + "Payload does not end at byte %" PRIu32 " " QB_XS " from %s[%u] to %s@%s", - msg->id, ais_dest(&(msg->sender)), - (unsigned long long) msg->size, + msg->id, ais_dest(&(msg->sender)), msg->size, msg_type2text(msg->sender.type), msg->sender.pid, msg_type2text(msg->host.type), ais_dest(&(msg->host))); return false; @@ -1009,15 +1007,13 @@ send_cpg_text(const char *data, const pc iov->iov_len = msg->header.size; if (msg->compressed_size > 0) { - crm_trace("Queueing CPG message %u to %s " - "(%llu bytes, %d bytes compressed payload): %.200s", - msg->id, target, (unsigned long long) iov->iov_len, - msg->compressed_size, data); + crm_trace("Queueing CPG message %" PRIu32 " to %s " + "(%zu bytes, %" PRIu32 " bytes compressed payload): %.200s", + msg->id, target, iov->iov_len, msg->compressed_size, data); } else { - crm_trace("Queueing CPG message %u to %s " - "(%llu bytes, %d bytes payload): %.200s", - msg->id, target, (unsigned long long) iov->iov_len, - msg->size, data); + crm_trace("Queueing CPG message %" PRIu32 " to %s " + "(%zu bytes, %" PRIu32 " bytes payload): %.200s", + msg->id, target, iov->iov_len, msg->size, data); } free(target); Index: pacemaker-3.0.0+20250128.fa492f5181/lib/common/ipc_server.c =================================================================== --- pacemaker-3.0.0+20250128.fa492f5181.orig/lib/common/ipc_server.c +++ pacemaker-3.0.0+20250128.fa492f5181/lib/common/ipc_server.c @@ -1,5 +1,5 @@ /* - * Copyright 2004-2024 the Pacemaker project contributors + * Copyright 2004-2025 the Pacemaker project contributors * * The version control history for this file may have further details. * @@ -540,9 +540,8 @@ crm_ipcs_flush_events(pcmk__client_t *c) queue_len -= sent; if (sent > 0 || queue_len) { - crm_trace("Sent %d events (%d remaining) for %p[%d]: %s (%lld)", - sent, queue_len, c->ipcs, c->pid, - pcmk_rc_str(rc), (long long) qb_rc); + crm_trace("Sent %u events (%u remaining) for %p[%d]: %s (%zd)", + sent, queue_len, c->ipcs, c->pid, pcmk_rc_str(rc), qb_rc); } if (queue_len) { Index: pacemaker-3.0.0+20250128.fa492f5181/lib/common/remote.c =================================================================== --- pacemaker-3.0.0+20250128.fa492f5181.orig/lib/common/remote.c +++ pacemaker-3.0.0+20250128.fa492f5181/lib/common/remote.c @@ -137,29 +137,26 @@ send_tls(gnutls_session_t session, struc return EINVAL; } - crm_trace("Sending TLS message of %llu bytes", - (unsigned long long) unsent_len); + crm_trace("Sending TLS message of %zu bytes", unsent_len); + while (true) { gnutls_rc = gnutls_record_send(session, unsent, unsent_len); if (gnutls_rc == GNUTLS_E_INTERRUPTED || gnutls_rc == GNUTLS_E_AGAIN) { - crm_trace("Retrying to send %llu bytes remaining", - (unsigned long long) unsent_len); + crm_trace("Retrying to send %zu bytes remaining", unsent_len); } else if (gnutls_rc < 0) { // Caller can log as error if necessary - crm_info("TLS connection terminated: %s " QB_XS " rc=%lld", - gnutls_strerror((int) gnutls_rc), - (long long) gnutls_rc); + crm_info("TLS connection terminated: %s " QB_XS " rc=%zd", + gnutls_strerror((int) gnutls_rc), gnutls_rc); return ECONNABORTED; } else if (gnutls_rc < unsent_len) { - crm_trace("Sent %lld of %llu bytes remaining", - (long long) gnutls_rc, (unsigned long long) unsent_len); + crm_trace("Sent %zd of %zu bytes remaining", gnutls_rc, unsent_len); unsent_len -= gnutls_rc; unsent += gnutls_rc; } else { - crm_trace("Sent all %lld bytes remaining", (long long) gnutls_rc); + crm_trace("Sent all %zd bytes remaining", gnutls_rc); break; } } @@ -178,16 +175,16 @@ send_plaintext(int sock, struct iovec *i return EINVAL; } - crm_debug("Sending plaintext message of %llu bytes to socket %d", - (unsigned long long) unsent_len, sock); + crm_debug("Sending plaintext message of %zu bytes to socket %d", + unsent_len, sock); while (true) { write_rc = write(sock, unsent, unsent_len); if (write_rc < 0) { int rc = errno; if ((errno == EINTR) || (errno == EAGAIN)) { - crm_trace("Retrying to send %llu bytes remaining to socket %d", - (unsigned long long) unsent_len, sock); + crm_trace("Retrying to send %zu bytes remaining to socket %d", + unsent_len, sock); continue; } @@ -197,15 +194,14 @@ send_plaintext(int sock, struct iovec *i return rc; } else if (write_rc < unsent_len) { - crm_trace("Sent %lld of %llu bytes remaining", - (long long) write_rc, (unsigned long long) unsent_len); + crm_trace("Sent %zd of %zu bytes remaining", write_rc, unsent_len); unsent += write_rc; unsent_len -= write_rc; continue; } else { - crm_trace("Sent all %lld bytes remaining: %.100s", - (long long) write_rc, (char *) (iov->iov_base)); + crm_trace("Sent all %zd bytes remaining: %.100s", + write_rc, (char *) (iov->iov_base)); break; } } @@ -456,8 +452,7 @@ pcmk__read_available_remote_data(pcmk__r /* automatically grow the buffer when needed */ if(remote->buffer_size < read_len) { remote->buffer_size = 2 * read_len; - crm_trace("Expanding buffer to %llu bytes", - (unsigned long long) remote->buffer_size); + crm_trace("Expanding buffer to %zu bytes", remote->buffer_size); remote->buffer = pcmk__realloc(remote->buffer, remote->buffer_size + 1); } @@ -470,8 +465,8 @@ pcmk__read_available_remote_data(pcmk__r } else if (read_rc == GNUTLS_E_AGAIN) { rc = EAGAIN; } else if (read_rc < 0) { - crm_debug("TLS receive failed: %s (%lld)", - gnutls_strerror(read_rc), (long long) read_rc); + crm_debug("TLS receive failed: %s (%zd)", + gnutls_strerror((int) read_rc), read_rc); rc = EIO; } } else if (remote->tcp_socket) { @@ -491,35 +486,32 @@ pcmk__read_available_remote_data(pcmk__r remote->buffer_offset += read_rc; /* always null terminate buffer, the +1 to alloc always allows for this. */ remote->buffer[remote->buffer_offset] = '\0'; - crm_trace("Received %lld more bytes (%llu total)", - (long long) read_rc, - (unsigned long long) remote->buffer_offset); + crm_trace("Received %zd more bytes (%zu total)", + read_rc, remote->buffer_offset); } else if ((rc == EINTR) || (rc == EAGAIN)) { crm_trace("No data available for non-blocking remote read: %s (%d)", pcmk_rc_str(rc), rc); } else if (read_rc == 0) { - crm_debug("End of remote data encountered after %llu bytes", - (unsigned long long) remote->buffer_offset); + crm_debug("End of remote data encountered after %zu bytes", + remote->buffer_offset); return ENOTCONN; } else { - crm_debug("Error receiving remote data after %llu bytes: %s (%d)", - (unsigned long long) remote->buffer_offset, - pcmk_rc_str(rc), rc); + crm_debug("Error receiving remote data after %zu bytes: %s (%d)", + remote->buffer_offset, pcmk_rc_str(rc), rc); return ENOTCONN; } header = localized_remote_header(remote); if(header) { if(remote->buffer_offset < header->size_total) { - crm_trace("Read partial remote message (%llu of %u bytes)", - (unsigned long long) remote->buffer_offset, - header->size_total); + crm_trace("Read partial remote message (%zu of %" PRIu32 " bytes)", + remote->buffer_offset, header->size_total); } else { - crm_trace("Read full remote message of %llu bytes", - (unsigned long long) remote->buffer_offset); + crm_trace("Read full remote message of %zu bytes", + remote->buffer_offset); return pcmk_rc_ok; } } Index: pacemaker-3.0.0+20250128.fa492f5181/lib/services/services_linux.c =================================================================== --- pacemaker-3.0.0+20250128.fa492f5181.orig/lib/services/services_linux.c +++ pacemaker-3.0.0+20250128.fa492f5181/lib/services/services_linux.c @@ -1,5 +1,5 @@ /* - * Copyright 2010-2024 the Pacemaker project contributors + * Copyright 2010-2025 the Pacemaker project contributors * * The version control history for this file may have further details. * @@ -305,14 +305,12 @@ svc_read_output(int fd, svc_action_t * o if (is_stderr && op->stderr_data) { len = strlen(op->stderr_data); data = op->stderr_data; - crm_trace("Reading %s stderr into offset %lld", - op->id, (long long) len); + crm_trace("Reading %s stderr into offset %zu", op->id, len); } else if (is_stderr == FALSE && op->stdout_data) { len = strlen(op->stdout_data); data = op->stdout_data; - crm_trace("Reading %s stdout into offset %lld", - op->id, (long long) len); + crm_trace("Reading %s stdout into offset %zu", op->id, len); } else { crm_trace("Reading %s %s", op->id, out_type(is_stderr)); @@ -324,8 +322,8 @@ svc_read_output(int fd, svc_action_t * o if (rc > 0) { if (len < MAX_OUTPUT) { buf[rc] = 0; - crm_trace("Received %lld bytes of %s %s: %.80s", - (long long) rc, op->id, out_type(is_stderr), buf); + crm_trace("Received %zd bytes of %s %s: %.80s", + rc, op->id, out_type(is_stderr), buf); data = pcmk__realloc(data, len + rc + 1); strcpy(data + len, buf); len += rc; @@ -340,9 +338,8 @@ svc_read_output(int fd, svc_action_t * o } while ((rc == buf_read_len) || (rc < 0)); if (discarded > 0) { - crm_warn("Truncated %s %s to %lld bytes (discarded %lld)", - op->id, out_type(is_stderr), (long long) len, - (long long) discarded); + crm_warn("Truncated %s %s to %zu bytes (discarded %zu)", + op->id, out_type(is_stderr), len, discarded); } if (is_stderr) {