| Message ID | aZMIXom9GFt17IpB@8076c497f57d |
|---|---|
| State | Accepted |
| Headers | show |
| Series | [Openvpn-devel,v2,1/2] dns: fix discards 'const' qualifier from pointer target type | expand |
On Mon, Feb 16, 2026 at 12:06:54PM +0000, Rudi Heitbaum via Openvpn-devel wrote: > 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, ':'); > | ^~~~~~~ > > Signed-off-by: Rudi Heitbaum <rudi@heitbaum.com> > --- > src/openvpn/dns.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) Since upgrading the arch container yesterday we also see these in our CI builds now. Acked-by: Frank Lichtenheld <frank@lichtenheld.com> Also put this into Gerrit as https://gerrit.openvpn.net/c/openvpn/+/1542 to get test builds. Regards,
diff --git a/src/openvpn/dns.c b/src/openvpn/dns.c index c00d4b9c..38739923 100644 --- a/src/openvpn/dns.c +++ b/src/openvpn/dns.c @@ -45,7 +45,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; @@ -71,8 +71,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) { @@ -93,7 +93,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;
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, ':'); | ^~~~~~~ Signed-off-by: Rudi Heitbaum <rudi@heitbaum.com> --- src/openvpn/dns.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)