]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
Fix discard const qualifier
authorRudi Heitbaum <rudi@heitbaum.com>
Sun, 22 Feb 2026 09:38:01 +0000 (09:38 +0000)
committerRudi Heitbaum <rudi@heitbaum.com>
Sun, 22 Feb 2026 10:06:31 +0000 (10:06 +0000)
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 <rudi@heitbaum.com>
lib/priority.c
lib/str.c
lib/x509/hostname-verify.c
lib/x509/ip.c

index e705158a7191e3e03dd5e4345ecc53899885c5ee..fbed1297c903fb027b5d1d67b900746f7ecc58ad 100644 (file)
@@ -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;
index f5e09b820e2f303733947741e36e8afd29d38e90..ce87868fbe27ca08c8ea32855810e7279c4f535a 100644 (file)
--- 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++) {
index 04e17aa23cabf2c56e2ff882dbb00987e0da08c5..8f0d3553e761752732c093f7c4f850dde882bde4 100644 (file)
@@ -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;
index 536b75c101dc4e71b7c38a23980967ecfc19dea0..610d2ff66e6d81ae05db127a4c0aed575063b3ed 100644 (file)
@@ -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;