From 72b1760ea6cd415efe9868aad97c982fea8b0a42 Mon Sep 17 00:00:00 2001 From: Aram Sargsyan Date: Wed, 14 Dec 2022 14:40:31 +0000 Subject: [PATCH] Fix logging a uint32_t SOA serial value in dns_catz_update_from_db() The dns_catz_update_from_db() function prints serial number as a signed number (with "%d" in the format string), but the `vers` variable's type is 'uint32_t'. This breaks serials bigger than 2^31. Use PRIu32 instead of "d" in the format string. --- lib/dns/catz.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/dns/catz.c b/lib/dns/catz.c index fd24410594..b755e6cce5 100644 --- a/lib/dns/catz.c +++ b/lib/dns/catz.c @@ -2167,8 +2167,8 @@ dns_catz_update_from_db(dns_db_t *db, dns_catz_zones_t *catzs) { isc_log_write(dns_lctx, DNS_LOGCATEGORY_GENERAL, DNS_LOGMODULE_MASTER, ISC_LOG_INFO, - "catz: updating catalog zone '%s' with serial %d", bname, - vers); + "catz: updating catalog zone '%s' with serial %" PRIu32, + bname, vers); result = dns_catz_new_zone(catzs, &newzone, &db->origin); if (result != ISC_R_SUCCESS) {