dae832
From 103cf5a3f83406f4a22b8d1899518e5fa4a351d8 Mon Sep 17 00:00:00 2001
dae832
From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
dae832
Date: Tue, 15 Feb 2022 11:46:06 +0400
dae832
Subject: [PATCH] Replace deprecated inet_ntoa with safer inet_ntop
dae832
MIME-Version: 1.0
dae832
Content-Type: text/plain; charset=UTF-8
dae832
Content-Transfer-Encoding: 8bit
dae832
dae832
inet_ntoa() is a legacy API with MT issues. Use the recommended
dae832
alternative instead. This makes some code checkers happy, and could
dae832
potentially fix issues if other parts of the process were to use
dae832
inet_ntoa() at the same time..
dae832
dae832
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
dae832
---
dae832
 main.c | 20 ++++++++++----------
dae832
 1 file changed, 10 insertions(+), 10 deletions(-)
dae832
dae832
diff --git a/main.c b/main.c
dae832
index c79508e10f4d..2c38dc0da1af 100644
dae832
--- a/main.c
dae832
+++ b/main.c
dae832
@@ -257,6 +257,7 @@ static int recvfd(int sock)
dae832
 static int parent(int sock, int ready_fd, int exit_fd, const char *api_socket,
dae832
                   struct slirp4netns_config *cfg, pid_t target_pid)
dae832
 {
dae832
+    char str[INET6_ADDRSTRLEN];
dae832
     int rc, tapfd;
dae832
     if ((tapfd = recvfd(sock)) < 0) {
dae832
         return tapfd;
dae832
@@ -265,23 +266,22 @@ static int parent(int sock, int ready_fd, int exit_fd, const char *api_socket,
dae832
     close(sock);
dae832
     printf("Starting slirp\n");
dae832
     printf("* MTU:             %d\n", cfg->mtu);
dae832
-    printf("* Network:         %s\n", inet_ntoa(cfg->vnetwork));
dae832
-    printf("* Netmask:         %s\n", inet_ntoa(cfg->vnetmask));
dae832
-    printf("* Gateway:         %s\n", inet_ntoa(cfg->vhost));
dae832
-    printf("* DNS:             %s\n", inet_ntoa(cfg->vnameserver));
dae832
-    printf("* Recommended IP:  %s\n", inet_ntoa(cfg->recommended_vguest));
dae832
+    printf("* Network:         %s\n", inet_ntop(AF_INET, &cfg->vnetwork, str, sizeof(str)));
dae832
+    printf("* Netmask:         %s\n", inet_ntop(AF_INET, &cfg->vnetmask, str, sizeof(str)));
dae832
+    printf("* Gateway:         %s\n", inet_ntop(AF_INET, &cfg->vhost, str, sizeof(str)));
dae832
+    printf("* DNS:             %s\n", inet_ntop(AF_INET, &cfg->vnameserver, str, sizeof(str)));
dae832
+    printf("* Recommended IP:  %s\n", inet_ntop(AF_INET, &cfg->recommended_vguest, str, sizeof(str)));
dae832
     if (api_socket != NULL) {
dae832
         printf("* API Socket:      %s\n", api_socket);
dae832
     }
dae832
 #if SLIRP_CONFIG_VERSION_MAX >= 2
dae832
     if (cfg->enable_outbound_addr) {
dae832
         printf("* Outbound IPv4:    %s\n",
dae832
-               inet_ntoa(cfg->outbound_addr.sin_addr));
dae832
+               inet_ntop(AF_INET, &cfg->outbound_addr.sin_addr, str, sizeof(str)));
dae832
     }
dae832
     if (cfg->enable_outbound_addr6) {
dae832
-        char str[INET6_ADDRSTRLEN];
dae832
-        if (inet_ntop(AF_INET6, &cfg->outbound_addr6.sin6_addr, str,
dae832
-                      INET6_ADDRSTRLEN) != NULL) {
dae832
+        if (inet_ntop(AF_INET6, &cfg->outbound_addr6.sin6_addr,
dae832
+                      str, sizeof(str)) != NULL) {
dae832
             printf("* Outbound IPv6:    %s\n", str);
dae832
         }
dae832
     }
dae832
@@ -290,7 +290,7 @@ static int parent(int sock, int ready_fd, int exit_fd, const char *api_socket,
dae832
         printf(
dae832
             "WARNING: 127.0.0.1:* on the host is accessible as %s (set "
dae832
             "--disable-host-loopback to prohibit connecting to 127.0.0.1:*)\n",
dae832
-            inet_ntoa(cfg->vhost));
dae832
+            inet_ntop(AF_INET, &cfg->vhost, str, sizeof(str)));
dae832
     }
dae832
     if (cfg->enable_sandbox && geteuid() != 0) {
dae832
         if ((rc = nsenter(target_pid, NULL, NULL, true)) < 0) {
dae832
-- 
dae832
2.34.1.428.gdcc0cd074f0c
dae832