RTEMS shell and telnetd
Sebastian Huber
sebastian.huber at embedded-brains.de
Wed May 28 15:13:01 UTC 2014
Hello Peter,
On 2014-05-28 17:04, Peter Dufault wrote:
> I'm figuring out how we're supposed to hook telnetd and RTEMS shell together in the git head and I don't understand the intent. I used to do it like this:
>
> static void sh_wrap(char *unused_dev, void *arg)
> {
> rtems_shell_env_t my_env = rtems_global_shell_env;
> my_env.forever = false;
> (void)rtems_shell_main_loop( &my_env );
> }
>
> rtems_telnetd_config_table rtems_telnetd_config = {
> sh_wrap, /* Command */
> NULL, /* Argument */
> 0, /* Priority */
> 20 * RTEMS_MINIMUM_STACK_SIZE, /* task stack size */
> 0, /* Login check */
> 0 /* Keep stdio of the caller */
> };
>
> and later call:
>
> rtems_telnetd_initialize();
>
> "rtems_global_shell_env" is no longer global. "rtems_shell_init_env()" which would initialize a rtems_shell_env_t is not global. "rtems_shell_get_current_env()" won't work outside of a shell context. Passing 0 to rtems_shell_main_loop(0) will get the default settings for the shell env, so forever will be set true and I won't be able to exit the session.
>
> Am I missing something or is the intention I set up a "my_env" myself? rtems_shell_env_t is still global.
since so many user stumble over this problem I think we should bring this
global rtems_global_shell_env back as a read-only variable simply to initialize
rtems_shell_env_t variables.
--
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : sebastian.huber at embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
More information about the users
mailing list