xref: /nrf52832-nimble/rt-thread/components/net/uip/apps/telnetd/uip_shell.h (revision 104654410c56c573564690304ae786df310c91fc)
1 /**
2  * \file
3  * Interface for the Contiki shell.
4  * \author Adam Dunkels <[email protected]>
5  *
6  * Some of the functions declared in this file must be implemented as
7  * a shell back-end in the architecture specific files of a Contiki
8  * port.
9  */
10 
11 
12 /*
13  * Copyright (c) 2003, Adam Dunkels.
14  * All rights reserved.
15  *
16  * Redistribution and use in source and binary forms, with or without
17  * modification, are permitted provided that the following conditions
18  * are met:
19  * 1. Redistributions of source code must retain the above copyright
20  *    notice, this list of conditions and the following disclaimer.
21  * 2. Redistributions in binary form must reproduce the above copyright
22  *    notice, this list of conditions and the following disclaimer in the
23  *    documentation and/or other materials provided with the distribution.
24  * 3. The name of the author may not be used to endorse or promote
25  *    products derived from this software without specific prior
26  *    written permission.
27  *
28  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
29  * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
30  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
31  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
32  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
33  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
34  * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
35  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
36  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
37  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
38  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
39  *
40  * This file is part of the Contiki desktop OS.
41  *
42  * $Id: shell.h,v 1.1 2006/06/07 09:43:54 adam Exp $
43  *
44  */
45 #ifndef __SHELL_H__
46 #define __SHELL_H__
47 
48 /**
49  * Initialize the shell.
50  *
51  * Called when the shell front-end process starts. This function may
52  * be used to start listening for signals.
53  */
54 void shell_init(void);
55 
56 /**
57  * Start the shell back-end.
58  *
59  * Called by the front-end when a new shell is started.
60  */
61 void shell_start(void);
62 
63 /**
64  * Process a shell command.
65  *
66  * This function will be called by the shell GUI / telnet server whan
67  * a command has been entered that should be processed by the shell
68  * back-end.
69  *
70  * \param command The command to be processed.
71  */
72 void shell_input(char *command);
73 
74 /**
75  * Quit the shell.
76  *
77  */
78 void shell_quit(char *);
79 
80 
81 /**
82  * Print a string to the shell window.
83  *
84  * This function is implemented by the shell GUI / telnet server and
85  * can be called by the shell back-end to output a string in the
86  * shell window. The string is automatically appended with a linebreak.
87  *
88  * \param str1 The first half of the string to be output.
89  * \param str2 The second half of the string to be output.
90  */
91 void shell_output(char *str1, char *str2);
92 
93 /**
94  * Print a prompt to the shell window.
95  *
96  * This function can be used by the shell back-end to print out a
97  * prompt to the shell window.
98  *
99  * \param prompt The prompt to be printed.
100  *
101  */
102 void shell_prompt(char *prompt);
103 
104 #endif /* __SHELL_H__ */
105