]> Zhao Yanbai Git Server - minix.git/commitdiff
Move MINIX reboot definitions into minix/reboot.h 12/412/2
authorDavid van Moolenbroek <david@minix3.org>
Wed, 20 Mar 2013 15:29:03 +0000 (15:29 +0000)
committerDavid van Moolenbroek <david@minix3.org>
Wed, 20 Mar 2013 16:50:01 +0000 (16:50 +0000)
Also fix a buffer overflow in commands/reboot/sh_wall.c.

Change-Id: I3a61057c4f0221d1700e14d44520b4ad17f1dbe1

16 files changed:
commands/reboot/halt.c
commands/reboot/sh_wall.c
commands/reboot/shutdown.c
distrib/sets/lists/minix/mi
drivers/tty/arch/i386/keyboard.c
include/minix/Makefile
include/minix/reboot.h [new file with mode: 0644]
include/unistd.h
kernel/arch/earm/pre_init.c
kernel/arch/i386/arch_reset.c
kernel/arch/i386/pre_init.c
kernel/main.c
man/man2/reboot.2
servers/init/init.c
servers/pm/misc.c
sys/sys/reboot.h

index dd0bff28be3087297c997fce5f9e4ff275716ea1..a03bbc148961204a1e467f2429c809b512efc513 100644 (file)
@@ -21,6 +21,7 @@
 #include <unistd.h>
 #include <sys/stat.h>
 #include <sys/wait.h>
+#include <minix/reboot.h>
 
 #include "wtmp.h"
 
