X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=util-vserver%2Fensc_wrappers%2Fwrappers-unistd.hc;h=c1e2b9f700f5cbb108bd2cc1f2d5f036e3f9b2d3;hb=ccc9b7f2f2574a4f50fcf8b1e13dbacbd6b1ddc2;hp=2aa6ff712ea8f23b176c4c11e66ae30101fe668e;hpb=c66b2f97361761b8a87058dc7a49ab59d4520556;p=util-vserver.git diff --git a/util-vserver/ensc_wrappers/wrappers-unistd.hc b/util-vserver/ensc_wrappers/wrappers-unistd.hc index 2aa6ff7..c1e2b9f 100644 --- a/util-vserver/ensc_wrappers/wrappers-unistd.hc +++ b/util-vserver/ensc_wrappers/wrappers-unistd.hc @@ -43,10 +43,28 @@ Echroot(char const path[]) FatalErrnoError(chroot(path)==-1, "chroot()"); } -inline static WRAPPER_DECL void +inline static WRAPPER_DECL NORETURN void Eexecv(char const *path, char *argv[]) { - FatalErrnoError(execv(path,argv)==-1, "execv()"); + execv(path,argv); + FatalErrnoErrorFail("execv()"); +} + +inline static WRAPPER_DECL NORETURN void +Eexecvp(char const *path, char *argv[]) +{ + execvp(path,argv); + 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 @@ -89,12 +107,26 @@ Ereadlink(const char *path, char *buf, size_t bufsiz) } 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()");