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