summaryrefslogtreecommitdiff
path: root/nuttx/examples/nsh/nsh.h
diff options
context:
space:
mode:
authorpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2007-12-02 18:18:59 +0000
committerpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2007-12-02 18:18:59 +0000
commit3fd3ce2c6946e6162a2895f7e031231f64ebf6f3 (patch)
treebef21208f8dd5756a663dc937dde70fd43280be4 /nuttx/examples/nsh/nsh.h
parenteb4d3300acdff3332ca4ad06ff1a5ae3bbc1449d (diff)
downloadnuttx-3fd3ce2c6946e6162a2895f7e031231f64ebf6f3.tar.gz
nuttx-3fd3ce2c6946e6162a2895f7e031231f64ebf6f3.tar.bz2
nuttx-3fd3ce2c6946e6162a2895f7e031231f64ebf6f3.zip
Add TELNET front end to NSH
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@421 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'nuttx/examples/nsh/nsh.h')
-rw-r--r--nuttx/examples/nsh/nsh.h61
1 files changed, 47 insertions, 14 deletions
diff --git a/nuttx/examples/nsh/nsh.h b/nuttx/examples/nsh/nsh.h
index fc9f807d2..7d0179b8e 100644
--- a/nuttx/examples/nsh/nsh.h
+++ b/nuttx/examples/nsh/nsh.h
@@ -41,23 +41,30 @@
****************************************************************************/
#include <nuttx/config.h>
+#ifdef CONFIG_EXAMPLES_NSH_TELNET
+#else
+# include <stdio.h>
+#endif
/****************************************************************************
* Definitions
****************************************************************************/
+#define NSH_MAX_ARGUMENTS 6
+
#define errno (*get_errno_ptr())
/****************************************************************************
* Public Types
****************************************************************************/
-typedef void (*cmd_t)(int argc, char **argv);
+typedef void (*cmd_t)(FAR void *handle, int argc, char **argv);
/****************************************************************************
* Public Data
****************************************************************************/
+extern const char g_nshprompt[];
extern const char g_fmtargrequired[];
extern const char g_fmtarginvalid[];
extern const char g_fmtcmdnotfound[];
@@ -71,30 +78,56 @@ extern const char g_fmtcmdoutofmemory[];
* Public Function Prototypes
****************************************************************************/
+/* Message handler */
+
+extern int nsh_parse(FAR void *handle, char *cmdline);
+
+/* I/O interfaces */
+
+#ifdef CONFIG_EXAMPLES_NSH_TELNET
+
+extern int nsh_telnetmain(void);
+extern int nsh_telnetout(FAR void *handle, const char *fmt, ...);
+
+# define nsh_main() nsh_telnetmain()
+# define nsh_output(handle, ...) nsh_telnetout(handle, __VA_ARGS__)
+
+#else
+
+extern int nsh_serialmain(void);
+
+# define nsh_main() nsh_serialmain()
+# define nsh_output(handle, ...) printf(__VA_ARGS__)
+
+#endif
+
+/* Shell command handlers */
+
#if CONFIG_NFILE_DESCRIPTORS > 0
-extern void cmd_cat(int argc, char **argv);
-extern void cmd_cp(int argc, char **argv);
+extern void cmd_cat(FAR void *handle, int argc, char **argv);
+extern void cmd_cp(FAR void *handle, int argc, char **argv);
#endif
-extern void cmd_echo(int argc, char **argv);
-extern void cmd_exec(int argc, char **argv);
+extern void cmd_echo(FAR void *handle, int argc, char **argv);
+extern void cmd_exec(FAR void *handle, int argc, char **argv);
+extern void cmd_exit(FAR void *handle, int argc, char **argv);
#if CONFIG_NFILE_DESCRIPTORS > 0
-extern void cmd_ls(int argc, char **argv);
+extern void cmd_ls(FAR void *handle, int argc, char **argv);
#endif
#if !defined(CONFIG_DISABLE_MOUNTPOINT) && CONFIG_NFILE_DESCRIPTORS > 0
-extern void cmd_mkdir(int argc, char **argv);
-extern void cmd_mount(int argc, char **argv);
+extern void cmd_mkdir(FAR void *handle, int argc, char **argv);
+extern void cmd_mount(FAR void *handle, int argc, char **argv);
#endif
-extern void cmd_ps(int argc, char **argv);
+extern void cmd_ps(FAR void *handle, int argc, char **argv);
#ifndef CONFIG_DISABLE_ENVIRON
-extern void cmd_set(int argc, char **argv);
+extern void cmd_set(FAR void *handle, int argc, char **argv);
#endif
#if !defined(CONFIG_DISABLE_MOUNTPOINT) && CONFIG_NFILE_DESCRIPTORS > 0
-extern void cmd_rm(int argc, char **argv);
-extern void cmd_rmdir(int argc, char **argv);
-extern void cmd_umount(int argc, char **argv);
+extern void cmd_rm(FAR void *handle, int argc, char **argv);
+extern void cmd_rmdir(FAR void *handle, int argc, char **argv);
+extern void cmd_umount(FAR void *handle, int argc, char **argv);
#endif
#ifndef CONFIG_DISABLE_ENVIRON
-extern void cmd_unset(int argc, char **argv);
+extern void cmd_unset(FAR void *handle, int argc, char **argv);
#endif
#endif /* __NSH_H */