From 7cf6e1f8dcc424d8cd1079cb66adb470f29599e1 Mon Sep 17 00:00:00 2001 From: Rudi Heitbaum Date: Wed, 18 Feb 2026 22:47:33 +0100 Subject: [PATCH] dns: fix discards 'const' qualifier from pointer target type Since glibc-2.43: For 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. fixes: src/openvpn/dns.c: In function 'dns_server_addr_parse': src/openvpn/dns.c:67:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 67 | char *first_colon = strchr(addr, ':'); | ^~~~~~ src/openvpn/dns.c:68:24: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] 68 | char *last_colon = strrchr(addr, ':'); | ^~~~~~~ Change-Id: I262705189edfbd9aa9a32bcd712840fffa592435 Signed-off-by: Rudi Heitbaum Acked-by: Gert Doering Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1542 Acked-by: Frank Lichtenheld Message-Id: <20260218214738.27158-1-gert@greenie.muc.de> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg35730.html Signed-off-by: Gert Doering (cherry picked from commit 0157e7fb8ae29b637537a6b98ce85217c6daf5a3) --- src/openvpn/dns.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/openvpn/dns.c b/src/openvpn/dns.c index 7de39916..66ac32f6 100644 --- a/src/openvpn/dns.c +++ b/src/openvpn/dns.c @@ -38,7 +38,7 @@ * @return True if parsing was successful */ static bool -dns_server_port_parse(in_port_t *port, char *port_str) +dns_server_port_parse(in_port_t *port, const char *port_str) { char *endptr; errno = 0; @@ -64,8 +64,8 @@ dns_server_addr_parse(struct dns_server *server, const char *addr) in_port_t port = 0; sa_family_t af; - char *first_colon = strchr(addr, ':'); - char *last_colon = strrchr(addr, ':'); + const char *first_colon = strchr(addr, ':'); + const char *last_colon = strrchr(addr, ':'); if (!first_colon || first_colon == last_colon) { @@ -86,7 +86,7 @@ dns_server_addr_parse(struct dns_server *server, const char *addr) if (addr[0] == '[') { addr += 1; - char *bracket = last_colon - 1; + const char *bracket = last_colon - 1; if (*bracket != ']' || bracket == addr || !dns_server_port_parse(&port, last_colon + 1)) { return false;