mirror of
https://github.com/systemd/systemd-stable.git
synced 2025-01-11 05:17:44 +03:00
Add a warning about the difference in permissions between existing directories and unit settings.
To follows the intent of 30c81ce
, this change does not execute chmod() and just add warnings.
This commit is contained in:
parent
ff9e7900c0
commit
6cff72eb0a
@ -2160,8 +2160,21 @@ static int setup_exec_directory(
|
||||
r = mkdir_label(p, context->directories[type].mode);
|
||||
if (r < 0 && r != -EEXIST)
|
||||
goto fail;
|
||||
if (r == -EEXIST && !context->dynamic_user)
|
||||
continue;
|
||||
if (r == -EEXIST) {
|
||||
struct stat st;
|
||||
|
||||
if (stat(p, &st) < 0) {
|
||||
r = -errno;
|
||||
goto fail;
|
||||
}
|
||||
if (((st.st_mode ^ context->directories[type].mode) & 07777) != 0)
|
||||
log_warning("%s \'%s\' already exists but the mode is different. "
|
||||
"(filesystem: %o %sMode: %o)",
|
||||
exec_directory_type_to_string(type), *rt,
|
||||
st.st_mode & 07777, exec_directory_type_to_string(type), context->directories[type].mode & 07777);
|
||||
if (!context->dynamic_user)
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
/* Don't change the owner of the configuration directory, as in the common case it is not written to by
|
||||
|
Loading…
Reference in New Issue
Block a user