diff options
-rw-r--r-- | TODO | 2 | ||||
-rw-r--r-- | src/tmpfiles.c | 7 |
2 files changed, 7 insertions, 2 deletions
@@ -78,8 +78,6 @@ * in the PAM module rely on loginuid to figure out XDG_RUNTIME_DIR -* tmpfiles: skip sticky files and after wallclock time change - Pre v12: * fsck-root.service/start gets queued twice diff --git a/src/tmpfiles.c b/src/tmpfiles.c index 1ad5a01eab..120236c5cc 100644 --- a/src/tmpfiles.c +++ b/src/tmpfiles.c @@ -182,6 +182,13 @@ static int dir_cleanup( } } else { + /* Skip files for which the sticky bit is + * set. These are semantics we define, and are + * unknown elsewhere. See XDG_RUNTIME_DIR + * specification for details. */ + if (s.st_mode & S_ISVTX) + continue; + if (mountpoint) { if (streq(dent->d_name, ".journal") && s.st_uid == 0) |