Xinu7/include/shell.h
/* shell.h */
#include <mark.h>
/* Declarations for the Xinu shell */
#define SHEXIT -5 /* shell exit return */
#define SHNAMLEN 9 /* length of user name + 1 */
#define SHBUFLEN 80 /* length of general buffer */
#define SHARGLEN 82 /* length of area for arguments */
#define SHMAXTOK 16 /* maximum tokens per line */
#define SHMLEN 12 /* maximum length of mach. name */
#define SHCMDSTK 500 /* size of command proc. stack */
#define SHCMDPRI 20 /* command process priority */
struct shvars { /* shell variables */
long shlast; /* time shell last touched */
long shlogon; /* time user logged on */
int shncmds; /* number of commands available */
MARKER shmark; /* marked if shused valid */
Bool shused; /* TRUE => user using shell */
char shuser[SHNAMLEN]; /* current user name */
char shmach[SHMLEN]; /* name of this machine */
char shbuf[SHBUFLEN]; /* general purpose buffer */
char *shtok[SHMAXTOK]; /* pointers to input tokens */
char shtktyp[SHMAXTOK]; /* type of token in shtok[i] */
char shargst[SHARGLEN]; /* actual strings of arguments */
};
extern struct shvars Shl;