commit 112daeb1bbc0233809f79d61efbb49ba35821d4a parent 1e87622ac8f04e1f4bf00cf8516425bff141a911 Author: wwp <subscript@free.fr> Date: Wed, 5 Mar 2025 21:18:22 +0100 Fix CID 1220354: Overflowed constant (INTEGER_OVERFLOW) Diffstat:
| M | src/common/ssl.c | | | 6 | +++--- |
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/common/ssl.c b/src/common/ssl.c @@ -337,19 +337,19 @@ static gint SSL_connect_nb(gnutls_session_t ssl) #endif } -gnutls_x509_crt_t *ssl_get_certificate_chain(gnutls_session_t session, gint *list_len) +gnutls_x509_crt_t *ssl_get_certificate_chain(gnutls_session_t session, unsigned int *list_len) { const gnutls_datum_t *raw_cert_list; gnutls_x509_crt_t *certs = NULL; gboolean result = TRUE; - *list_len = -1; + *list_len = 0; if (!session) return NULL; raw_cert_list = gnutls_certificate_get_peers(session, list_len); - if (raw_cert_list && gnutls_certificate_type_get(session) == GNUTLS_CRT_X509) { + if (raw_cert_list && (*list_len>0) && gnutls_certificate_type_get(session) == GNUTLS_CRT_X509) { int i = 0; if (*list_len > 128)