return res;
}
+inline static WRAPPER_DECL int
+EopenD(char const *fname, int flags, mode_t mode)
+{
+ ENSC_DETAIL1(msg, "open", fname, 1);
+
+ {
+ int res = open(fname, flags, mode);
+ FatalErrnoError(res==-1, msg);
+ return res;
+ }
+}
+
+
inline static WRAPPER_DECL void
Emkdir(const char *pathname, mode_t mode)
{
FatalErrnoError(mkdir(pathname,mode)==-1, "mkdir()");
}
+
+inline static WRAPPER_DECL void
+EmkdirD(const char *pathname, mode_t mode)
+{
+ ENSC_DETAIL1(msg, "mkdir", pathname, 1);
+ FatalErrnoError(mkdir(pathname,mode)==-1, msg);
+}
FatalErrnoErrorFail("execvp()");
}
+inline static WRAPPER_DECL NORETURN void
+EexecvpD(char const *path, char *argv[])
+{
+ execvp(path,argv);
+ {
+ ENSC_DETAIL1(msg, "execvp", path, 1);
+ FatalErrnoErrorFail(msg);
+ }
+}
+
inline static WRAPPER_DECL void
Epipe(int filedes[2])
{
}
inline static WRAPPER_DECL void
+EreadlinkD(const char *path, char *buf, size_t bufsiz)
+{
+ ENSC_DETAIL1(msg, "readlink", path, 1);
+ FatalErrnoError(readlink(path, buf, bufsiz)==-1, msg);
+}
+
+inline static WRAPPER_DECL void
Esymlink(const char *oldpath, const char *newpath)
{
FatalErrnoError(symlink(oldpath, newpath)==-1, "symlink()");
}
inline static WRAPPER_DECL void
+EsymlinkD(const char *oldpath, const char *newpath)
+{
+ ENSC_DETAIL2(msg, "symlink", oldpath, newpath, 1, 1);
+ FatalErrnoError(symlink(oldpath, newpath)==-1, msg);
+}
+
+inline static WRAPPER_DECL void
Eunlink(char const *pathname)
{
FatalErrnoError(unlink(pathname)==-1, "unlink()");