From eb0a1862f49b55f9c960e3a710b20e40c6f85929 Mon Sep 17 00:00:00 2001 From: Enrico Scholz Date: Fri, 5 Mar 2004 04:43:03 +0000 Subject: [PATCH] setFlags(): implemented it git-svn-id: http://svn.linux-vserver.org/svn/util-vserver/trunk@1094 94cd875c-1c1d-0410-91d2-eb244daf1a30 --- util-vserver/src/vattribute.c | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/util-vserver/src/vattribute.c b/util-vserver/src/vattribute.c index f5cac35..c3fa730 100644 --- a/util-vserver/src/vattribute.c +++ b/util-vserver/src/vattribute.c @@ -25,8 +25,11 @@ #include #include +#include +#define ENSC_WRAPPERS_PREFIX "vattribute: " #define ENSC_WRAPPERS_VSERVER 1 +#define ENSC_WRAPPERS_UNISTD 1 #include #define CMD_HELP 0x1000 @@ -84,12 +87,24 @@ showVersion() static void setFlags(char const UNUSED *str, struct vc_ctx_flags UNUSED * flags) { - abort(); + char const *err_ptr; + size_t err_len; + int rc; + + rc = vc_list2flag(str,0, &err_ptr,&err_len, &flags->flagword, &flags->mask); + + if (rc==-1) { + WRITE_MSG(2, "Unknown flag '"); + write(2, err_ptr, err_len); + WRITE_MSG(2, "'\n"); + exit(wrapper_exit_code); + } } static void setCaps(char const UNUSED *str, struct vc_ctx_flags UNUSED * caps) { +#warning Implement me... abort(); } @@ -97,6 +112,7 @@ static void setSecure(struct vc_ctx_flags UNUSED * flags, struct vc_ctx_flags UNUSED * caps) { +#warning Implement me... abort(); } @@ -136,6 +152,8 @@ int main(int argc, char *argv[]) perror("vc_set_flags()"); // else if (vc_set_caps(xid, &args.caps)==-1) // perror("vc_set_caps()"); + else if (optind