#include "tesh.h"
typedef enum {e_output_check, e_output_display, e_output_ignore} e_output_handling_t;
-
+
typedef struct {
/* kind of job */
int is_background:1;
int is_empty:1;
int is_stoppable:1;
-
+
int brokenpipe:1;
int timeout:1;
int reader_done:1; /* reader set this to true when he's done because
the child is dead. The main thread use it to detect
that the child is not dead before the end of timeout */
-
+
int interrupted:1; /* Whether we got stopped by an armageddon */
- xbt_os_mutex_t interruption; /* To allow main thread to kill a runner
+ xbt_os_mutex_t interruption; /* To allow main thread to kill a runner
one only at certain points */
e_output_handling_t output;
-
+
int status;
/* expected results */
/* module mgmt */
void rctx_init(void);
void rctx_exit(void);
-
+
/* wait for all currently running background jobs */
void rctx_wait_bg(void);
void rctx_free(rctx_t rctx);
void rctx_empty(rctx_t rc); /*reset to empty*/
void rctx_dump(rctx_t rctx,const char *str);
-
-
+
+
/* Launch the current command */
void rctx_start(void);
/* Wait till the end of this command */