summaryrefslogtreecommitdiffstats
path: root/lib/shell.h
blob: 7ba82dc078e5ecb38a2e7412a796fa2ba5036522 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/** \file shell.h
 *  \brief Header: shell structure
 */

#ifndef MC_SHELL_H
#define MC_SHELL_H

/*** typedefs(not structures) and defined constants **********************************************/

/*** enums ***************************************************************************************/

typedef enum
{
    SHELL_NONE,
    SHELL_SH,
    SHELL_BASH,
    SHELL_ASH_BUSYBOX,          /* BusyBox default shell (ash) */
    SHELL_DASH,                 /* Debian variant of ash */
    SHELL_TCSH,
    SHELL_ZSH,
    SHELL_FISH
} shell_type_t;

/*** structures declarations (and typedefs of structures)*****************************************/

typedef struct
{
    shell_type_t type;
    const char *name;
    char *path;
    char *real_path;
} mc_shell_t;

/*** global variables defined in .c file *********************************************************/

/*** declarations of public functions ************************************************************/

void mc_shell_init (void);
void mc_shell_deinit (void);

/*** inline functions **************************************************/

#endif /* MC_SHELL_H */