other inits have moved to not requiring the -h flag when used with -H/-P. modify sysvinit to be the same since it really doesn't matter. https://bugs.gentoo.org/449354 patch by Doug Goldstein --- sysvinit-2.88dsf/man/shutdown.8 +++ sysvinit-2.88dsf/man/shutdown.8 @@ -66,16 +66,15 @@ .\"}}} .\"{{{ -h .IP \fB\-h\fP -Halt or power off after shutdown. +Equivalent to -P, unless -H is specified. .\"}}} .\"{{{ -P .IP \fB\-P\fP -Halt action is to turn off the power. +Action is to power-off the machine. .\"}}} .\"{{{ -H .IP \fB\-H\fP -Modifier to the -h flag. Halt action is to halt or drop into boot -monitor on systems that support it. Must be used with the -h flag. +Action is to halt the machine. .\"}}} .\"{{{ -f .IP \fB\-f\fP --- sysvinit-2.88dsf/src/shutdown.c +++ sysvinit-2.88dsf/src/shutdown.c @@ -514,9 +514,11 @@ switch(c) { case 'H': halttype = "HALT"; + down_level[0] = '0'; break; case 'P': halttype = "POWERDOWN"; + down_level[0] = '0'; break; case 'a': /* Access control. */ useacl = 1; @@ -532,6 +534,8 @@ break; case 'h': /* Halt after shutdown */ down_level[0] = '0'; + if (!halttype) + halttype = "POWERDOWN"; break; case 'f': /* Don't perform fsck after next boot */ fastboot = 1; @@ -565,12 +569,6 @@ } } - if (NULL != halttype && down_level[0] != '0') { - fprintf(stderr, "shutdown: -H and -P flags can only be used along with -h flag.\n"); - usage(); - exit(1); - } - /* Do we need to use the shutdown.allow file ? */ if (useacl && (fp = fopen(SDALLOW, "r")) != NULL) {