summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2013-12-06 21:59:01 -0500
committerRich Felker <dalias@aerifal.cx>2013-12-06 21:59:01 -0500
commit8708e137d68480f4b996bfec2cd2ca596f1105d7 (patch)
tree557cdc970bfca0581f4119d352bf01f59d3d2199
parentae71a43b02b2f672b47d305f4d15a9011756e301 (diff)
downloadmusl-8708e137d68480f4b996bfec2cd2ca596f1105d7.tar.gz
add posix_close, accepted for inclusion in the next issue of POSIX
this is purely a wrapper for close since Linux does not support EINTR semantics for the close syscall.
-rw-r--r--include/unistd.h3
-rw-r--r--src/unistd/posix_close.c6
2 files changed, 9 insertions, 0 deletions
diff --git a/include/unistd.h b/include/unistd.h
index 9f2fac96..bf10a6d1 100644
--- a/include/unistd.h
+++ b/include/unistd.h
@@ -35,6 +35,7 @@ extern "C" {
int pipe(int [2]);
int pipe2(int [2], int);
int close(int);
+int posix_close(int, int);
int dup(int);
int dup2(int, int);
int dup3(int, int, int);
@@ -200,6 +201,8 @@ int eaccess(const char *, int);
#define off64_t off_t
#endif
+#define POSIX_CLOSE_RESTART 0
+
#define _XOPEN_VERSION 700
#define _XOPEN_UNIX 1
#define _XOPEN_ENH_I18N 1
diff --git a/src/unistd/posix_close.c b/src/unistd/posix_close.c
new file mode 100644
index 00000000..90f51a82
--- /dev/null
+++ b/src/unistd/posix_close.c
@@ -0,0 +1,6 @@
+#include <unistd.h>
+
+int posix_close(int fd, int flags)
+{
+ return close(fd);
+}