From c4dc907254a4275d8f3ecd9a6b615c6e2a2438e9 Mon Sep 17 00:00:00 2001 From: Emmanuel Vadot Date: Mon, 13 Dec 2021 14:18:12 +0100 Subject: loader: lua: test that /boot exists first Otherwise on fs like tftp where no directory listing is possible we fail on the .dir method. Reviewed by: imp, kevans MFC after: 2 weeks Sponsored by: Beckhoff Automation GmbH & Co. KG Differential Revision: https://reviews.freebsd.org/D33414 --- stand/lua/core.lua | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'stand') diff --git a/stand/lua/core.lua b/stand/lua/core.lua index 55c26e0d6d39..67d51b992858 100644 --- a/stand/lua/core.lua +++ b/stand/lua/core.lua @@ -229,6 +229,13 @@ function core.kernelList() end end + -- Do not attempt to autodetect if underlying filesystem + -- do not support directory listing (e.g. tftp, http) + if not lfs.attributes("/boot", "mode") then + autodetect = "no" + loader.setenv("kernels_autodetect", "NO") + end + -- Base whether we autodetect kernels or not on a loader.conf(5) -- setting, kernels_autodetect. If it's set to 'yes', we'll add -- any kernels we detect based on the criteria described. -- cgit v1.2.3