summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJerome Forissier <jerome.forissier@linaro.org>2025-06-25 15:19:15 +0200
committerJerome Forissier <jerome.forissier@linaro.org>2025-07-08 11:07:37 +0200
commit1361d9f4f00ad0a6e481cc947b75e8788982878f (patch)
tree6afded8347e847baaee3a8f79e2141283d939fb2
parentd3136d22a6a26b89c62774898154b16ee37385bd (diff)
lwip: dns: do not print IP address when a variable is specified
When calling "dns <hostname> <varname>", do not print out the IP address of <hostname> onto the console. Print it only when no variable is passed. The reason is to be able to call do_dns() from another command in need of the DNS services without polluting the output. Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
-rw-r--r--cmd/lwip/dns.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/cmd/lwip/dns.c b/cmd/lwip/dns.c
index 92312eb5a9d..b5fccc7433e 100644
--- a/cmd/lwip/dns.c
+++ b/cmd/lwip/dns.c
@@ -43,8 +43,6 @@ static void dns_cb(const char *name, const ip_addr_t *ipaddr, void *arg)
if (dns_cb_arg->var)
env_set(dns_cb_arg->var, ipstr);
-
- printf("%s\n", ipstr);
}
static int dns_loop(struct udevice *udev, const char *name, const char *var)
@@ -89,8 +87,11 @@ static int dns_loop(struct udevice *udev, const char *name, const char *var)
net_lwip_remove_netif(netif);
- if (dns_cb_arg.done && dns_cb_arg.host_ipaddr.addr != 0)
+ if (dns_cb_arg.done && dns_cb_arg.host_ipaddr.addr != 0) {
+ if (!var)
+ printf("%s\n", ipaddr_ntoa(&ipaddr));
return CMD_RET_SUCCESS;
+ }
return CMD_RET_FAILURE;
}