summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2021-07-06 16:41:28 +0200
committerLuca Boccassi <luca.boccassi@gmail.com>2021-07-06 20:05:00 +0100
commitb4b0f87c6275dde32769c2e75231caa1d4c21f9b (patch)
treecf6ce9a4b764bed45c0c205d1526a7e4b37e91e6
parent48e5ef14af5ade97b0f7491c63443778c7602c43 (diff)
downloadsystemd-b4b0f87c6275dde32769c2e75231caa1d4c21f9b.tar.gz
tmpfiles: fix borked assert
It seems that fd_set_perms() is always called after checking that fd >= 0 (also when called as action() in glob_item_recursively()), so it seems that the assertion really came from fd==0. Fixes #20140. Also three other similar cases are updated.
-rw-r--r--src/tmpfiles/tmpfiles.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c
index 9ffe784795..7e85c50634 100644
--- a/src/tmpfiles/tmpfiles.c
+++ b/src/tmpfiles/tmpfiles.c
@@ -883,7 +883,7 @@ static int fd_set_perms(Item *i, int fd, const char *path, const struct stat *st
int r;
assert(i);
- assert(fd);
+ assert(fd >= 0);
assert(path);
if (!i->mode_set && !i->uid_set && !i->gid_set)
@@ -1067,7 +1067,7 @@ static int fd_set_xattrs(Item *i, int fd, const char *path, const struct stat *s
char **name, **value;
assert(i);
- assert(fd);
+ assert(fd >= 0);
assert(path);
xsprintf(procfs_path, "/proc/self/fd/%i", fd);
@@ -1170,7 +1170,7 @@ static int fd_set_acls(Item *item, int fd, const char *path, const struct stat *
struct stat stbuf;
assert(item);
- assert(fd);
+ assert(fd >= 0);
assert(path);
if (!st) {
@@ -1324,7 +1324,7 @@ static int fd_set_attribute(Item *item, int fd, const char *path, const struct s
int r;
assert(item);
- assert(fd);
+ assert(fd >= 0);
assert(path);
if (!item->attribute_set || item->attribute_mask == 0)