nshlib: Call nsh_telnetstart in nsh_initialize to avoid the dupliation

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
This commit is contained in:
Xiang Xiao 2022-10-15 17:00:22 +08:00 committed by hartmannathan
parent cf70d8f95b
commit 964747dd36
5 changed files with 13 additions and 66 deletions

View File

@ -223,22 +223,6 @@ int main(int argc, FAR char *argv[])
printf("nxterm_main: Initialize NSH\n"); printf("nxterm_main: Initialize NSH\n");
nsh_initialize(); nsh_initialize();
/* If the Telnet console is selected as a front-end, then start the
* Telnet daemon.
*/
#ifdef CONFIG_NSH_TELNET
ret = nsh_telnetstart(AF_UNSPEC);
if (ret < 0)
{
/* The daemon is NOT running. Report the error then fail...
* either with the serial console up or just exiting.
*/
fprintf(stderr, "ERROR: Failed to start TELNET daemon: %d\n", ret);
}
#endif
/* NX Initialization ******************************************************/ /* NX Initialization ******************************************************/
/* Initialize NX */ /* Initialize NX */

View File

@ -653,19 +653,5 @@ bool NxWM::nshlibInitialize(void)
// Initialize the NSH library // Initialize the NSH library
nsh_initialize(); nsh_initialize();
// If the Telnet console is selected as a front-end, then start the
// Telnet daemon.
#ifdef CONFIG_NSH_TELNET
int ret = nsh_telnetstart(AF_UNSPEC);
if (ret < 0)
{
// The daemon is NOT running!
return false;
}
#endif
return true; return true;
} }

View File

@ -574,20 +574,6 @@ bool CNxTermFactory::nshlibInitialize(void)
// Initialize the NSH library // Initialize the NSH library
nsh_initialize(); nsh_initialize();
// If the Telnet console is selected as a front-end, then start the
// Telnet daemon.
#ifdef CONFIG_NSH_TELNET
int ret = nsh_telnetstart(AF_UNSPEC);
if (ret < 0)
{
// The daemon is NOT running!
return false;
}
#endif
return true; return true;
} }

View File

@ -54,7 +54,7 @@ static const struct extmatch_vtable_s g_nsh_extmatch =
* Description: * Description:
* This interface is used to initialize the NuttShell (NSH). * This interface is used to initialize the NuttShell (NSH).
* nsh_initialize() should be called once during application start-up prior * nsh_initialize() should be called once during application start-up prior
* to executing either nsh_consolemain() or nsh_telnetstart(). * to executing nsh_consolemain().
* *
* Input Parameters: * Input Parameters:
* None * None
@ -87,4 +87,16 @@ void nsh_initialize(void)
boardctl(BOARDIOC_INIT, 0); boardctl(BOARDIOC_INIT, 0);
#endif #endif
#if defined(CONFIG_NSH_TELNET) && !defined(CONFIG_NSH_DISABLE_TELNETSTART) && \
!defined(CONFIG_NETINIT_NETLOCAL)
/* If the Telnet console is selected as a front-end, then start the
* Telnet daemon UNLESS network initialization is deferred via
* CONFIG_NETINIT_NETLOCAL. In that case, the telnet daemon must be
* started manually with the telnetd command after the network has
* been initialized
*/
nsh_telnetstart(AF_UNSPEC);
#endif
} }

View File

@ -127,27 +127,6 @@ int main(int argc, FAR char *argv[])
nsh_initialize(); nsh_initialize();
#if defined(CONFIG_NSH_TELNET) && !defined(CONFIG_NSH_DISABLE_TELNETSTART) && \
!defined(CONFIG_NETINIT_NETLOCAL)
/* If the Telnet console is selected as a front-end, then start the
* Telnet daemon UNLESS network initialization is deferred via
* CONFIG_NETINIT_NETLOCAL. In that case, the telnet daemon must be
* started manually with the telnetd command after the network has
* been initialized
*/
ret = nsh_telnetstart(AF_UNSPEC);
if (ret < 0)
{
/* The daemon is NOT running. Report the error then fail...
* either with the serial console up or just exiting.
*/
fprintf(stderr, "ERROR: Failed to start TELNET daemon: %d\n", ret);
exitval = 1;
}
#endif
#ifdef CONFIG_NSH_CONSOLE #ifdef CONFIG_NSH_CONSOLE
/* If the serial console front end is selected, run it on this thread */ /* If the serial console front end is selected, run it on this thread */