diff --git a/grub-core/net/net.c b/grub-core/net/net.c index 26a1fc3fc..10773fc34 100644 --- a/grub-core/net/net.c +++ b/grub-core/net/net.c @@ -1346,6 +1346,15 @@ grub_net_open_real (const char *name) continue; } + if (grub_strncmp (prefdev, "pxe", sizeof ("pxe") - 1) == 0 && + (!prefdev[sizeof ("pxe") - 1] || (prefdev[sizeof("pxe") - 1] == ':'))) + { + grub_free (prefdev); + prefdev = grub_strdup ("tftp"); + if (!prefdev) + continue; + } + comma = grub_strchr (prefdev, ','); if (comma) *comma = '\0';