From: Rudi Heitbaum Date: Sun, 22 Feb 2026 09:38:01 +0000 (+0000) Subject: Fix discard const qualifier X-Git-Tag: 3.8.13~29^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cfc75a0132fae9bfde96c548e3c9d76957fa40da;p=thirdparty%2Fgnutls.git Fix discard const qualifier Since glibc-2.43 and ISO C23, the functions bsearch, memchr, strchr, strpbrk, strrchr, strstr, wcschr, wcspbrk, wcsrchr, wcsstr and wmemchr that return pointers into their input arrays now have definitions as macros that return a pointer to a const-qualified type when the input argument is a pointer to a const-qualified type. additional and p pointer returns are only being used for comparisons so declare them as const, which matches the input variable. Fixes: ../../../lib/x509/hostname-verify.c: In function 'gnutls_x509_crt_check_hostname2': ../../../lib/x509/hostname-verify.c:165:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 165 | ((p = strchr(hostname, ':')) != NULL || | ^ ../../../lib/x509/ip.c: In function 'gnutls_x509_cidr_to_rfc5280': ../../../lib/x509/ip.c:233:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 233 | p = strchr(cidr, '/'); | ^ ../../lib/priority.c: In function '_gnutls_resolve_priorities': ../../lib/priority.c:2534:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 2534 | additional = strchr(ss, ':'); | ^ ../../lib/str.c: In function '_gnutls_hostname_compare': ../../lib/str.c:722:19: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 722 | p = strrchr(certname, '.'); | ^ Signed-off-by: Rudi Heitbaum --- diff --git a/lib/priority.c b/lib/priority.c index e705158a71..fbed1297c9 100644 --- a/lib/priority.c +++ b/lib/priority.c @@ -2514,7 +2514,7 @@ const char *gnutls_get_system_config_file(void) char *_gnutls_resolve_priorities(const char *priorities) { const char *p = priorities; - char *additional = NULL; + const char *additional = NULL; char *resolved = NULL; const char *ss, *ss_next; unsigned ss_len, ss_next_len; diff --git a/lib/str.c b/lib/str.c index f5e09b820e..ce87868fbe 100644 --- a/lib/str.c +++ b/lib/str.c @@ -718,7 +718,7 @@ static int hostname_compare_ascii(const char *certname, size_t certnamesize, int _gnutls_hostname_compare(const char *certname, size_t certnamesize, const char *hostname, unsigned vflags) { - char *p; + const char *p; unsigned i; for (i = 0; i < certnamesize; i++) { diff --git a/lib/x509/hostname-verify.c b/lib/x509/hostname-verify.c index 04e17aa23c..8f0d3553e7 100644 --- a/lib/x509/hostname-verify.c +++ b/lib/x509/hostname-verify.c @@ -155,7 +155,7 @@ unsigned gnutls_x509_crt_check_hostname2(gnutls_x509_crt_t cert, int ret = 0; int i = 0; struct in_addr ipv4; - char *p = NULL; + const char *p = NULL; char *a_hostname; unsigned have_other_addresses = 0; gnutls_datum_t out; diff --git a/lib/x509/ip.c b/lib/x509/ip.c index 536b75c101..610d2ff66e 100644 --- a/lib/x509/ip.c +++ b/lib/x509/ip.c @@ -226,7 +226,7 @@ int gnutls_x509_cidr_to_rfc5280(const char *cidr, gnutls_datum_t *cidr_rfc5280) { unsigned iplength, prefix; int ret; - char *p; + const char *p; char *p_end = NULL; char *cidr_tmp;