From 0d985794d9e2b92c9ae7b58c5d65d2503c283cc6 Mon Sep 17 00:00:00 2001 From: Giuseppe Scrivano Date: Sat, 20 Jun 2020 20:33:52 +0200 Subject: [PATCH 1/3] main: add error checks for workdir initialization Signed-off-by: Giuseppe Scrivano --- main.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/main.c b/main.c index a59d4e2..ab83af5 100644 --- a/main.c +++ b/main.c @@ -5232,12 +5232,16 @@ main (int argc, char *argv[]) mkdir (path, 0700); free (lo.workdir); lo.workdir = strdup (path); + if (lo.workdir == NULL) + error (EXIT_FAILURE, errno, "allocating workdir path"); lo.workdir_fd = open (lo.workdir, O_DIRECTORY); if (lo.workdir_fd < 0) error (EXIT_FAILURE, errno, "cannot open workdir"); dfd = dup (lo.workdir_fd); + if (dfd < 0) + error (EXIT_FAILURE, errno, "dup workdir file descriptor"); empty_dirfd (dfd); } From 1d8f4b529d2334bcb9a74e24302d87517c7f3c31 Mon Sep 17 00:00:00 2001 From: Giuseppe Scrivano Date: Sat, 20 Jun 2020 20:34:25 +0200 Subject: [PATCH 2/3] main: fix lookup for overflow uid we were mistakenly using the overflow GID also for UIDs lookups. Not a big issue as they usually have the same value. Signed-off-by: Giuseppe Scrivano --- main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/main.c b/main.c index ab83af5..d961ef0 100644 --- a/main.c +++ b/main.c @@ -666,7 +666,7 @@ find_mapping (unsigned int id, struct ovl_mapping *mapping, bool direct, bool ui static uid_t get_uid (struct ovl_data *data, uid_t id) { - return find_mapping (id, data->uid_mappings, false, false); + return find_mapping (id, data->uid_mappings, false, true); } static uid_t From 94ee6dce2204fbd2e8f49fc49dad6624f16f688f Mon Sep 17 00:00:00 2001 From: Giuseppe Scrivano Date: Sat, 20 Jun 2020 21:13:59 +0200 Subject: [PATCH 3/3] NEWS: tag v1.1.1 Signed-off-by: Giuseppe Scrivano --- NEWS | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/NEWS b/NEWS index 52c252d..dc5aeda 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,7 @@ +* fuse-overlayfs-1.1.1 + +- fix lookup for overflow uid when it is different than the overflow gid. + * fuse-overlayfs-1.1.0 - use openat2(2) when available.