From 4187a7dbbe793cffaef2399b42aa557f21aa750b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dag-Erling=20Sm=C3=B8rgrav?= Date: Tue, 12 Mar 2024 20:40:36 +0100 Subject: [PATCH] ping: Fix protocol selection with NOINET6 kernel. A missing else caused the correct resolver hint (AF_INET) to be overwritten with AF_UNSPEC when the kernel supports IPv4 but not IPv6. MFC after: 3 days PR: 277592 Sponsored by: NetApp, Inc. Sponsored by: Klara, Inc. Reviewed by: allanjude Differential Revision: https://reviews.freebsd.org/D44304 (cherry picked from commit b53ae8a8333d730bb977276c511743b98c881423) --- sbin/ping/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/ping/main.c b/sbin/ping/main.c index 2e2d3170fd13..c91959e35634 100644 --- a/sbin/ping/main.c +++ b/sbin/ping/main.c @@ -126,7 +126,7 @@ main(int argc, char *argv[]) hints.ai_socktype = SOCK_RAW; if (feature_present("inet") && !feature_present("inet6")) hints.ai_family = AF_INET; - if (feature_present("inet6") && !feature_present("inet")) + else if (feature_present("inet6") && !feature_present("inet")) hints.ai_family = AF_INET6; else hints.ai_family = AF_UNSPEC;