]> git.ipfire.org Git - thirdparty/openvpn.git/commitdiff
socket: Avoid conversion warning in get_addr_generic
authorFrank Lichtenheld <frank@lichtenheld.com>
Mon, 19 Jan 2026 12:25:51 +0000 (13:25 +0100)
committerGert Doering <gert@greenie.muc.de>
Mon, 19 Jan 2026 17:07:50 +0000 (18:07 +0100)
We already check earlier that bits is smaller that
max_bits, so the cast is safe.

While reviewing the callers, remove some unused
variables.

Change-Id: I5ad13bc6674b3403251cc552d1f2c0f057431817
Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
Acked-by: Gert Doering <gert@greenie.muc.de>
Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1475
Message-Id: <20260119122556.15225-1-gert@greenie.muc.de>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg35324.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
src/openvpn/options.c
src/openvpn/socket.c

index cede758e1983c32a79829c8837ee6aa78b354e45..85669e0f9344d3d51a60c8fbf0ebe8d510708602 100644 (file)
@@ -1144,10 +1144,7 @@ get_ipv6_addr_no_netbits(const char *addr, struct gc_arena *gc)
 static bool
 ipv6_addr_safe_hexplusbits(const char *ipv6_prefix_spec)
 {
-    struct in6_addr t_addr;
-    unsigned int t_bits;
-
-    return get_ipv6_addr(ipv6_prefix_spec, &t_addr, &t_bits, M_WARN);
+    return get_ipv6_addr(ipv6_prefix_spec, NULL, NULL, M_WARN);
 }
 
 static char *
index 093f8227165f79a2e8a62b072a32c760fc65223b..331249df12067da94cd07c182582c1bb29a9bcec 100644 (file)
@@ -72,11 +72,6 @@ sf2gaf(const unsigned int getaddr_flags, const unsigned int sockflags)
     }
 }
 
-#if defined(__GNUC__) || defined(__clang__)
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wconversion"
-#endif
-
 /*
  * Functions related to the translation of DNS names to IP addresses.
  */
@@ -180,7 +175,7 @@ get_addr_generic(sa_family_t af, unsigned int flags, const char *hostname, void
 
     if (netbits)
     {
-        *netbits = bits;
+        *netbits = (unsigned int)bits;
     }
 
     /* restore '/' separator, if any */
@@ -683,6 +678,11 @@ bind_local(struct link_socket *sock, const sa_family_t ai_family)
     }
 }
 
+#if defined(__GNUC__) || defined(__clang__)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wconversion"
+#endif
+
 static void
 create_socket(struct link_socket *sock, struct addrinfo *addr)
 {
@@ -738,6 +738,10 @@ create_socket(struct link_socket *sock, struct addrinfo *addr)
     bind_local(sock, addr->ai_family);
 }
 
+#if defined(__GNUC__) || defined(__clang__)
+#pragma GCC diagnostic pop
+#endif
+
 #ifdef TARGET_ANDROID
 static void
 protect_fd_nonlocal(int fd, const struct sockaddr *addr)
@@ -861,10 +865,6 @@ tcp_connection_established(const struct link_socket_actual *act)
     gc_free(&gc);
 }
 
-#if defined(__GNUC__) || defined(__clang__)
-#pragma GCC diagnostic pop
-#endif
-
 static socket_descriptor_t
 socket_listen_accept(socket_descriptor_t sd, struct link_socket_actual *act,
                      const struct addrinfo *local, bool do_listen,