9
0
Fork 0

Re-verficatin of examples/telnetd after refactoring of fgets/readline functionality

git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@4358 7fd9a85b-ad96-42d3-883c-3090e2eb8679
This commit is contained in:
patacongo 2012-02-01 21:10:40 +00:00
parent c2360c0f71
commit c424509a60
3 changed files with 37 additions and 2 deletions

View File

@ -417,6 +417,19 @@ examples/nsh
CONFIGURED_APPS += tftp
CONFIGURED_APPS += webclient
If the Telnet console is enabled, then the appconfig file (apps/.config)
should also include:
CONFIGURED_APPS += netutils/telnetd
Also if the Telnet console is enabled, make sure that you have the
following set in the NuttX configuration file or else the performance
will be very bad (because there will be only one character per TCP
transfer):
CONFIG_STDIO_BUFFER_SIZE - Some value >= 64
CONFIG_STDIO_LINEBUFFER=y
examples/nx
^^^^^^^^^^^
@ -932,6 +945,19 @@ examples/telnetd
10.0.0.1
CONFIG_EXAMPLE_TELNETD_NETMASK - The network mask. Default: 255.255.255.0
The appconfig file (apps/.config) should include:
CONFIGURED_APPS += examples/telnetd
CONFIGURED_APPS += netutils/uiplib
CONFIGURED_APPS += netutils/telnetd
Also, make sure that you have the following set in the NuttX configuration
file or else the performance will be very bad (because there will be only
one character per TCP transfer):
CONFIG_STDIO_BUFFER_SIZE - Some value >= 64
CONFIG_STDIO_LINEBUFFER=y
examples/thttpd
^^^^^^^^^^^^^^^

View File

@ -44,8 +44,11 @@
#include <stdlib.h>
#include <string.h>
#include <net/if.h>
#include <apps/netutils/telnetd.h>
#include <apps/netutils/uiplib.h>
#include "shell.h"
/****************************************************************************

View File

@ -518,8 +518,12 @@ static int telnetd_close(FAR struct file *filep)
psock_close(&priv->td_psock);
/* Release the driver memory. What if there are threads
* waiting on td_exclsem? They will never be awakened!
/* Release the driver memory. What if there are threads waiting on
* td_exclsem? They will never be awakened! How could this happen?
* crefs == 1 so there are no other open references to the driver.
* But this could have if someone were trying to re-open the driver
* after every other thread has closed it. That really should not
* happen in the intended usage model.
*/
DEBUGASSERT(priv->td_exclsem.semcount == 0);
@ -733,6 +737,8 @@ FAR char *telnetd_driver(int sd, FAR struct telnetd_s *daemon)
/* Initialize the allocated driver instance */
sem_init(&priv->td_exclsem, 0, 1);
priv->td_state = STATE_NORMAL;
priv->td_crefs = 0;
priv->td_pending = 0;