#include <sys/types.h>
#include <sys/stat.h>
+#ifdef S_IEXEC
+#ifndef S_IXUSR
+#define S_IXUSR S_IEXEC
+#endif
+#ifndef S_IXGRP
+#define S_IXGRP (S_IEXEC >> 3)
+#endif
+#ifndef S_IXOTH
+#define S_IXOTH (S_IEXEC >> 6)
+#endif
+#endif /* S_IEXEC */
+
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
#endif /* not POSIX_VERSION */
#include <errno.h>
-#ifndef STDC_HEADERS
+#ifndef errno
extern int errno;
#endif
#define R_OK 4
#endif
-#include "safe-stat.h"
-
/* The user's real user id. */
static uid_t uid;
int
eaccess_stat (statp, mode, path)
- struct stat *statp;
+ const struct stat *statp;
int mode;
- char *path;
+ const char *path;
{
int granted;
int
euidaccess (path, mode)
- char *path;
+ const char *path;
int mode;
{
struct stat stats;
return access (path, mode);
}
- if (SAFE_STAT (path, &stats))
+ if (stat (path, &stats))
return -1;
return eaccess_stat (&stats, mode, path);