{ "rc4.d", SPECIAL_RUNLEVEL4_TARGET, RUNLEVEL_UP },
{ "rc5.d", SPECIAL_RUNLEVEL5_TARGET, RUNLEVEL_UP },
+#ifdef TARGET_SUSE
/* SUSE style boot.d */
{ "boot.d", SPECIAL_SYSINIT_TARGET, RUNLEVEL_SYSINIT },
+#endif
+#ifdef TARGET_DEBIAN
/* Debian style rcS.d */
{ "rcS.d", SPECIAL_SYSINIT_TARGET, RUNLEVEL_SYSINIT },
+#endif
/* Standard SysV runlevels for shutdown */
{ "rc0.d", SPECIAL_POWEROFF_TARGET, RUNLEVEL_DOWN },
if (unit_name_to_type(m) == UNIT_SERVICE)
r = unit_add_name(u, m);
- else if (s->sysv_start_priority >= 0)
+ else if (s->sysv_enabled)
r = unit_add_two_dependencies_by_name_inverse(u, UNIT_AFTER, UNIT_WANTS, m, NULL, true);
else
r = unit_add_dependency_by_name_inverse(u, UNIT_AFTER, m, NULL, true);
"%sRootDirectoryStartOnly: %s\n"
"%sValidNoProcess: %s\n"
"%sType: %s\n"
+ "%sRestart: %s\n"
"%sNotifyAccess: %s\n",
prefix, service_state_to_string(s->state),
prefix, yes_no(s->permissions_start_only),
prefix, yes_no(s->root_directory_start_only),
prefix, yes_no(s->valid_no_process),
prefix, service_type_to_string(s->type),
+ prefix, service_restart_to_string(s->restart),
prefix, notify_access_to_string(s->notify_access));
if (s->control_pid > 0)
if (s->sysv_start_priority >= 0)
fprintf(f,
- "%sSysVStartPriority: %i\n",
- prefix, s->sysv_start_priority);
+ "%sSysVStartPriority: %i\n"
+ "%sSysVEnabled: %s\n",
+ prefix, s->sysv_start_priority,
+ prefix, yes_no(s->sysv_enabled));
if (s->sysv_runlevels)
fprintf(f, "%sSysVRunLevels: %s\n",
}
if (de->d_name[0] == 'S' &&
- (rcnd_table[i].type == RUNLEVEL_UP || rcnd_table[i].type == RUNLEVEL_SYSINIT))
+ (rcnd_table[i].type == RUNLEVEL_UP || rcnd_table[i].type == RUNLEVEL_SYSINIT)) {
SERVICE(service)->sysv_start_priority =
MAX(a*10 + b, SERVICE(service)->sysv_start_priority);
+ SERVICE(service)->sysv_enabled = true;
+ }
manager_dispatch_load_queue(m);
service = unit_follow_merge(service);