Commit 145aea4777 for openssl.org

commit 145aea47775217013748e6232ebcd76e8de600e1
Author: Andrew Dinh <andrewd@openssl.org>
Date:   Tue Jun 9 17:59:25 2026 +0700

    Use %zu for printing size_t values

    Reviewed-by: Neil Horman <nhorman@openssl.org>
    Reviewed-by: Richard Levitte <levitte@openssl.org>
    Reviewed-by: Milan Broz <mbroz@openssl.org>
    MergeDate: Mon Jun 15 19:24:43 2026
    (Merged from https://github.com/openssl/openssl/pull/31454)

diff --git a/apps/lib/s_cb.c b/apps/lib/s_cb.c
index b0b3da9149..d4dcf12a07 100644
--- a/apps/lib/s_cb.c
+++ b/apps/lib/s_cb.c
@@ -704,8 +704,8 @@ void msg_cb(int write_p, int version, int content_type, const void *buf,
         str_version = tmpbuf;
     }

-    BIO_printf(bio, "%s %s%s [length %04lx]%s%s\n", str_write_p, str_version,
-        str_content_type, (unsigned long)len, str_details1,
+    BIO_printf(bio, "%s %s%s [length %04zx]%s%s\n", str_write_p, str_version,
+        str_content_type, len, str_details1,
         str_details2);

     if (len > 0) {
diff --git a/apps/s_server.c b/apps/s_server.c
index baa8f64363..43b212df7a 100644
--- a/apps/s_server.c
+++ b/apps/s_server.c
@@ -187,8 +187,8 @@ static unsigned int psk_server_cb(SSL *ssl, const char *identity,
         goto out_err;
     }
     if (s_debug)
-        BIO_printf(bio_s_out, "identity_len=%d identity=%s\n",
-            (int)strlen(identity), identity);
+        BIO_printf(bio_s_out, "identity_len=%zu identity=%s\n",
+            strlen(identity), identity);

     /* here we could lookup the given identity e.g. from a database */
     if (strcmp(identity, psk_identity) != 0) {
diff --git a/demos/digest/EVP_MD_demo.c b/demos/digest/EVP_MD_demo.c
index b6d10d59c5..a01ab695bf 100644
--- a/demos/digest/EVP_MD_demo.c
+++ b/demos/digest/EVP_MD_demo.c
@@ -147,8 +147,8 @@ static int demonstrate_digest(void)
     fprintf(stdout, "\n");
     /* Check digest_value against the known answer */
     if ((size_t)digest_length != sizeof(known_answer)) {
-        fprintf(stdout, "Digest length(%d) not equal to known answer length(%lu).\n",
-            digest_length, (unsigned long)sizeof(known_answer));
+        fprintf(stdout, "Digest length(%u) not equal to known answer length(%zu).\n",
+            digest_length, sizeof(known_answer));
     } else if (memcmp(digest_value, known_answer, digest_length) != 0) {
         for (j = 0; j < sizeof(known_answer); j++) {
             fprintf(stdout, "%02x", known_answer[j]);
diff --git a/demos/http3/ossl-nghttp3-demo-server.c b/demos/http3/ossl-nghttp3-demo-server.c
index b2b4d954f4..92cc10c067 100644
--- a/demos/http3/ossl-nghttp3-demo-server.c
+++ b/demos/http3/ossl-nghttp3-demo-server.c
@@ -323,7 +323,7 @@ static int on_recv_data(nghttp3_conn *conn, int64_t stream_id,
     const uint8_t *data, size_t datalen,
     void *conn_user_data, void *stream_user_data)
 {
-    fprintf(stderr, "on_recv_data! %ld\n", (unsigned long)datalen);
+    fprintf(stderr, "on_recv_data! %zu\n", datalen);
     fprintf(stderr, "on_recv_data! %.*s\n", (int)datalen, data);
     return 0;
 }
@@ -502,7 +502,7 @@ static int read_from_ssl_ids(nghttp3_conn **curh3conn, struct h3ssl *h3ssl)
         printf("SSL_poll failed\n");
         return -1; /* something is wrong */
     }
-    printf("read_from_ssl_ids %ld events\n", (unsigned long)result_count);
+    printf("read_from_ssl_ids %zu events\n", result_count);
     if (result_count == 0) {
         /* Timeout may be something somewhere */
         return 0;
@@ -862,12 +862,12 @@ static int quic_server_write(struct h3ssl *h3ssl, uint64_t streamid,
                 ERR_print_errors_fp(stderr);
                 return 0;
             }
-            printf("written %lld on %lld flags %lld\n", (unsigned long long)len,
+            printf("written %zu on %llu flags %llu\n", len,
                 (unsigned long long)streamid, (unsigned long long)flags);
             return 1;
         }
     }
-    printf("quic_server_write %lld on %lld (NOT FOUND!)\n", (unsigned long long)len,
+    printf("quic_server_write %zu on %llu (NOT FOUND!)\n", len,
         (unsigned long long)streamid);
     return 0;
 }
@@ -1226,8 +1226,8 @@ static int run_quic_server(SSL_CTX *ctx, int fd)
                 size_t numbytes = vec[i].len;
                 int flagwrite = 0;

-                printf("quic_server_write on %llu for %ld\n",
-                    (unsigned long long)streamid, (unsigned long)vec[i].len);
+                printf("quic_server_write on %llu for %zu\n",
+                    (unsigned long long)streamid, vec[i].len);
                 if (fin && i == sveccnt - 1)
                     flagwrite = SSL_WRITE_FLAG_CONCLUDE;
                 if (!quic_server_write(&h3ssl, streamid, vec[i].base,
diff --git a/ssl/ech/ech_internal.c b/ssl/ech/ech_internal.c
index 15069492f2..6186514040 100644
--- a/ssl/ech/ech_internal.c
+++ b/ssl/ech/ech_internal.c
@@ -39,9 +39,9 @@ void ossl_ech_pbuf(const char *msg, const unsigned char *buf, const size_t blen)
             BIO_printf(trc_out, "msg is NULL\n");
         } else if (buf == NULL || blen == 0) {
             BIO_printf(trc_out, "%s: buf is %p\n", msg, (void *)buf);
-            BIO_printf(trc_out, "%s: blen is %lu\n", msg, (unsigned long)blen);
+            BIO_printf(trc_out, "%s: blen is %zu\n", msg, blen);
         } else {
-            BIO_printf(trc_out, "%s (%lu)\n", msg, (unsigned long)blen);
+            BIO_printf(trc_out, "%s (%zu)\n", msg, blen);
             BIO_dump_indent(trc_out, buf, (int)blen, 4);
         }
     }
diff --git a/ssl/record/methods/tls_common.c b/ssl/record/methods/tls_common.c
index c8f7b6dd46..455304eedc 100644
--- a/ssl/record/methods/tls_common.c
+++ b/ssl/record/methods/tls_common.c
@@ -824,7 +824,7 @@ int tls_get_more_records(OSSL_RECORD_LAYER *rl)
     }
     OSSL_TRACE_BEGIN(TLS)
     {
-        BIO_printf(trc_out, "dec %lu\n", (unsigned long)rr[0].length);
+        BIO_printf(trc_out, "dec %zu\n", rr[0].length);
         BIO_dump_indent(trc_out, rr[0].data, (int)rr[0].length, 4);
     }
     OSSL_TRACE_END(TLS);
diff --git a/ssl/t1_trce.c b/ssl/t1_trce.c
index 4cafdba322..b2b00b3f7c 100644
--- a/ssl/t1_trce.c
+++ b/ssl/t1_trce.c
@@ -674,7 +674,7 @@ static void ssl_print_hex(BIO *bio, int indent, const char *name,
     size_t i;

     BIO_indent(bio, indent, 80);
-    BIO_printf(bio, "%s (len=%d): ", name, (int)msglen);
+    BIO_printf(bio, "%s (len=%zu): ", name, msglen);
     for (i = 0; i < msglen; i++)
         BIO_printf(bio, "%02X", msg[i]);
     BIO_puts(bio, "\n");
@@ -769,8 +769,8 @@ static int ssl_print_extension(BIO *bio, int indent, int server,
     uint32_t max_early_data;

     BIO_indent(bio, indent, 80);
-    BIO_printf(bio, "extension_type=%s(%d), length=%d\n",
-        ssl_trace_str(extype, ssl_exts_tbl), extype, (int)extlen);
+    BIO_printf(bio, "extension_type=%s(%d), length=%zu\n",
+        ssl_trace_str(extype, ssl_exts_tbl), extype, extlen);
     switch (extype) {
     case TLSEXT_TYPE_compress_certificate:
         if (extlen < 1)
@@ -996,7 +996,7 @@ static int ssl_print_extensions(BIO *bio, int indent, int server,
     }
     if (extslen > msglen)
         return 0;
-    BIO_printf(bio, "extensions, length = %d\n", (int)extslen);
+    BIO_printf(bio, "extensions, length = %zu\n", extslen);
     msglen -= extslen;
     while (extslen > 0) {
         int extype;
@@ -1006,8 +1006,8 @@ static int ssl_print_extensions(BIO *bio, int indent, int server,
         extype = (msg[0] << 8) | msg[1];
         extlen = (msg[2] << 8) | msg[3];
         if (extslen < extlen + 4) {
-            BIO_printf(bio, "extensions, extype = %d, extlen = %d\n", extype,
-                (int)extlen);
+            BIO_printf(bio, "extensions, extype = %d, extlen = %zu\n", extype,
+                extlen);
             BIO_dump_indent(bio, (const char *)msg, (int)extslen, indent + 2);
             return 0;
         }
@@ -1046,7 +1046,7 @@ static int ssl_print_client_hello(BIO *bio, const SSL_CONNECTION *sc, int indent
     msg += 2;
     msglen -= 2;
     BIO_indent(bio, indent, 80);
-    BIO_printf(bio, "cipher_suites (len=%d)\n", (int)len);
+    BIO_printf(bio, "cipher_suites (len=%zu)\n", len);
     if (msglen < len || len & 1)
         return 0;
     while (len > 0) {
@@ -1066,7 +1066,7 @@ static int ssl_print_client_hello(BIO *bio, const SSL_CONNECTION *sc, int indent
     if (msglen < len)
         return 0;
     BIO_indent(bio, indent, 80);
-    BIO_printf(bio, "compression_methods (len=%d)\n", (int)len);
+    BIO_printf(bio, "compression_methods (len=%zu)\n", len);
     while (len > 0) {
         BIO_indent(bio, indent + 2, 80);
         BIO_printf(bio, "%s (0x%02X)\n",
@@ -1306,7 +1306,7 @@ static int ssl_print_certificate(BIO *bio, const SSL_CONNECTION *sc, int indent,
         return 0;
     q = p + 3;
     BIO_indent(bio, indent, 80);
-    BIO_printf(bio, "ASN.1Cert, length=%d", (int)clen);
+    BIO_printf(bio, "ASN.1Cert, length=%zu", clen);
     x = X509_new_ex(ctx->libctx, ctx->propq);
     if (x != NULL && d2i_X509(&x, &q, (long)clen) == NULL) {
         X509_free(x);
@@ -1362,7 +1362,7 @@ static int ssl_print_raw_public_key(BIO *bio, const SSL_CONNECTION *sc,
     }

     BIO_indent(bio, indent, 80);
-    BIO_printf(bio, "raw_public_key, length=%d\n", (int)clen);
+    BIO_printf(bio, "raw_public_key, length=%zu\n", clen);

     pkey = d2i_PUBKEY_ex(NULL, &msg, (long)clen,
         sc->ssl.ctx->libctx, sc->ssl.ctx->propq);
@@ -1400,7 +1400,7 @@ static int ssl_print_certificates(BIO *bio, const SSL_CONNECTION *sc, int server
         return 1;
     }
     BIO_indent(bio, indent, 80);
-    BIO_printf(bio, "certificate_list, length=%d\n", (int)clen);
+    BIO_printf(bio, "certificate_list, length=%zu\n", clen);
     while (clen > 0) {
         if (!ssl_print_certificate(bio, sc, indent + 2, &msg, &clen))
             return 0;
@@ -1440,12 +1440,12 @@ static int ssl_print_compressed_certificates(BIO *bio, const SSL_CONNECTION *sc,
     BIO_indent(bio, indent, 80);
     BIO_printf(bio, "Compression type=%s (0x%04x)\n", ssl_trace_str(alg, ssl_comp_cert_tbl), alg);
     BIO_indent(bio, indent, 80);
-    BIO_printf(bio, "Uncompressed length=%d\n", (int)uclen);
+    BIO_printf(bio, "Uncompressed length=%zu\n", uclen);
     BIO_indent(bio, indent, 80);
     if (clen > 0)
-        BIO_printf(bio, "Compressed length=%d, Ratio=%f:1\n", (int)clen, (float)uclen / (float)clen);
+        BIO_printf(bio, "Compressed length=%zu, Ratio=%f:1\n", clen, (float)uclen / (float)clen);
     else
-        BIO_printf(bio, "Compressed length=%d, Ratio=unknown\n", (int)clen);
+        BIO_printf(bio, "Compressed length=%zu, Ratio=unknown\n", clen);

     BIO_dump_indent(bio, (const char *)msg, (int)clen, indent);

@@ -1506,7 +1506,7 @@ static int ssl_print_cert_request(BIO *bio, int indent, const SSL_CONNECTION *sc
             return 0;
         msg++;
         BIO_indent(bio, indent, 80);
-        BIO_printf(bio, "certificate_types (len=%d)\n", (int)xlen);
+        BIO_printf(bio, "certificate_types (len=%zu)\n", xlen);
         if (!ssl_trace_list(bio, indent + 2, msg, xlen, 1, ssl_ctype_tbl))
             return 0;
         msg += xlen;
@@ -1521,7 +1521,7 @@ static int ssl_print_cert_request(BIO *bio, int indent, const SSL_CONNECTION *sc
         msg += 2;
         msglen -= xlen + 2;
         BIO_indent(bio, indent, 80);
-        BIO_printf(bio, "signature_algorithms (len=%d)\n", (int)xlen);
+        BIO_printf(bio, "signature_algorithms (len=%zu)\n", xlen);
         while (xlen > 0) {
             BIO_indent(bio, indent + 2, 80);
             sigalg = (msg[0] << 8) | msg[1];
@@ -1541,7 +1541,7 @@ static int ssl_print_cert_request(BIO *bio, int indent, const SSL_CONNECTION *sc
         return 0;
     msg += 2;
     msglen -= 2 + xlen;
-    BIO_printf(bio, "certificate_authorities (len=%d)\n", (int)xlen);
+    BIO_printf(bio, "certificate_authorities (len=%zu)\n", xlen);
     while (xlen > 0) {
         size_t dlen;
         X509_NAME *nm;
@@ -1553,7 +1553,7 @@ static int ssl_print_cert_request(BIO *bio, int indent, const SSL_CONNECTION *sc
             return 0;
         msg += 2;
         BIO_indent(bio, indent + 2, 80);
-        BIO_printf(bio, "DistinguishedName (len=%d): ", (int)dlen);
+        BIO_printf(bio, "DistinguishedName (len=%zu): ", dlen);
         p = msg;
         nm = d2i_X509_NAME(NULL, &p, (long)dlen);
         if (!nm) {
@@ -1634,8 +1634,8 @@ static int ssl_print_handshake(BIO *bio, const SSL_CONNECTION *sc, int server,
     htype = msg[0];
     hlen = (msg[1] << 16) | (msg[2] << 8) | msg[3];
     BIO_indent(bio, indent, 80);
-    BIO_printf(bio, "%s, Length=%d\n",
-        ssl_trace_str(htype, ssl_handshake_tbl), (int)hlen);
+    BIO_printf(bio, "%s, Length=%zu\n",
+        ssl_trace_str(htype, ssl_handshake_tbl), hlen);
     msg += 4;
     msglen -= 4;
     if (SSL_CONNECTION_IS_DTLS(sc)) {
diff --git a/test/bftest.c b/test/bftest.c
index 03c2756d44..08f974ec9b 100644
--- a/test/bftest.c
+++ b/test/bftest.c
@@ -267,8 +267,8 @@ static int print_test_data(void)
     printf("\niv[8]     = ");
     for (j = 0; j < 8; j++)
         printf("%02X", cbc_iv[j]);
-    printf("\ndata[%d]  = '%s'", (int)strlen(cbc_data) + 1, cbc_data);
-    printf("\ndata[%d]  = ", (int)strlen(cbc_data) + 1);
+    printf("\ndata[%zu]  = '%s'", strlen(cbc_data) + 1, cbc_data);
+    printf("\ndata[%zu]  = ", strlen(cbc_data) + 1);
     for (j = 0; j < strlen(cbc_data) + 1; j++)
         printf("%02X", cbc_data[j]);
     printf("\n");
@@ -279,13 +279,13 @@ static int print_test_data(void)
     printf("\n");

     printf("cfb64 cipher text\n");
-    printf("cipher[%d]= ", (int)strlen(cbc_data) + 1);
+    printf("cipher[%zu]= ", strlen(cbc_data) + 1);
     for (j = 0; j < strlen(cbc_data) + 1; j++)
         printf("%02X", cfb64_ok[j]);
     printf("\n");

     printf("ofb64 cipher text\n");
-    printf("cipher[%d]= ", (int)strlen(cbc_data) + 1);
+    printf("cipher[%zu]= ", strlen(cbc_data) + 1);
     for (j = 0; j < strlen(cbc_data) + 1; j++)
         printf("%02X", ofb64_ok[j]);
     printf("\n");
diff --git a/test/dtls_mtu_test.c b/test/dtls_mtu_test.c
index 1e2b988f04..9a2d8caab0 100644
--- a/test/dtls_mtu_test.c
+++ b/test/dtls_mtu_test.c
@@ -83,9 +83,9 @@ static int mtu_test(SSL_CTX *ctx, const char *cs, int no_etm)
         SSL_set_mtu(clnt_ssl, 500 + i);
         mtus[i] = DTLS_get_data_mtu(clnt_ssl);
         if (debug)
-            TEST_info("%s%s MTU for record mtu %d = %lu",
+            TEST_info("%s%s MTU for record mtu %d = %zu",
                 cs, no_etm ? "-noEtM" : "",
-                500 + i, (unsigned long)mtus[i]);
+                500 + i, mtus[i]);
         if (!TEST_size_t_ne(mtus[i], 0)) {
             TEST_info("Cipher %s MTU %d", cs, 500 + i);
             goto end;
@@ -116,9 +116,8 @@ static int mtu_test(SSL_CTX *ctx, const char *cs, int no_etm)
                  * We sent a packet smaller than or equal to mtus[j] and
                  * that made a record *larger* than the record MTU 500+j!
                  */
-                TEST_error("%s: s=%lu, mtus[i]=%lu, reclen=%lu, i=%d",
-                    cs, (unsigned long)s, (unsigned long)mtus[i],
-                    (unsigned long)reclen, 500 + i);
+                TEST_error("%s: s=%zu, mtus[i]=%zu, reclen=%zu, i=%d",
+                    cs, s, mtus[i], reclen, 500 + i);
                 goto end;
             }
             if (!TEST_false(s > mtus[i] && reclen <= (size_t)(500 + i))) {
@@ -127,9 +126,8 @@ static int mtu_test(SSL_CTX *ctx, const char *cs, int no_etm)
                  * fits within the record MTU 500+i, so DTLS_get_data_mtu()
                  * was overly pessimistic.
                  */
-                TEST_error("%s: s=%lu, mtus[i]=%lu, reclen=%lu, i=%d",
-                    cs, (unsigned long)s, (unsigned long)mtus[i],
-                    (unsigned long)reclen, 500 + i);
+                TEST_error("%s: s=%zu, mtus[i]=%zu, reclen=%zu, i=%d",
+                    cs, s, mtus[i], reclen, 500 + i);
                 goto end;
             }
         }
diff --git a/test/ech_corrupt_test.c b/test/ech_corrupt_test.c
index 7f11a3f7fa..7070f4ef37 100644
--- a/test/ech_corrupt_test.c
+++ b/test/ech_corrupt_test.c
@@ -1767,7 +1767,7 @@ static int ech_retry_config_test(int idx)
         if (!TEST_int_ne((int)retryconfiglen, 0))
             goto end;
         if (verbose)
-            TEST_info("ech_retry_config_test: retryconfglen: %d\n", (int)retryconfiglen);
+            TEST_info("ech_retry_config_test: retryconfglen: %zu\n", retryconfiglen);
         /* we kow the size to expect as the configs are hard-coded above */
         if (!TEST_size_t_eq(retryconfiglen, 64))
             goto end;
diff --git a/test/ech_test.c b/test/ech_test.c
index 9a0214c988..b383b4255a 100644
--- a/test/ech_test.c
+++ b/test/ech_test.c
@@ -1924,7 +1924,7 @@ static int ech_grease_test(int idx)
     if (!TEST_int_ne((int)retryconfiglen, 0))
         goto end;
     if (verbose)
-        TEST_info("ech_grease_test: retryconfglen: %d\n", (int)retryconfiglen);
+        TEST_info("ech_grease_test: retryconfglen: %zu\n", retryconfiglen);
     /* we kow the sizes to expect as the configs are hard-coded above */
     if (idx == 2 && !TEST_size_t_eq(retryconfiglen, 141))
         goto end;
diff --git a/test/modes_internal_test.c b/test/modes_internal_test.c
index 211ba6dbf6..c3b8b6cd9f 100644
--- a/test/modes_internal_test.c
+++ b/test/modes_internal_test.c
@@ -197,7 +197,7 @@ static int execute_cts128(const CTS128_FIXTURE *fixture, int num)
     unsigned char cleartext[64], ciphertext[64], vector[64];
     size_t tail, size;

-    TEST_info("%s_vector_%lu", fixture->case_name, (unsigned long)len);
+    TEST_info("%s_vector_%zu", fixture->case_name, len);

     tail = fixture->last_blocks_correction(orig_vector, vector, len);

diff --git a/test/params_test.c b/test/params_test.c
index 2bae134ca1..f5f0623bc9 100644
--- a/test/params_test.c
+++ b/test/params_test.c
@@ -648,9 +648,9 @@ static int check_int_from_text(const struct int_from_text_test_st a)
         return 0;
     }
     if (param.data_size != a.expected_bufsize) {
-        TEST_error("unexpected size for %s \"%s\":  %d != %d",
+        TEST_error("unexpected size for %s \"%s\":  %zu != %zu",
             a.argname, a.strval,
-            (int)a.expected_bufsize, (int)param.data_size);
+            a.expected_bufsize, param.data_size);
         return 0;
     }

diff --git a/test/quicapitest.c b/test/quicapitest.c
index 0ab3c2eff4..97c759dffc 100644
--- a/test/quicapitest.c
+++ b/test/quicapitest.c
@@ -1705,12 +1705,12 @@ static int test_bw_limit(void)
                     sendlen > TEST_SINGLE_WRITE_SIZE ? TEST_SINGLE_WRITE_SIZE
                                                      : sendlen,
                     &written)) {
-                TEST_info("Retrying to send: %llu", (unsigned long long)sendlen);
+                TEST_info("Retrying to send: %zu", sendlen);
                 if (!TEST_int_eq(SSL_get_error(clientquic, 0), SSL_ERROR_WANT_WRITE))
                     goto err;
             } else {
                 sendlen -= written;
-                TEST_info("Remaining to send: %llu", (unsigned long long)sendlen);
+                TEST_info("Remaining to send: %zu", sendlen);
             }
         } else {
             SSL_handle_events(clientquic);
@@ -1722,9 +1722,9 @@ static int test_bw_limit(void)
                 &readbytes)
             && readbytes > 1) {
             recvlen -= readbytes;
-            TEST_info("Remaining to recv: %llu", (unsigned long long)recvlen);
+            TEST_info("Remaining to recv: %zu", recvlen);
         } else {
-            TEST_info("No progress on recv: %llu", (unsigned long long)recvlen);
+            TEST_info("No progress on recv: %zu", recvlen);
         }
         ossl_quic_tserver_tick(qtserv);
     }
diff --git a/test/ssl_old_test.c b/test/ssl_old_test.c
index 3ddd71c2b3..8a3c7b5fb0 100644
--- a/test/ssl_old_test.c
+++ b/test/ssl_old_test.c
@@ -2478,7 +2478,7 @@ int doit_biopair(SSL *s_ssl, SSL *c_ssl, long count,
                     progress = 1;

                     if (debug)
-                        printf((io1 == client_io) ? "C->S relaying: %d bytes\n" : "S->C relaying: %d bytes\n", (int)num);
+                        printf((io1 == client_io) ? "C->S relaying: %zu bytes\n" : "S->C relaying: %zu bytes\n", num);
                 }
             } while (r1 && r2);

@@ -2525,7 +2525,7 @@ int doit_biopair(SSL *s_ssl, SSL *c_ssl, long count,
                     }

                     if (debug)
-                        printf((io2 == client_io) ? "C->S relaying: %d bytes\n" : "S->C relaying: %d bytes\n", (int)num);
+                        printf((io2 == client_io) ? "C->S relaying: %zu bytes\n" : "S->C relaying: %zu bytes\n", num);
                 }
             } /* no loop, BIO_ctrl_get_read_request now
                * returns 0 anyway */
diff --git a/test/tls12psk.c b/test/tls12psk.c
index 851c2b37be..1a9b7a54f8 100644
--- a/test/tls12psk.c
+++ b/test/tls12psk.c
@@ -51,7 +51,7 @@ static void hello_session_id(const unsigned char *p, size_t len)
         return;

     str = OPENSSL_buf2hexstr(p + HELLO_SID_OFF, (long)sid_len);
-    TEST_info("session_id(%u): <%s>", (unsigned int)sid_len, str);
+    TEST_info("session_id(%zu): <%s>", sid_len, str);
     OPENSSL_free(str);
 }