aboutsummaryrefslogtreecommitdiffstats
path: root/awk.h
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2016-04-07 21:46:44 +0300
committerArnold D. Robbins <arnold@skeeve.com>2016-04-07 21:46:44 +0300
commit658ede8ca657fe56c7ea6b0a3a1bd89fb858d26d (patch)
tree928465fc4f72e2467451cf774d8dd96fdb958927 /awk.h
parent82dec6932ed868d9466d23ac5956e09594707dd2 (diff)
downloadegawk-658ede8ca657fe56c7ea6b0a3a1bd89fb858d26d.tar.gz
egawk-658ede8ca657fe56c7ea6b0a3a1bd89fb858d26d.tar.bz2
egawk-658ede8ca657fe56c7ea6b0a3a1bd89fb858d26d.zip
Fix race condition in fatal errors for one end closed on two way pipe.
Diffstat (limited to 'awk.h')
-rw-r--r--awk.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/awk.h b/awk.h
index c74c6881..86c8883d 100644
--- a/awk.h
+++ b/awk.h
@@ -1501,6 +1501,8 @@ extern struct redirect *redirect(NODE *redir_exp, int redirtype, int *errflg);
extern NODE *do_close(int nargs);
extern int flush_io(void);
extern int close_io(bool *stdio_problem);
+typedef enum { CLOSE_ALL, CLOSE_TO, CLOSE_FROM } two_way_close_type;
+extern int close_rp(struct redirect *rp, two_way_close_type how);
extern int devopen_simple(const char *name, const char *mode, bool try_real_open);
extern int devopen(const char *name, const char *mode);
extern int srcopen(SRCFILE *s);