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