From 97b6f55662934542ede155282bcc4dc541c3517f Mon Sep 17 00:00:00 2001 From: Enrico Scholz Date: Wed, 24 Mar 2004 04:41:38 +0000 Subject: [PATCH] Evc_xidopt2xid(): added git-svn-id: http://svn.linux-vserver.org/svn/util-vserver/trunk@1342 94cd875c-1c1d-0410-91d2-eb244daf1a30 --- util-vserver/ensc_wrappers/wrappers-vserver.hc | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/util-vserver/ensc_wrappers/wrappers-vserver.hc b/util-vserver/ensc_wrappers/wrappers-vserver.hc index f6c2b00..b630211 100644 --- a/util-vserver/ensc_wrappers/wrappers-vserver.hc +++ b/util-vserver/ensc_wrappers/wrappers-vserver.hc @@ -82,3 +82,29 @@ Evc_set_ccaps(xid_t xid, struct vc_ctx_caps const *caps) { FatalErrnoError(vc_set_ccaps(xid, caps)==-1, "vc_set_ccaps()"); } + +inline static WRAPPER_DECL xid_t +Evc_xidopt2xid(char const *id, bool honor_static) +{ + char const * err; + xid_t rc = vc_xidopt2xid(id, honor_static, &err); + if (__builtin_expect(rc==VC_NOCTX,0)) { + ENSC_DETAIL1(msg, "vc_xidopt2xid", id, 1); +#if 1 + FatalErrnoErrorFail(msg); +#else + { + size_t l1 = strlen(msg); + size_t l2 = strlen(err); + char buf[l1 + l2 + sizeof(": ")]; + memcpy(buf, msg, l1); + memcpy(buf+l1, ": ", 2); + memcpy(buf+l1+2, err, l2+1); + + FatalErrnoErrorFail(buf); + } +#endif + } + + return rc; +} -- 1.8.1.5