1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
|
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
---
man/shutdown.8 | 8 +++-----
src/shutdown.c | 12 ++++--------
2 files changed, 7 insertions(+), 13 deletions(-)
--- sysvinit-2.92/man/shutdown.8
+++ sysvinit-2.92/man/shutdown.8
@@ -66,17 +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
-Modifier to the -h flag. Halt action is to turn off the power.
-Must be used with the -h flag.
+Action is to turn off the power.
.\"}}}
.\"{{{ -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 or drop into boot monitor on systems that support it.
.\"}}}
.\"{{{ -f
.IP \fB\-f\fP
--- sysvinit-2.92/src/shutdown.c
+++ sysvinit-2.92/src/shutdown.c
@@ -135,9 +135,7 @@
"\t\t -r: reboot after shutdown.\n"
"\t\t -h: halt after shutdown.\n"
"\t\t -P: halt action is to turn off power.\n"
- "\t\t can only be used along with -h flag.\n"
"\t\t -H: halt action is to just halt.\n"
- "\t\t can only be used along with -h flag.\n"
"\t\t -f: do a 'fast' reboot (skip fsck).\n"
"\t\t -F: Force fsck on reboot.\n"
"\t\t -n: do not go through \"init\" but go down real fast.\n"
@@ -546,9 +544,11 @@
switch(c) {
case 'H':
halttype = "HALT";
+ down_level[0] = '0';
break;
case 'P':
halttype = "POWEROFF";
+ down_level[0] = '0';
break;
case 'a': /* Access control. */
useacl = 1;
@@ -564,6 +564,8 @@
break;
case 'h': /* Halt after shutdown */
down_level[0] = '0';
+ if (!halttype)
+ halttype = "POWEROFF";
break;
case 'f': /* Don't perform fsck after next boot */
fastboot = 1;
@@ -603,12 +605,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) {
|