blob: 942e301a4c035f491c6b0ffef47b8e1572312678 [file] [log] [blame]
#include <stdio.h>
#include <errno.h>
#include <fcntl.h>
#include "syscall.h"
int remove(const char *path)
{
#ifdef SYS_unlink
int r = __syscall(SYS_unlink, path);
#else
int r = __syscall(SYS_unlinkat, AT_FDCWD, path, 0);
#endif
#ifdef SYS_rmdir
if (r==-EISDIR) r = __syscall(SYS_rmdir, path);
#else
if (r==-EISDIR) r = __syscall(SYS_unlinkat, AT_FDCWD, path, AT_REMOVEDIR);
#endif
return __syscall_ret(r);
}