utilunix.c(mc_tmpdir): Check return value of getpwuid() for NULL.
[midnight-commander.git] / src / subshell.h
bloba64c3d429cdfcbab186c9365911298155393ba00
1 #ifndef __SUBSHELL_H
2 #define __SUBSHELL_H
4 /* Used to distinguish between a normal MC termination and */
5 /* one caused by typing `exit' or `logout' in the subshell */
6 #define SUBSHELL_EXIT 128
8 #ifdef HAVE_SUBSHELL_SUPPORT
10 /* If using a subshell for evaluating commands this is true */
11 extern int use_subshell;
13 /* File descriptor of the pseudoterminal used by the subshell */
14 extern int subshell_pty;
16 /* State of the subshell; see subshell.c for an explanation */
17 enum subshell_state_enum {INACTIVE, ACTIVE, RUNNING_COMMAND};
18 extern enum subshell_state_enum subshell_state;
20 /* Holds the latest prompt captured from the subshell */
21 extern char *subshell_prompt;
23 /* For the `how' argument to various functions */
24 enum {QUIETLY, VISIBLY};
26 /* Exported functions */
27 void init_subshell (void);
28 int invoke_subshell (const char *command, int how, char **new_dir);
29 int read_subshell_prompt (void);
30 void resize_subshell (void);
31 int exit_subshell (void);
32 void do_subshell_chdir (const char *directory, int update_prompt, int reset_prompt);
33 void subshell_get_console_attributes (void);
34 void sigchld_handler (int sig);
36 #else
37 #define use_subshell 0
38 #endif /* not HAVE_SUBSHELL_SUPPORT */
40 #endif /* __SUBSHELL_H */