index 6d836ec88cd5b6f5a1383f81e47ad1daca1e41b8..a840194932c9c4d14cf8a3b423617de11f6c5bc1 100644 (file)
@@ -29,7 +29,7 @@ char *when;                   /* When is shutdown */
 char *extra;                   /* If non-nil, why is the shutdown */
 {
   struct utmp utmp;
-  char utmptty[5 + sizeof(utmp.ut_line) + 1];
+  char utmptty[5 + sizeof(utmp.ut_line) + 2];
   char message[1024];
   struct passwd *pw;
   int utmpfd, ttyfd;
index 9c381415f091d83e981cc89e35778babc36ff13a..972f618045f9693462e35c85101e45c9fc3cc44c 100644 (file)
 #include <stdlib.h>
 #include <signal.h>
 #include <string.h>
+#include <strings.h>
 #include <unistd.h>
 #include <utmp.h>
 #include <errno.h>
+#include <minix/reboot.h>
 
 #include "wtmp.h"
 
index 40de49f87fb5d2b083699c95715016dab97c294b..6313ed29123a326acecc62b073cd55bf8b466679 100644 (file)
 ./usr/include/minix/procfs.h           minix-sys
 ./usr/include/minix/profile.h          minix-sys
 ./usr/include/minix/queryparam.h       minix-sys
+./usr/include/minix/reboot.h           minix-sys
 ./usr/include/minix/rs.h               minix-sys
 ./usr/include/minix/safecopies.h       minix-sys
 ./usr/include/minix/sched.h            minix-sys
index 181cd29f119c05076795959701071a79d47ede2e..fb02ce2a8c122f17e3d1ce77ce56d12a6c1e298f 100644 (file)
 #include <sys/select.h>
 #include <termios.h>
 #include <signal.h>
-#include <unistd.h>
 #include <machine/archtypes.h>
 #include <minix/callnr.h>
 #include <minix/com.h>
 #include <minix/input.h>
 #include <minix/keymap.h>
+#include <minix/reboot.h>
 #include "tty.h"
 #include "kernel/const.h"
 #include "kernel/config.h"
index 5f801c9633a632a8c2e35f8a074fe100deb3aab2..f648464a31ce1f330361ef6599da2eaca34ba571 100644 (file)
@@ -15,7 +15,7 @@ INCS+=        acpi.h audio_fw.h bitmap.h \
        keymap.h limits.h log.h mmio.h mount.h mthread.h minlib.h \
        netdriver.h optset.h padconf.h partition.h portio.h \
        priv.h procfs.h profile.h queryparam.h \
-       rs.h safecopies.h sched.h sef.h sffs.h \
+       reboot.h rs.h safecopies.h sched.h sef.h sffs.h \
        sound.h spin.h sys_config.h sysinfo.h \
        syslib.h sysutil.h termios.h timers.h type.h \
        tty.h u64.h usb.h usb_ch9.h vbox.h \
diff --git a/include/minix/reboot.h b/include/minix/reboot.h
new file mode 100644 (file)
index 0000000..cdf8a59
--- /dev/null
@@ -0,0 +1,15 @@
+#ifndef _MINIX_REBOOT_H
+#define _MINIX_REBOOT_H
+
+/* How to exit the system. */
+#define RBT_HALT          0    /* shut down the system */
+#define RBT_REBOOT        1    /* reboot the system */
+#define RBT_PANIC         2    /* the system panics */
+#define RBT_POWEROFF       3    /* power off, reset if not possible */
+#define RBT_RESET         4    /* hard reset the system */
+#define RBT_DEFAULT       5    /* perform the default action du jour */
+#define RBT_INVALID       6    /* first invalid reboot flag */
+
+int reboot(int);
+
+#endif /* _MINIX_REBOOT_H */
index c2e93a0876a932526e417fe9b1a6e7c3d13ea9ca..efad00e23d41d85c00f764b73f431848ce91f95b 100644 (file)
@@ -387,12 +387,8 @@ int         profil(char *, size_t, u_long, u_int);
 void    psignal(int, const char *);
 #endif /* __PSIGNAL_DECLARED */
 int     rcmd(char **, int, const char *, const char *, const char *, int *);
-#ifdef __minix
-int     reboot(int);
-#else
-int     reboot(int, char *);
-#endif
 #ifndef __minix
+int     reboot(int, char *);
 int     revoke(const char *);
 #endif
 int     rresvport(int *);
@@ -439,9 +435,4 @@ extern       char *suboptarg;       /* getsubopt(3) external variable */
 
 __END_DECLS
 
-#ifdef __minix
-/* Minix expects RBT_* flags to be included with <unistd.h> */
-#include <sys/reboot.h>
-#endif
-
 #endif /* !_UNISTD_H_ */
index af878ce3ea05170872bd09f161ea891fecb78d4e..972686d71ca3e3d90c7b624677cca0eaa5c849b9 100644 (file)
@@ -10,7 +10,7 @@
 #include <minix/com.h>
 #include <sys/types.h>
 #include <sys/param.h>
-#include <sys/reboot.h>
+#include <minix/reboot.h>
 #include "string.h"
 #include "arch_proto.h"
 #include "libexec.h"
index 2b4fc7fed4da02136f7c36dbf148870bd41eaba5..2aad6f08f8d8b9911f34d773add03725277e9bab 100644 (file)
@@ -1,7 +1,6 @@
 
 #include "kernel/kernel.h"
 
-#include <unistd.h>
 #include <ctype.h>
 #include <string.h>
 #include <machine/cmos.h>
@@ -9,6 +8,7 @@
 #include <machine/cpu.h>
 #include <minix/portio.h>
 #include <minix/cpufeature.h>
+#include <minix/reboot.h>
 #include <assert.h>
 #include <signal.h>
 #include <machine/vm.h>
index c2531b16683b0aeadacebcfd4762568e612a44f3..cd2509d718221277a4b7f44e57083940d3cc01a3 100644 (file)
@@ -10,7 +10,7 @@
 #include <minix/com.h>
 #include <sys/types.h>
 #include <sys/param.h>
-#include <sys/reboot.h>
+#include <minix/reboot.h>
 #include <machine/partition.h>
 #include "string.h"
 #include "arch_proto.h"
index 6a8f42430ed874e1a49887d9f14abfb750273146..732d7a6debef7f9062c75e326fa3973ea6816085 100644 (file)
@@ -11,7 +11,6 @@
 #include "kernel/kernel.h"
 #include <string.h>
 #include <stdlib.h>
-#include <unistd.h>
 #include <assert.h>
 #include <libexec.h>
 #include <a.out.h>
@@ -20,6 +19,7 @@
 #include <machine/vmparam.h>
 #include <minix/u64.h>
 #include <minix/type.h>
+#include <minix/reboot.h>
 #include "clock.h"
 #include "direct_utils.h"
 #include "hw_intr.h"
index f6993f5ee5b59b28e2fca775eb3d819664bbbe5d..ed433ef956e222c84edbb2a4b7f9cb8f2f74695d 100644 (file)
@@ -4,9 +4,7 @@ reboot \- close down the system or reboot
 .SH SYNTAX
 .ft B
 .nf
-#define _NETBSD_SOURCE 1
-
-#include <unistd.h>
+#include <minix/reboot.h>
 
 int reboot(int \fIhow\fP)
 .fi
@@ -26,10 +24,7 @@ on the keyboard.
 Halt the system.
 .TP
 .BI "reboot(RBT_PANIC)"
-Cause a system panic.  This is not normally done from user mode, but by
-servers using the
-.B sys_abort()
-kernel call.
+Cause a system panic.  This is not normally done from user mode.
 .TP
 .BI "reboot(RBT_POWEROFF)"
 Power off the system if possible, reset otherwise.
index f9f6499a6998d9253e94019e1970112676bd49e1..4fc9bec45a6122f0c289e4be5964b3a2f8d4c150 100644 (file)
@@ -28,6 +28,7 @@
 #include <stdlib.h>
 #include <unistd.h>
 #include <utmp.h>
+#include <minix/reboot.h>
 
 /* Different ttyent structure. */
 struct ttyent TT_REBOOT = { "console", "shutdown -d now CTRL-ALT_DEL", "-"};
index dcf535e3b80a36a417ca9b814b5f34d4f3aa7a87..c3a198b39caec861df2b70ad3c50bb84c29ec83b 100644 (file)
@@ -19,6 +19,7 @@
 #include <sys/utsname.h>
 #include <minix/com.h>
 #include <minix/config.h>
+#include <minix/reboot.h>
 #include <minix/sysinfo.h>
 #include <minix/type.h>
 #include <minix/vm.h>
index 6661e354b2d81c99a63139baaa41c0c9d6d94e77..93f7a275592f0075ec691cefec226f57a7d7c374 100644 (file)
 #ifndef _SYS_REBOOT_H_
 #define _SYS_REBOOT_H_
 
-/* LSC FIXME: what about those flags */
-/* How to exit the system or stop a server process. */
-#define RBT_HALT          0    /* shutdown and return to monitor */
-#define RBT_REBOOT        1    /* reboot the system through the monitor */
-#define RBT_PANIC         2    /* a server panics */
-#define RBT_POWEROFF       3    /* power off, reset if not possible */
-#define RBT_RESET         4    /* hard reset the system */
-#define RBT_DEFAULT       5    /* return to monitor, reset if not possible */
-#define RBT_INVALID       6    /* first invalid reboot flag */
-
 /*
  * Arguments to reboot system call.  These are passed to the boot program,
  * and then on to init.