From: Renaud Métrich Date: Fri, 28 Apr 2023 11:05:37 +0000 (+0200) Subject: net/dns: Fix removal of DNS server X-Git-Tag: grub-2.12-rc1~78 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f301a9356b6338e983eae38debe69bbd3a417b1a;p=thirdparty%2Fgrub.git net/dns: Fix removal of DNS server When deleting the DNS server, we get the following error message: -------- 8< ---------------- 8< ---------------- 8< ---------------- 8< -------- grub> net_del_dns 192.168.122.1 error: ../../grub-core/net/dns.c:646:no DNS reply received. -------- 8< ---------------- 8< ---------------- 8< ---------------- 8< -------- This happens because the implementation is broken, it does a "add" internally instead of a "delete". Signed-off-by: Renaud Métrich Reviewed-by: Daniel Kiper --- diff --git a/grub-core/net/dns.c b/grub-core/net/dns.c index afa389494..e51682dc6 100644 --- a/grub-core/net/dns.c +++ b/grub-core/net/dns.c @@ -765,11 +765,14 @@ grub_cmd_del_dns (struct grub_command *cmd __attribute__ ((unused)), if (argc != 1) return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - err = grub_net_resolve_address (args[1], &server); + + err = grub_net_resolve_address (args[0], &server); if (err) return err; - return grub_net_add_dns_server (&server); + grub_net_remove_dns_server (&server); + + return GRUB_ERR_NONE; } static grub_command_t cmd, cmd_add, cmd_del, cmd_list;