" <property name=\"SysVRcndPath\" type=\"as\" access=\"read\"/>\n" \
" <property name=\"NotifySocket\" type=\"s\" access=\"read\"/>\n" \
" <property name=\"ControlGroupHierarchy\" type=\"s\" access=\"read\"/>\n" \
+ " <property name=\"MountOnPlug\" type=\"b\" access=\"read\"/>\n" \
+ " <property name=\"SwapOnPlug\" type=\"b\" access=\"read\"/>\n" \
+ " <property name=\"MountAuto\" type=\"b\" access=\"read\"/>\n" \
" </interface>\n"
#define INTROSPECTION_BEGIN \
{ "org.freedesktop.systemd1.Manager", "SysVRcndPath", bus_property_append_strv, "as", m->lookup_paths.sysvrcnd_path },
{ "org.freedesktop.systemd1.Manager", "NotifySocket", bus_property_append_string, "s", m->notify_socket },
{ "org.freedesktop.systemd1.Manager", "ControlGroupHierarchy", bus_property_append_string, "s", m->cgroup_hierarchy },
+ { "org.freedesktop.systemd1.Manager", "MountOnPlug", bus_property_append_bool, "b", &m->mount_on_plug },
+ { "org.freedesktop.systemd1.Manager", "SwapOnPlug", bus_property_append_bool, "b", &m->swap_on_plug },
+ { "org.freedesktop.systemd1.Manager", "MountAuto", bus_property_append_bool, "b", &m->mount_auto },
{ NULL, NULL, NULL, NULL, NULL }
};
static bool arg_confirm_spawn = false;
static bool arg_show_status = true;
static bool arg_sysv_console = true;
+static bool arg_mount_on_plug = true;
+static bool arg_swap_on_plug = true;
+static bool arg_mount_auto = true;
static FILE* serialization = NULL;
static int parse_config_file(void) {
const ConfigItem items[] = {
- { "LogLevel", config_parse_level, NULL, "Manager" },
- { "LogTarget", config_parse_target, NULL, "Manager" },
- { "LogColor", config_parse_color, NULL, "Manager" },
- { "LogLocation", config_parse_location, NULL, "Manager" },
- { "DumpCore", config_parse_bool, &arg_dump_core, "Manager" },
- { "CrashShell", config_parse_bool, &arg_crash_shell, "Manager" },
- { "ShowStatus", config_parse_bool, &arg_show_status, "Manager" },
- { "SysVConsole", config_parse_bool, &arg_sysv_console,"Manager" },
- { "CrashChVT", config_parse_int, &arg_crash_chvt, "Manager" },
- { "CPUAffinity", config_parse_cpu_affinity, NULL, "Manager" },
+ { "LogLevel", config_parse_level, NULL, "Manager" },
+ { "LogTarget", config_parse_target, NULL, "Manager" },
+ { "LogColor", config_parse_color, NULL, "Manager" },
+ { "LogLocation", config_parse_location, NULL, "Manager" },
+ { "DumpCore", config_parse_bool, &arg_dump_core, "Manager" },
+ { "CrashShell", config_parse_bool, &arg_crash_shell, "Manager" },
+ { "ShowStatus", config_parse_bool, &arg_show_status, "Manager" },
+ { "SysVConsole", config_parse_bool, &arg_sysv_console, "Manager" },
+ { "CrashChVT", config_parse_int, &arg_crash_chvt, "Manager" },
+ { "CPUAffinity", config_parse_cpu_affinity, NULL, "Manager" },
+ { "MountOnPlug", config_parse_bool, &arg_mount_on_plug, "Manager" },
+ { "SwapOnPlug", config_parse_bool, &arg_swap_on_plug, "Manager" },
+ { "MountAuto", config_parse_bool, &arg_mount_auto, "Manager" },
{ NULL, NULL, NULL, NULL }
};
m->confirm_spawn = arg_confirm_spawn;
m->show_status = arg_show_status;
m->sysv_console = arg_sysv_console;
+ m->mount_on_plug = arg_mount_on_plug;
+ m->swap_on_plug = arg_swap_on_plug;
+ m->mount_auto = arg_mount_auto;
if ((r = manager_startup(m, serialization, fds)) < 0)
log_error("Failed to fully start up daemon: %s", strerror(-r));
noauto = !!mount_test_option(p->options, MNTOPT_NOAUTO);
user = mount_test_option(p->options, "user") || mount_test_option(p->options, "users");
- handle = !!mount_test_option(p->options, "comment=systemd.mount");
+ handle = !!mount_test_option(p->options, "comment=systemd.mount") ||
+ m->meta.manager->mount_auto;
automount = !!mount_test_option(p->options, "comment=systemd.automount");
if (mount_test_option(p->options, "_netdev") ||
what = m->parameters_proc_self_mountinfo.what;
if (what && !path_equal(m->where, "/"))
- if ((r = unit_add_node_link(u, what, u->meta.manager->running_as == MANAGER_SYSTEM)) < 0)
+ if ((r = unit_add_node_link(u, what,
+ u->meta.manager->running_as == MANAGER_SYSTEM &&
+ u->meta.manager->mount_on_plug)) < 0)
return r;
if ((r = mount_add_mount_links(m)) < 0)