mirror of
https://github.com/systemd/systemd.git
synced 2024-12-23 21:35:11 +03:00
tmpfiles,sysusers: disable --image= support in standalone versions
Fixes #17278.
This commit is contained in:
parent
d2ec13fa8a
commit
3537577c37
@ -3058,6 +3058,7 @@ if enable_sysusers
|
||||
'systemd-sysusers.standalone',
|
||||
'src/sysusers/sysusers.c',
|
||||
include_directories : includes,
|
||||
c_args : '-DSTANDALONE',
|
||||
link_with : [libshared_static,
|
||||
libbasic,
|
||||
libbasic_gcrypt,
|
||||
@ -3100,6 +3101,7 @@ if conf.get('ENABLE_TMPFILES') == 1
|
||||
'systemd-tmpfiles.standalone',
|
||||
systemd_tmpfiles_sources,
|
||||
include_directories : includes,
|
||||
c_args : '-DSTANDALONE',
|
||||
link_with : [libshared_static,
|
||||
libbasic,
|
||||
libbasic_gcrypt,
|
||||
|
@ -1825,10 +1825,15 @@ static int parse_argv(int argc, char *argv[]) {
|
||||
break;
|
||||
|
||||
case ARG_IMAGE:
|
||||
#ifdef STANDALONE
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EOPNOTSUPP),
|
||||
"This systemd-sysusers version is compiled without support for --image=.");
|
||||
#else
|
||||
r = parse_path_argument_and_warn(optarg, /* suppress_root= */ false, &arg_image);
|
||||
if (r < 0)
|
||||
return r;
|
||||
break;
|
||||
#endif
|
||||
|
||||
case ARG_REPLACE:
|
||||
if (!path_is_absolute(optarg) ||
|
||||
@ -1916,9 +1921,11 @@ static int read_config_files(char **args) {
|
||||
}
|
||||
|
||||
static int run(int argc, char *argv[]) {
|
||||
#ifndef STANDALONE
|
||||
_cleanup_(loop_device_unrefp) LoopDevice *loop_device = NULL;
|
||||
_cleanup_(decrypted_image_unrefp) DecryptedImage *decrypted_image = NULL;
|
||||
_cleanup_(umount_and_rmdir_and_freep) char *unlink_dir = NULL;
|
||||
#endif
|
||||
_cleanup_close_ int lock = -1;
|
||||
Item *i;
|
||||
int r;
|
||||
@ -1938,6 +1945,7 @@ static int run(int argc, char *argv[]) {
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
#ifndef STANDALONE
|
||||
if (arg_image) {
|
||||
assert(!arg_root);
|
||||
|
||||
@ -1954,6 +1962,9 @@ static int run(int argc, char *argv[]) {
|
||||
if (!arg_root)
|
||||
return log_oom();
|
||||
}
|
||||
#else
|
||||
assert(!arg_image);
|
||||
#endif
|
||||
|
||||
/* If command line arguments are specified along with --replace, read all
|
||||
* configuration files and insert the positional arguments at the specified
|
||||
|
@ -3105,11 +3105,15 @@ static int parse_argv(int argc, char *argv[]) {
|
||||
break;
|
||||
|
||||
case ARG_IMAGE:
|
||||
#ifdef STANDALONE
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EOPNOTSUPP),
|
||||
"This systemd-tmpfiles version is compiled without support for --image=.");
|
||||
#else
|
||||
r = parse_path_argument_and_warn(optarg, /* suppress_root= */ false, &arg_image);
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
/* Imply -E here since it makes little sense to create files persistently in the /run mointpoint of a disk image */
|
||||
#endif
|
||||
/* Imply -E here since it makes little sense to create files persistently in the /run mountpoint of a disk image */
|
||||
_fallthrough_;
|
||||
|
||||
case 'E':
|
||||
@ -3331,9 +3335,11 @@ DEFINE_PRIVATE_HASH_OPS_WITH_VALUE_DESTRUCTOR(item_array_hash_ops, char, string_
|
||||
ItemArray, item_array_free);
|
||||
|
||||
static int run(int argc, char *argv[]) {
|
||||
#ifndef STANDALONE
|
||||
_cleanup_(loop_device_unrefp) LoopDevice *loop_device = NULL;
|
||||
_cleanup_(decrypted_image_unrefp) DecryptedImage *decrypted_image = NULL;
|
||||
_cleanup_(umount_and_rmdir_and_freep) char *unlink_dir = NULL;
|
||||
#endif
|
||||
_cleanup_strv_free_ char **config_dirs = NULL;
|
||||
bool invalid_config = false;
|
||||
ItemArray *a;
|
||||
@ -3393,6 +3399,7 @@ static int run(int argc, char *argv[]) {
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
#ifndef STANDALONE
|
||||
if (arg_image) {
|
||||
assert(!arg_root);
|
||||
|
||||
@ -3409,6 +3416,9 @@ static int run(int argc, char *argv[]) {
|
||||
if (!arg_root)
|
||||
return log_oom();
|
||||
}
|
||||
#else
|
||||
assert(!arg_image);
|
||||
#endif
|
||||
|
||||
items = ordered_hashmap_new(&item_array_hash_ops);
|
||||
globs = ordered_hashmap_new(&item_array_hash_ops);
|
||||
|
Loading…
Reference in New Issue
Block a user