Multiuser Environment

Correo Fernando-ruiz (E-mail) correo at
Thu Jan 18 00:03:40 UTC 2001

The initial solution is here.

  To have a local session environment to keep
  current_dir, umask, root_filesystem.

  How to resolve it?

typedef struct {
 rtems_..._t   rtems_filesystem_current;
 rtems_..._t   rtems_filesystem_root;
 rtems_..._t   rtems_filesystem_umask;
} user_env_t;

user_env_t global_user_env,
         * user_env=&global_user_env;

#define rtems_filesystem_current (user_env->rtems_filesystem_current)
#define rtems_filesystem_root    (user_env->rtems_filesystem_root)
#define rtems_filesystem_umask   (user_env->rtems_filesystem_umask)

rtems_status_code rtems_libio_set_private_env(void); /*for the current

Patching the files in c/src/lib/libc & include libio_.h ready.

A simple call to rtems_libio_set_private_env() at beginning
of the each new task ftpd session or telnetd session is only necessary.

Thanks Joel for the ideas. A simple task var and ready.

Can you say me if the name of vars & functions are correct?
Can you say me if the files patched are correct or better make a new file?
It is better don't use the patches directly.
I don't konw if they work correctly.
I include the new files modified.

Jake, Can you test this and make a chdir() in every ftpd session?

> > > >On Thu, Jan 11, 2001 at 10:05:44PM +0300, Sergei Organov wrote:
> > > > Here is the list of changes:
> > > >
> > > > - use pool of pre-created threads to handle sessions instead of
> > > >   creating/deleting threads on the fly
> > > > - LIST output is now similar to what "/bin/ls -al" would output,
> > > >   FTP clients such Netscape are happy with it.
> > > > - LIST NAME now works (both for files and directories)
> > > > - added support for NLST, CDUP, and MDTM FTP commands to make more
> > clients
> > > >   happy
> > > > - keep track of CWD for every session separately
> > > > - ability to specify root directory name for FTPD in configuration
> > FTPD
> > > >   will then create illusion for FTP clients that this is actually
> > > >   directory.

 I can't read your sources.
 Are your patches valid for all libio rtems or only for ftpd sessions?
 Can you send me the patches before a new snapshot arrives?

Saludos desde Madrid.
fernando.ruiz at
correo at

> -----Mensaje original-----
> De: Jake Janovetz [mailto:janovetz at]
> Enviado el: viernes, 29 de diciembre de 2000 18:16
> Para: Fernando RUIZ CASAS
> Asunto: Re: Multiuser Environment
> Hello Fernando,
>    These sound like pretty interesting ideas for RTEMS. A shell or
> slightly more advanced monitor would be very nice to have.  It is
> something RTEMS has lacked for some time.  In my mind, I see a
> Java applet which can connect to the device running RTEMS and get
> all sorts of task information and graphically display it.  With
> the proper hooks, both could be possible.
>    I'd like to help resolve the chdir()/getpwd() problems, but
> currently my schedule is pretty full and I don't know when I'd
> be able to work on such a project.  Please keep me posted on
> your progress, however.  My schedule changes quickly, so if I
> have time to work on something, I certainly may do so.
>     Cheers,
>     Jake

-------------- next part --------------
A non-text attachment was scrubbed...
Name: multiuser.tgz
Type: application/x-compressed
Size: 5450 bytes
Desc: not available
URL: <>

More information about the users mailing list