projects
/
musl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
remove use of endian.h from arch reloc.h headers, clean up
[musl]
/
src
/
dirent
/
opendir.c
diff --git
a/src/dirent/opendir.c
b/src/dirent/opendir.c
index
cefe6ce
..
5cb84e3
100644
(file)
--- a/
src/dirent/opendir.c
+++ b/
src/dirent/opendir.c
@@
-1,23
+1,19
@@
#define _GNU_SOURCE
#include <dirent.h>
#include <fcntl.h>
#define _GNU_SOURCE
#include <dirent.h>
#include <fcntl.h>
-#include <sys/stat.h>
-#include <errno.h>
#include <stdlib.h>
#include <stdlib.h>
-#include <unistd.h>
-#include <limits.h>
#include "__dirent.h"
#include "__dirent.h"
+#include "syscall.h"
DIR *opendir(const char *name)
{
int fd;
DIR *dir;
DIR *opendir(const char *name)
{
int fd;
DIR *dir;
- if ((fd = open(name, O_RDONLY|O_DIRECTORY)) < 0)
+ if ((fd = open(name, O_RDONLY|O_DIRECTORY
|O_CLOEXEC
)) < 0)
return 0;
return 0;
- fcntl(fd, F_SETFD, FD_CLOEXEC);
if (!(dir = calloc(1, sizeof *dir))) {
if (!(dir = calloc(1, sizeof *dir))) {
-
close(
fd);
+
__syscall(SYS_close,
fd);
return 0;
}
dir->fd = fd;
return 0;
}
dir->fd = fd;