WRITE_MSG(fd,
" --set [--xid <xid>] [--bcap [~!]<cap>] [--ccap [~!]<cap>] [--flag [~!]<flag>] [--secure] -- [<program> <args>*]\n"
"\n"
- " --bcap <cap> ... system capability to be removed\n"
+ " --bcap <cap> ... system capability to be added\n"
" --cap <cap> ... context capability to be added\n"
"\n"
"Please report bugs to " PACKAGE_BUGREPORT "\n");
struct vc_err_listparser err;
int rc;
- rc = vc_list2flag(str,0, &err, flags);
+ rc = vc_list2cflag(str,0, &err, flags);
if (rc==-1) {
WRITE_MSG(2, "Unknown flag '");
parseSecure(struct vc_ctx_flags UNUSED * flags,
struct vc_ctx_caps UNUSED * caps)
{
- caps->ccaps = ~0ull;
+ caps->ccaps = ~vc_get_insecureccaps();
caps->cmask = ~0ull;
- caps->bcaps = vc_get_securecaps();
+ caps->bcaps = ~vc_get_insecurebcaps();
caps->bmask = ~0ull;
+
+ // TODO: generalize this
+ flags->flagword = VC_VXF_HIDE_NETIF;
+ flags->mask = VC_VXF_HIDE_NETIF;
}
int main(int argc, char *argv[])
}
if (args.xid==VC_NOCTX) args.xid = Evc_get_task_xid(0);
- args.caps.bcaps = ~args.caps.bcaps;
if ((args.caps.cmask || args.caps.bmask) &&
vc_set_ccaps(args.xid, &args.caps)==-1)
perror(ENSC_WRAPPERS_PREFIX "vc_set_ccaps()");
else if (args.flags.mask &&
- vc_set_flags(args.xid, &args.flags)==-1)
+ vc_set_cflags(args.xid, &args.flags)==-1)
perror(ENSC_WRAPPERS_PREFIX "vc_set_flags()");
else if (optind<argc)
EexecvpD(argv[optind], argv+optind);