replace all remaining internal uses of pthread_self with __pthread_self
[oweals/musl.git] / src / stdio / remove.c
1 #include <stdio.h>
2 #include <errno.h>
3 #include <fcntl.h>
4 #include "syscall.h"
5
6 int remove(const char *path)
7 {
8 #ifdef SYS_unlink
9         int r = __syscall(SYS_unlink, path);
10 #else
11         int r = __syscall(SYS_unlinkat, AT_FDCWD, path, 0);
12 #endif
13 #ifdef SYS_rmdir
14         if (r==-EISDIR) r = __syscall(SYS_rmdir, path);
15 #else
16         if (r==-EISDIR) r = __syscall(SYS_unlinkat, AT_FDCWD, path, AT_REMOVEDIR);
17 #endif
18         return __syscall_ret(r);
19 }