X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=ensc_wrappers%2Fwrappers-vserver.hc;h=c134c35fbbf2f4613bdb3fb203523b92b16adadb;hb=38c8dfe96049ba7e5af1e909e9e9cefe4b66369d;hp=0c59a8ccd72ada44607763f66d3ce188b856adfb;hpb=9c78378bebc1a9f3d400f422df8ede9efea57dea;p=util-vserver.git diff --git a/ensc_wrappers/wrappers-vserver.hc b/ensc_wrappers/wrappers-vserver.hc index 0c59a8c..c134c35 100644 --- a/ensc_wrappers/wrappers-vserver.hc +++ b/ensc_wrappers/wrappers-vserver.hc @@ -40,18 +40,54 @@ Evc_get_task_xid(pid_t pid) return res; } +inline static WRAPPER_DECL nid_t +Evc_get_task_nid(pid_t pid) +{ + register nid_t res = vc_get_task_nid(pid); + FatalErrnoError(res==VC_NOCTX, "vc_get_task_nid()"); + return res; +} + 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; } +inline static WRAPPER_DECL nid_t +Evc_net_create(nid_t nid) +{ + register nid_t res = vc_net_create(nid); + FatalErrnoError(res==VC_NOCTX, "vc_net_create()"); + 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, uint_least64_t flags) +{ + FatalErrnoError(vc_ctx_migrate(xid, flags)==-1, "vc_ctx_migrate()"); +} + +inline static WRAPPER_DECL void +Evc_net_migrate(nid_t nid) +{ + FatalErrnoError(vc_net_migrate(nid)==-1, "vc_net_migrate()"); +} + inline static WRAPPER_DECL void -Evc_ctx_migrate(xid_t xid) +Evc_tag_migrate(tag_t tag) { - FatalErrnoError(vc_ctx_migrate(xid)==-1, "vc_ctx_migrate()"); + FatalErrnoError(vc_tag_migrate(tag)==-1, "vc_tag_migrate()"); } inline static WRAPPER_DECL void @@ -67,6 +103,18 @@ Evc_set_cflags(xid_t xid, struct vc_ctx_flags const *flags) } inline static WRAPPER_DECL void +Evc_get_nflags(nid_t nid, struct vc_net_flags *flags) +{ + FatalErrnoError(vc_get_nflags(nid, flags)==-1, "vc_get_nflags()"); +} + +inline static WRAPPER_DECL void +Evc_set_nflags(nid_t nid, struct vc_net_flags const *flags) +{ + FatalErrnoError(vc_set_nflags(nid, flags)==-1, "vc_set_nflags()"); +} + +inline static WRAPPER_DECL void Evc_set_vhi_name(xid_t xid, vc_uts_type type, char const *val, size_t len) { @@ -86,15 +134,27 @@ Evc_set_ccaps(xid_t xid, struct vc_ctx_caps const *caps) } inline static WRAPPER_DECL void -Evc_set_namespace() +Evc_get_ncaps(nid_t nid, struct vc_net_caps *caps) { - FatalErrnoError(vc_set_namespace()==-1, "vc_set_namespace()"); + FatalErrnoError(vc_get_ncaps(nid, caps)==-1, "vc_get_ncaps()"); } inline static WRAPPER_DECL void -Evc_enter_namespace(xid_t xid) +Evc_set_ncaps(nid_t nid, struct vc_net_caps const *caps) { - FatalErrnoError(vc_enter_namespace(xid)==-1, "vc_enter_namespace()"); + FatalErrnoError(vc_set_ncaps(nid, caps)==-1, "vc_set_ncaps()"); +} + +inline static WRAPPER_DECL void +Evc_set_namespace(xid_t xid, uint_least64_t mask, uint32_t index) +{ + FatalErrnoError(vc_set_namespace(xid, mask, index)==-1, "vc_set_namespace()"); +} + +inline static WRAPPER_DECL void +Evc_enter_namespace(xid_t xid, uint_least64_t mask, uint32_t index) +{ + FatalErrnoError(vc_enter_namespace(xid, mask, index)==-1, "vc_enter_namespace()"); } inline static WRAPPER_DECL xid_t @@ -122,3 +182,27 @@ Evc_xidopt2xid(char const *id, bool honor_static) return rc; } + +inline static WRAPPER_DECL nid_t +Evc_nidopt2nid(char const *id, bool honor_static) +{ + char const * err; + nid_t rc = vc_nidopt2nid(id, honor_static, &err); + if (__builtin_expect(rc==VC_NOCTX,0)) { + ENSC_DETAIL1(msg, "vc_nidopt2nid", id, 1); + FatalErrnoErrorFail(msg); + } + 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; +}