From: Lennart Poettering Date: Sun, 14 Nov 2010 19:12:51 +0000 (+0100) Subject: tmpfiles: ignore files marked with the sticky bit X-Git-Tag: v12~39 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=9c73736da85110ca73d141b5acff6f4989092c07 tmpfiles: ignore files marked with the sticky bit --- diff --git a/TODO b/TODO index cb1296950..ca39210f1 100644 --- a/TODO +++ b/TODO @@ -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 1ad5a01ea..120236c5c 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)