shell.h 1.2 KB

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