1 /** \file shell.h 2 * \brief Header: shell structure 3 */ 4 5 #ifndef MC_SHELL_H 6 #define MC_SHELL_H 7 8 /*** typedefs(not structures) and defined constants **********************************************/ 9 10 /*** enums ***************************************************************************************/ 11 12 typedef enum 13 { 14 SHELL_NONE, 15 SHELL_SH, 16 SHELL_BASH, 17 SHELL_ASH_BUSYBOX, /* BusyBox default shell (ash) */ 18 SHELL_DASH, /* Debian variant of ash */ 19 SHELL_TCSH, 20 SHELL_ZSH, 21 SHELL_FISH, 22 SHELL_KSH, /* Public Domain Korn shell (pdksh) and variants */ 23 SHELL_MKSH /* MirBSD Korn shell (mksh) */ 24 } shell_type_t; 25 26 /*** structures declarations (and typedefs of structures)*****************************************/ 27 28 typedef struct 29 { 30 shell_type_t type; 31 const char *name; 32 char *path; 33 char *real_path; 34 } mc_shell_t; 35 36 /*** global variables defined in .c file *********************************************************/ 37 38 /*** declarations of public functions ************************************************************/ 39 40 void mc_shell_init (void); 41 void mc_shell_deinit (void); 42 43 /*** inline functions **************************************************/ 44 45 #endif /* MC_SHELL_H */