summaryrefslogtreecommitdiffstats
path: root/cpukit/libmisc/shell
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2009-02-19 18:54:00 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2009-02-19 18:54:00 +0000
commit4e54befe7b96360378df3a5367e8af946780ef44 (patch)
tree7a7413c47d703779f67ae314b671c872d6834ecd /cpukit/libmisc/shell
parentRegenerate. (diff)
downloadrtems-4e54befe7b96360378df3a5367e8af946780ef44.tar.bz2
2009-02-19 Joel Sherrill <joel.sherrill@oarcorp.com>
* libmisc/Makefile.am, libmisc/shell/shellconfig.h: Add halt command to shell which results in the shutting RTEMS down. * libmisc/shell/main_halt.c: New file.
Diffstat (limited to 'cpukit/libmisc/shell')
-rw-r--r--cpukit/libmisc/shell/main_halt.c41
-rw-r--r--cpukit/libmisc/shell/shellconfig.h6
2 files changed, 47 insertions, 0 deletions
diff --git a/cpukit/libmisc/shell/main_halt.c b/cpukit/libmisc/shell/main_halt.c
new file mode 100644
index 0000000000..060a74695a
--- /dev/null
+++ b/cpukit/libmisc/shell/main_halt.c
@@ -0,0 +1,41 @@
+/*
+ * Halt Command Implementation
+ *
+ * Author: Fernando RUIZ CASAS
+ * Work: fernando.ruiz@ctv.es
+ * Home: correo@fernando-ruiz.com
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ *
+ * $Id$
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <stdlib.h>
+
+#include <rtems.h>
+#include <rtems/shell.h>
+#include "internal.h"
+
+int rtems_shell_main_halt(
+ int argc __attribute__((unused)),
+ char *argv[] __attribute__((unused))
+)
+{
+ exit(0);
+ return 0;
+}
+
+rtems_shell_cmd_t rtems_shell_HALT_Command = {
+ "halt", /* name */
+ "halt", /* usage */
+ "rtems", /* topic */
+ rtems_shell_main_halt, /* command */
+ NULL, /* alias */
+ NULL /* next */
+};
diff --git a/cpukit/libmisc/shell/shellconfig.h b/cpukit/libmisc/shell/shellconfig.h
index 8b34cd04d4..f064617b06 100644
--- a/cpukit/libmisc/shell/shellconfig.h
+++ b/cpukit/libmisc/shell/shellconfig.h
@@ -54,6 +54,7 @@ extern rtems_shell_cmd_t rtems_shell_MOUNT_Command;
extern rtems_shell_cmd_t rtems_shell_UNMOUNT_Command;
extern rtems_shell_cmd_t rtems_shell_BLKSYNC_Command;
+extern rtems_shell_cmd_t rtems_shell_HALT_Command;
extern rtems_shell_cmd_t rtems_shell_CPUUSE_Command;
extern rtems_shell_cmd_t rtems_shell_STACKUSE_Command;
extern rtems_shell_cmd_t rtems_shell_PERIODUSE_Command;
@@ -305,6 +306,11 @@ extern rtems_shell_filesystems_t *rtems_shell_Mount_filesystems[];
* RTEMS Related commands
*/
#if (defined(CONFIGURE_SHELL_COMMANDS_ALL) && \
+ !defined(CONFIGURE_SHELL_NO_COMMAND_HALT)) || \
+ defined(CONFIGURE_SHELL_COMMAND_HALT)
+ &rtems_shell_HALT_Command,
+ #endif
+ #if (defined(CONFIGURE_SHELL_COMMANDS_ALL) && \
!defined(CONFIGURE_SHELL_NO_COMMAND_CPUUSE)) || \
defined(CONFIGURE_SHELL_COMMAND_CPUUSE)
&rtems_shell_CPUUSE_Command,