Skip to content

Commit a7dd943

Browse files
authored
Merge pull request #217 from giuseppe/add-error-checks
main: fix lookup for overflow uid
2 parents b420338 + 94ee6dc commit a7dd943

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

NEWS

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
* fuse-overlayfs-1.1.1
2+
3+
- fix lookup for overflow uid when it is different than the overflow gid.
4+
15
* fuse-overlayfs-1.1.0
26

37
- use openat2(2) when available.

main.c

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -666,7 +666,7 @@ find_mapping (unsigned int id, struct ovl_mapping *mapping, bool direct, bool ui
666666
static uid_t
667667
get_uid (struct ovl_data *data, uid_t id)
668668
{
669-
return find_mapping (id, data->uid_mappings, false, false);
669+
return find_mapping (id, data->uid_mappings, false, true);
670670
}
671671

672672
static uid_t
@@ -5232,12 +5232,16 @@ main (int argc, char *argv[])
52325232
mkdir (path, 0700);
52335233
free (lo.workdir);
52345234
lo.workdir = strdup (path);
5235+
if (lo.workdir == NULL)
5236+
error (EXIT_FAILURE, errno, "allocating workdir path");
52355237

52365238
lo.workdir_fd = open (lo.workdir, O_DIRECTORY);
52375239
if (lo.workdir_fd < 0)
52385240
error (EXIT_FAILURE, errno, "cannot open workdir");
52395241

52405242
dfd = dup (lo.workdir_fd);
5243+
if (dfd < 0)
5244+
error (EXIT_FAILURE, errno, "dup workdir file descriptor");
52415245
empty_dirfd (dfd);
52425246
}
52435247

0 commit comments

Comments
 (0)