about summary refs log tree commit diff
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
musl-8708e137d68480f4b996bfec2cd2ca596f1105d7.tar.xz
musl-8708e137d68480f4b996bfec2cd2ca596f1105d7.zip
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);
+}