[Openvpn-devel,v1] ssl_mbedtls: Fix format string in get_ssl_library_version

Message ID 20260414055927.17252-1-gert@greenie.muc.de
State New
Headers show
Series [Openvpn-devel,v1] ssl_mbedtls: Fix format string in get_ssl_library_version | expand

Commit Message

Gert Doering April 14, 2026, 5:59 a.m. UTC
From: Frank Lichtenheld <frank@lichtenheld.com>

These are unsigned values, so treat them as such.

Identified by cppcheck.

Change-Id: I232fba91cfcca6c35d37696bc86890a366f5967f
Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
Acked-by: Arne Schwabe <arne-openvpn@rfc2549.org>
Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1626
---

This change was reviewed on Gerrit and approved by at least one
developer. I request to merge it to master.

Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1626
This mail reflects revision 1 of this Change.

Acked-by according to Gerrit (reflected above):
Arne Schwabe <arne-openvpn@rfc2549.org>

Comments

Gert Doering April 14, 2026, 4:43 p.m. UTC | #1
Good find.  With the expected version numbers in mbedTLS, we're unlikely
to hit an actual sign/unsign overflow ("3.5.128" maybe?), so I don't think
this needs to go to 2.7.

Your patch has been applied to the master branch.

commit 9a6e3646610afb13c794f284b25222dac19f095a
Author: Frank Lichtenheld
Date:   Tue Apr 14 07:59:21 2026 +0200

     ssl_mbedtls: Fix format string in get_ssl_library_version

     Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
     Acked-by: Arne Schwabe <arne-openvpn@rfc2549.org>
     Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1626
     Message-Id: <20260414055927.17252-1-gert@greenie.muc.de>
     URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg36607.html
     Signed-off-by: Gert Doering <gert@greenie.muc.de>


--
kind regards,

Gert Doering

Patch

diff --git a/src/openvpn/ssl_mbedtls.c b/src/openvpn/ssl_mbedtls.c
index a62ff76..85c771a 100644
--- a/src/openvpn/ssl_mbedtls.c
+++ b/src/openvpn/ssl_mbedtls.c
@@ -1572,7 +1572,7 @@ 
 {
     static char mbedtls_version[30];
     unsigned int pv = mbedtls_version_get_number();
-    snprintf(mbedtls_version, sizeof(mbedtls_version), "mbed TLS %d.%d.%d", (pv >> 24) & 0xff,
+    snprintf(mbedtls_version, sizeof(mbedtls_version), "mbed TLS %u.%u.%u", (pv >> 24) & 0xff,
              (pv >> 16) & 0xff, (pv >> 8) & 0xff);
     return mbedtls_version;
 }