xref: /nrf52832-nimble/rt-thread/components/net/uip/doc/html/a00107.html (revision 104654410c56c573564690304ae786df310c91fc)
1*10465441SEvalZero<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2*10465441SEvalZero<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3*10465441SEvalZero<title>uIP 1.0: apps/telnetd/shell.h File Reference</title>
4*10465441SEvalZero<link href="doxygen.css" rel="stylesheet" type="text/css">
5*10465441SEvalZero<link href="tabs.css" rel="stylesheet" type="text/css">
6*10465441SEvalZero</head><body>
7*10465441SEvalZero<!-- Generated by Doxygen 1.4.6 -->
8*10465441SEvalZero<div class="tabs">
9*10465441SEvalZero  <ul>
10*10465441SEvalZero    <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
11*10465441SEvalZero    <li><a href="modules.html"><span>Modules</span></a></li>
12*10465441SEvalZero    <li><a href="classes.html"><span>Data&nbsp;Structures</span></a></li>
13*10465441SEvalZero    <li id="current"><a href="files.html"><span>Files</span></a></li>
14*10465441SEvalZero    <li><a href="examples.html"><span>Examples</span></a></li>
15*10465441SEvalZero  </ul></div>
16*10465441SEvalZero<div class="tabs">
17*10465441SEvalZero  <ul>
18*10465441SEvalZero    <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19*10465441SEvalZero    <li><a href="globals.html"><span>Globals</span></a></li>
20*10465441SEvalZero  </ul></div>
21*10465441SEvalZero<h1>apps/telnetd/shell.h File Reference</h1><hr><a name="_details"></a><h2>Detailed Description</h2>
22*10465441SEvalZeroInterface for the Contiki shell.
23*10465441SEvalZero<p>
24*10465441SEvalZero<dl compact><dt><b>Author:</b></dt><dd>Adam Dunkels &lt;<a href="mailto:[email protected]">[email protected]</a>&gt;</dd></dl>
25*10465441SEvalZeroSome of the functions declared in this file must be implemented as a shell back-end in the architecture specific files of a Contiki port.
26*10465441SEvalZero<p>
27*10465441SEvalZeroDefinition in file <a class="el" href="a00177.html">shell.h</a>.
28*10465441SEvalZero<p>
29*10465441SEvalZero
30*10465441SEvalZero<p>
31*10465441SEvalZero<a href="a00177.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
32*10465441SEvalZero<tr><td></td></tr>
33*10465441SEvalZero<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
34*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00107.html#69b075ef7e4d7bcf5a903d3d75baac02">shell_init</a> (void)</td></tr>
35*10465441SEvalZero
36*10465441SEvalZero<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize the shell.  <a href="#69b075ef7e4d7bcf5a903d3d75baac02"></a><br></td></tr>
37*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00107.html#d1f18f739da7703628c3663209463a0d">shell_start</a> (void)</td></tr>
38*10465441SEvalZero
39*10465441SEvalZero<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Start the shell back-end.  <a href="#d1f18f739da7703628c3663209463a0d"></a><br></td></tr>
40*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00107.html#86beee1f69d05b16022dfb430470e9ce">shell_input</a> (char *command)</td></tr>
41*10465441SEvalZero
42*10465441SEvalZero<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Process a shell command.  <a href="#86beee1f69d05b16022dfb430470e9ce"></a><br></td></tr>
43*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="984c4a8b65a3cb35460b073a40568c25"></a><!-- doxytag: member="shell.h::shell_quit" ref="984c4a8b65a3cb35460b073a40568c25" args="(char *)" -->
44*10465441SEvalZerovoid&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00107.html#984c4a8b65a3cb35460b073a40568c25">shell_quit</a> (char *)</td></tr>
45*10465441SEvalZero
46*10465441SEvalZero<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Quit the shell. <br></td></tr>
47*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00107.html#f11c966b0e4f4ecaa73deb14bfb6830f">shell_output</a> (char *str1, char *str2)</td></tr>
48*10465441SEvalZero
49*10465441SEvalZero<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Print a string to the shell window.  <a href="#f11c966b0e4f4ecaa73deb14bfb6830f"></a><br></td></tr>
50*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00107.html#123c95a7bb55143cabba92446ce8f513">shell_prompt</a> (char *prompt)</td></tr>
51*10465441SEvalZero
52*10465441SEvalZero<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Print a prompt to the shell window.  <a href="#123c95a7bb55143cabba92446ce8f513"></a><br></td></tr>
53*10465441SEvalZero</table>
54*10465441SEvalZero<hr><h2>Function Documentation</h2>
55*10465441SEvalZero<a class="anchor" name="69b075ef7e4d7bcf5a903d3d75baac02"></a><!-- doxytag: member="shell.h::shell_init" ref="69b075ef7e4d7bcf5a903d3d75baac02" args="(void)" --><p>
56*10465441SEvalZero<table class="mdTable" cellpadding="2" cellspacing="0">
57*10465441SEvalZero  <tr>
58*10465441SEvalZero    <td class="mdRow">
59*10465441SEvalZero      <table cellpadding="0" cellspacing="0" border="0">
60*10465441SEvalZero        <tr>
61*10465441SEvalZero          <td class="md" nowrap valign="top">void shell_init           </td>
62*10465441SEvalZero          <td class="md" valign="top">(&nbsp;</td>
63*10465441SEvalZero          <td class="md" nowrap valign="top">void&nbsp;</td>
64*10465441SEvalZero          <td class="mdname1" valign="top" nowrap>          </td>
65*10465441SEvalZero          <td class="md" valign="top">&nbsp;)&nbsp;</td>
66*10465441SEvalZero          <td class="md" nowrap></td>
67*10465441SEvalZero        </tr>
68*10465441SEvalZero      </table>
69*10465441SEvalZero    </td>
70*10465441SEvalZero  </tr>
71*10465441SEvalZero</table>
72*10465441SEvalZero<table cellspacing="5" cellpadding="0" border="0">
73*10465441SEvalZero  <tr>
74*10465441SEvalZero    <td>
75*10465441SEvalZero      &nbsp;
76*10465441SEvalZero    </td>
77*10465441SEvalZero    <td>
78*10465441SEvalZero
79*10465441SEvalZero<p>
80*10465441SEvalZeroInitialize the shell.
81*10465441SEvalZero<p>
82*10465441SEvalZeroCalled when the shell front-end process starts. This function may be used to start listening for signals. <dl compact><dt><b>Examples: </b></dt><dd>
83*10465441SEvalZero<a class="el" href="a00044.html#a221">telnetd.c</a>.</dl>
84*10465441SEvalZero<p>
85*10465441SEvalZeroDefinition at line <a class="el" href="a00176.html#l00105">105</a> of file <a class="el" href="a00176.html">shell.c</a>.
86*10465441SEvalZero<p>
87*10465441SEvalZeroReferences <a class="el" href="a00176.html#l00105">shell_init()</a>.
88*10465441SEvalZero<p>
89*10465441SEvalZeroReferenced by <a class="el" href="a00176.html#l00105">shell_init()</a>.    </td>
90*10465441SEvalZero  </tr>
91*10465441SEvalZero</table>
92*10465441SEvalZero<a class="anchor" name="86beee1f69d05b16022dfb430470e9ce"></a><!-- doxytag: member="shell.h::shell_input" ref="86beee1f69d05b16022dfb430470e9ce" args="(char *command)" --><p>
93*10465441SEvalZero<table class="mdTable" cellpadding="2" cellspacing="0">
94*10465441SEvalZero  <tr>
95*10465441SEvalZero    <td class="mdRow">
96*10465441SEvalZero      <table cellpadding="0" cellspacing="0" border="0">
97*10465441SEvalZero        <tr>
98*10465441SEvalZero          <td class="md" nowrap valign="top">void shell_input           </td>
99*10465441SEvalZero          <td class="md" valign="top">(&nbsp;</td>
100*10465441SEvalZero          <td class="md" nowrap valign="top">char *&nbsp;</td>
101*10465441SEvalZero          <td class="mdname1" valign="top" nowrap> <em>command</em>          </td>
102*10465441SEvalZero          <td class="md" valign="top">&nbsp;)&nbsp;</td>
103*10465441SEvalZero          <td class="md" nowrap></td>
104*10465441SEvalZero        </tr>
105*10465441SEvalZero      </table>
106*10465441SEvalZero    </td>
107*10465441SEvalZero  </tr>
108*10465441SEvalZero</table>
109*10465441SEvalZero<table cellspacing="5" cellpadding="0" border="0">
110*10465441SEvalZero  <tr>
111*10465441SEvalZero    <td>
112*10465441SEvalZero      &nbsp;
113*10465441SEvalZero    </td>
114*10465441SEvalZero    <td>
115*10465441SEvalZero
116*10465441SEvalZero<p>
117*10465441SEvalZeroProcess a shell command.
118*10465441SEvalZero<p>
119*10465441SEvalZeroThis function will be called by the shell GUI / telnet server whan a command has been entered that should be processed by the shell back-end.<p>
120*10465441SEvalZero<dl compact><dt><b>Parameters:</b></dt><dd>
121*10465441SEvalZero  <table border="0" cellspacing="2" cellpadding="0">
122*10465441SEvalZero    <tr><td valign="top"></td><td valign="top"><em>command</em>&nbsp;</td><td>The command to be processed. </td></tr>
123*10465441SEvalZero  </table>
124*10465441SEvalZero</dl>
125*10465441SEvalZero<dl compact><dt><b>Examples: </b></dt><dd>
126*10465441SEvalZero<a class="el" href="a00044.html#a229">telnetd.c</a>.</dl>
127*10465441SEvalZero<p>
128*10465441SEvalZeroDefinition at line <a class="el" href="a00176.html#l00118">118</a> of file <a class="el" href="a00176.html">shell.c</a>.
129*10465441SEvalZero<p>
130*10465441SEvalZeroReferences <a class="el" href="a00176.html#l00118">shell_input()</a>.
131*10465441SEvalZero<p>
132*10465441SEvalZeroReferenced by <a class="el" href="a00176.html#l00118">shell_input()</a>.    </td>
133*10465441SEvalZero  </tr>
134*10465441SEvalZero</table>
135*10465441SEvalZero<a class="anchor" name="f11c966b0e4f4ecaa73deb14bfb6830f"></a><!-- doxytag: member="shell.h::shell_output" ref="f11c966b0e4f4ecaa73deb14bfb6830f" args="(char *str1, char *str2)" --><p>
136*10465441SEvalZero<table class="mdTable" cellpadding="2" cellspacing="0">
137*10465441SEvalZero  <tr>
138*10465441SEvalZero    <td class="mdRow">
139*10465441SEvalZero      <table cellpadding="0" cellspacing="0" border="0">
140*10465441SEvalZero        <tr>
141*10465441SEvalZero          <td class="md" nowrap valign="top">void shell_output           </td>
142*10465441SEvalZero          <td class="md" valign="top">(&nbsp;</td>
143*10465441SEvalZero          <td class="md" nowrap valign="top">char *&nbsp;</td>
144*10465441SEvalZero          <td class="mdname" nowrap> <em>str1</em>, </td>
145*10465441SEvalZero        </tr>
146*10465441SEvalZero        <tr>
147*10465441SEvalZero          <td class="md" nowrap align="right"></td>
148*10465441SEvalZero          <td class="md"></td>
149*10465441SEvalZero          <td class="md" nowrap>char *&nbsp;</td>
150*10465441SEvalZero          <td class="mdname" nowrap> <em>str2</em></td>
151*10465441SEvalZero        </tr>
152*10465441SEvalZero        <tr>
153*10465441SEvalZero          <td class="md"></td>
154*10465441SEvalZero          <td class="md">)&nbsp;</td>
155*10465441SEvalZero          <td class="md" colspan="2"></td>
156*10465441SEvalZero        </tr>
157*10465441SEvalZero      </table>
158*10465441SEvalZero    </td>
159*10465441SEvalZero  </tr>
160*10465441SEvalZero</table>
161*10465441SEvalZero<table cellspacing="5" cellpadding="0" border="0">
162*10465441SEvalZero  <tr>
163*10465441SEvalZero    <td>
164*10465441SEvalZero      &nbsp;
165*10465441SEvalZero    </td>
166*10465441SEvalZero    <td>
167*10465441SEvalZero
168*10465441SEvalZero<p>
169*10465441SEvalZeroPrint a string to the shell window.
170*10465441SEvalZero<p>
171*10465441SEvalZeroThis function is implemented by the shell GUI / telnet server and can be called by the shell back-end to output a string in the shell window. The string is automatically appended with a linebreak.<p>
172*10465441SEvalZero<dl compact><dt><b>Parameters:</b></dt><dd>
173*10465441SEvalZero  <table border="0" cellspacing="2" cellpadding="0">
174*10465441SEvalZero    <tr><td valign="top"></td><td valign="top"><em>str1</em>&nbsp;</td><td>The first half of the string to be output. </td></tr>
175*10465441SEvalZero    <tr><td valign="top"></td><td valign="top"><em>str2</em>&nbsp;</td><td>The second half of the string to be output. </td></tr>
176*10465441SEvalZero  </table>
177*10465441SEvalZero</dl>
178*10465441SEvalZero<dl compact><dt><b>Examples: </b></dt><dd>
179*10465441SEvalZero<a class="el" href="a00044.html#a215">telnetd.c</a>.</dl>
180*10465441SEvalZero<p>
181*10465441SEvalZeroDefinition at line <a class="el" href="a00178.html#l00113">113</a> of file <a class="el" href="a00178.html">telnetd.c</a>.
182*10465441SEvalZero<p>
183*10465441SEvalZeroReferences <a class="el" href="a00174.html#l00071">ISO_cr</a>, <a class="el" href="a00174.html#l00070">ISO_nl</a>, and <a class="el" href="a00172.html#l00069">NULL</a>.    </td>
184*10465441SEvalZero  </tr>
185*10465441SEvalZero</table>
186*10465441SEvalZero<a class="anchor" name="123c95a7bb55143cabba92446ce8f513"></a><!-- doxytag: member="shell.h::shell_prompt" ref="123c95a7bb55143cabba92446ce8f513" args="(char *prompt)" --><p>
187*10465441SEvalZero<table class="mdTable" cellpadding="2" cellspacing="0">
188*10465441SEvalZero  <tr>
189*10465441SEvalZero    <td class="mdRow">
190*10465441SEvalZero      <table cellpadding="0" cellspacing="0" border="0">
191*10465441SEvalZero        <tr>
192*10465441SEvalZero          <td class="md" nowrap valign="top">void shell_prompt           </td>
193*10465441SEvalZero          <td class="md" valign="top">(&nbsp;</td>
194*10465441SEvalZero          <td class="md" nowrap valign="top">char *&nbsp;</td>
195*10465441SEvalZero          <td class="mdname1" valign="top" nowrap> <em>prompt</em>          </td>
196*10465441SEvalZero          <td class="md" valign="top">&nbsp;)&nbsp;</td>
197*10465441SEvalZero          <td class="md" nowrap></td>
198*10465441SEvalZero        </tr>
199*10465441SEvalZero      </table>
200*10465441SEvalZero    </td>
201*10465441SEvalZero  </tr>
202*10465441SEvalZero</table>
203*10465441SEvalZero<table cellspacing="5" cellpadding="0" border="0">
204*10465441SEvalZero  <tr>
205*10465441SEvalZero    <td>
206*10465441SEvalZero      &nbsp;
207*10465441SEvalZero    </td>
208*10465441SEvalZero    <td>
209*10465441SEvalZero
210*10465441SEvalZero<p>
211*10465441SEvalZeroPrint a prompt to the shell window.
212*10465441SEvalZero<p>
213*10465441SEvalZeroThis function can be used by the shell back-end to print out a prompt to the shell window.<p>
214*10465441SEvalZero<dl compact><dt><b>Parameters:</b></dt><dd>
215*10465441SEvalZero  <table border="0" cellspacing="2" cellpadding="0">
216*10465441SEvalZero    <tr><td valign="top"></td><td valign="top"><em>prompt</em>&nbsp;</td><td>The prompt to be printed. </td></tr>
217*10465441SEvalZero  </table>
218*10465441SEvalZero</dl>
219*10465441SEvalZero<dl compact><dt><b>Examples: </b></dt><dd>
220*10465441SEvalZero<a class="el" href="a00044.html#a214">telnetd.c</a>.</dl>
221*10465441SEvalZero<p>
222*10465441SEvalZeroDefinition at line <a class="el" href="a00178.html#l00101">101</a> of file <a class="el" href="a00178.html">telnetd.c</a>.
223*10465441SEvalZero<p>
224*10465441SEvalZeroReferences <a class="el" href="a00172.html#l00069">NULL</a>.    </td>
225*10465441SEvalZero  </tr>
226*10465441SEvalZero</table>
227*10465441SEvalZero<a class="anchor" name="d1f18f739da7703628c3663209463a0d"></a><!-- doxytag: member="shell.h::shell_start" ref="d1f18f739da7703628c3663209463a0d" args="(void)" --><p>
228*10465441SEvalZero<table class="mdTable" cellpadding="2" cellspacing="0">
229*10465441SEvalZero  <tr>
230*10465441SEvalZero    <td class="mdRow">
231*10465441SEvalZero      <table cellpadding="0" cellspacing="0" border="0">
232*10465441SEvalZero        <tr>
233*10465441SEvalZero          <td class="md" nowrap valign="top">void shell_start           </td>
234*10465441SEvalZero          <td class="md" valign="top">(&nbsp;</td>
235*10465441SEvalZero          <td class="md" nowrap valign="top">void&nbsp;</td>
236*10465441SEvalZero          <td class="mdname1" valign="top" nowrap>          </td>
237*10465441SEvalZero          <td class="md" valign="top">&nbsp;)&nbsp;</td>
238*10465441SEvalZero          <td class="md" nowrap></td>
239*10465441SEvalZero        </tr>
240*10465441SEvalZero      </table>
241*10465441SEvalZero    </td>
242*10465441SEvalZero  </tr>
243*10465441SEvalZero</table>
244*10465441SEvalZero<table cellspacing="5" cellpadding="0" border="0">
245*10465441SEvalZero  <tr>
246*10465441SEvalZero    <td>
247*10465441SEvalZero      &nbsp;
248*10465441SEvalZero    </td>
249*10465441SEvalZero    <td>
250*10465441SEvalZero
251*10465441SEvalZero<p>
252*10465441SEvalZeroStart the shell back-end.
253*10465441SEvalZero<p>
254*10465441SEvalZeroCalled by the front-end when a new shell is started. <dl compact><dt><b>Examples: </b></dt><dd>
255*10465441SEvalZero<a class="el" href="a00044.html#a233">telnetd.c</a>.</dl>
256*10465441SEvalZero<p>
257*10465441SEvalZeroDefinition at line <a class="el" href="a00176.html#l00110">110</a> of file <a class="el" href="a00176.html">shell.c</a>.
258*10465441SEvalZero<p>
259*10465441SEvalZeroReferences <a class="el" href="a00176.html#l00110">shell_start()</a>.
260*10465441SEvalZero<p>
261*10465441SEvalZeroReferenced by <a class="el" href="a00176.html#l00110">shell_start()</a>.    </td>
262*10465441SEvalZero  </tr>
263*10465441SEvalZero</table>
264*10465441SEvalZero<hr size="1"><address style="align: right;"><small>Generated on Mon Jun 12 10:23:01 2006 for uIP 1.0 by&nbsp;
265*10465441SEvalZero<a href="http://www.doxygen.org/index.html">
266*10465441SEvalZero<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6 </small></address>
267*10465441SEvalZero</body>
268*10465441SEvalZero</html>
269