summaryrefslogtreecommitdiffstats
path: root/src/shared/find-esp.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2022-09-19 16:50:46 +0200
committerLennart Poettering <lennart@poettering.net>2022-09-20 13:52:01 +0200
commit2b3a821f911731dec993d1591bea0bf749395d9c (patch)
treef204c3f60ca27ae501fc515f79a68b64dbedd78b /src/shared/find-esp.c
parentfind-esp: rework verify_fsroot_dir() around statx() (diff)
downloadsystemd-2b3a821f911731dec993d1591bea0bf749395d9c.tar.xz
systemd-2b3a821f911731dec993d1591bea0bf749395d9c.zip
find-esp: when searching, don't trip over inodes we expect to be dirs to be something else, just continue searching
Diffstat (limited to 'src/shared/find-esp.c')
-rw-r--r--src/shared/find-esp.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/shared/find-esp.c b/src/shared/find-esp.c
index 0708d3f57f..22e7f7472d 100644
--- a/src/shared/find-esp.c
+++ b/src/shared/find-esp.c
@@ -521,7 +521,7 @@ int find_esp_and_warn(
flags | VERIFY_ESP_SEARCHING);
if (r >= 0)
goto found;
- if (!IN_SET(r, -ENOENT, -EADDRNOTAVAIL)) /* This one is not it */
+ if (!IN_SET(r, -ENOENT, -EADDRNOTAVAIL, -ENOTDIR)) /* This one is not it */
return r;
p = mfree(p);
@@ -801,10 +801,10 @@ int find_xbootldr_and_warn(
root ? " under directory " : "",
strempty(root));
- r = verify_xbootldr(p, true, unprivileged_mode, ret_uuid, ret_devid);
+ r = verify_xbootldr(p, /* searching= */ true, unprivileged_mode, ret_uuid, ret_devid);
if (r >= 0)
goto found;
- if (!IN_SET(r, -ENOENT, -EADDRNOTAVAIL)) /* This one is not it */
+ if (!IN_SET(r, -ENOENT, -EADDRNOTAVAIL, -ENOTDIR)) /* This one is not it */
return r;
return -ENOKEY;