X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=ensc_wrappers%2Fwrappers-vserver.hc;h=d86dbcf1c1420f1e50ff4c0f476deb6fb79e1a21;hb=484920dab2064a18ca00f7b3335ae0417c8b4034;hp=488d57da26ae1e3142919ffb0499a608069695a6;hpb=e97918417e2f91e76024bee546366f2f0d43c281;p=util-vserver.git diff --git a/ensc_wrappers/wrappers-vserver.hc b/ensc_wrappers/wrappers-vserver.hc index 488d57d..d86dbcf 100644 --- a/ensc_wrappers/wrappers-vserver.hc +++ b/ensc_wrappers/wrappers-vserver.hc @@ -49,9 +49,9 @@ Evc_get_task_nid(pid_t pid) } inline static WRAPPER_DECL xid_t -Evc_ctx_create(xid_t xid) +Evc_ctx_create(xid_t xid, struct vc_ctx_flags *flags) { - register xid_t res = vc_ctx_create(xid); + register xid_t res = vc_ctx_create(xid, flags); FatalErrnoError(res==VC_NOCTX, "vc_ctx_create()"); return res; } @@ -64,10 +64,18 @@ Evc_net_create(nid_t nid) return res; } +inline static WRAPPER_DECL tag_t +Evc_tag_create(tag_t tag) +{ + register tag_t res = vc_tag_create(tag); + FatalErrnoError(res==VC_NOCTX, "vc_tag_create()"); + return res; +} + inline static WRAPPER_DECL void -Evc_ctx_migrate(xid_t xid) +Evc_ctx_migrate(xid_t xid, uint_least64_t flags) { - FatalErrnoError(vc_ctx_migrate(xid)==-1, "vc_ctx_migrate()"); + FatalErrnoError(vc_ctx_migrate(xid, flags)==-1, "vc_ctx_migrate()"); } inline static WRAPPER_DECL void @@ -77,6 +85,12 @@ Evc_net_migrate(nid_t nid) } inline static WRAPPER_DECL void +Evc_tag_migrate(tag_t tag) +{ + FatalErrnoError(vc_tag_migrate(tag)==-1, "vc_tag_migrate()"); +} + +inline static WRAPPER_DECL void Evc_get_cflags(xid_t xid, struct vc_ctx_flags *flags) { FatalErrnoError(vc_get_cflags(xid, flags)==-1, "vc_get_cflags()"); @@ -132,15 +146,15 @@ Evc_set_ncaps(nid_t nid, struct vc_net_caps const *caps) } inline static WRAPPER_DECL void -Evc_set_namespace() +Evc_set_namespace(xid_t xid, uint_least64_t mask) { - FatalErrnoError(vc_set_namespace()==-1, "vc_set_namespace()"); + FatalErrnoError(vc_set_namespace(xid, mask)==-1, "vc_set_namespace()"); } inline static WRAPPER_DECL void -Evc_enter_namespace(xid_t xid) +Evc_enter_namespace(xid_t xid, uint_least64_t mask) { - FatalErrnoError(vc_enter_namespace(xid)==-1, "vc_enter_namespace()"); + FatalErrnoError(vc_enter_namespace(xid, mask)==-1, "vc_enter_namespace()"); } inline static WRAPPER_DECL xid_t @@ -180,3 +194,15 @@ Evc_nidopt2nid(char const *id, bool honor_static) } return rc; } + +inline static WRAPPER_DECL tag_t +Evc_tagopt2tag(char const *id, bool honor_static) +{ + char const * err; + tag_t rc = vc_tagopt2tag(id, honor_static, &err); + if (__builtin_expect(rc==VC_NOCTX,0)) { + ENSC_DETAIL1(msg, "vc_tagopt2tag", id, 1); + FatalErrnoErrorFail(msg); + } + return rc; +}