tmpfiles: move validation/normalization of path before we use it

We need to normalize/validate the path (i.e. first column) of
tmpfiles.d/ lines before we start using the path, otherwise we'll use it
before it's known to be good. This matters since for some line types the
path is mangled into the argument column (i.e. sevents column), and we
should only do that once we know it's in a good state.
This commit is contained in:
Lennart Poettering
2022-08-26 11:11:48 +02:00
parent ce610af143
commit 35c18a51f5
+8 -8
View File
@@ -3082,6 +3082,14 @@ static int parse_line(
if (r < 0)
return r;
if (!path_is_absolute(i.path)) {
*invalid_config = true;
return log_syntax(NULL, LOG_ERR, fname, line, SYNTHETIC_ERRNO(EBADMSG),
"Path '%s' not absolute.", i.path);
}
path_simplify(i.path);
switch (i.type) {
case CREATE_DIRECTORY:
@@ -3238,14 +3246,6 @@ static int parse_line(
"Unknown command type '%c'.", (char) i.type);
}
if (!path_is_absolute(i.path)) {
*invalid_config = true;
return log_syntax(NULL, LOG_ERR, fname, line, SYNTHETIC_ERRNO(EBADMSG),
"Path '%s' not absolute.", i.path);
}
path_simplify(i.path);
if (!should_include_path(i.path))
return 0;