X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=util-vserver%2Flib_internal%2Fcommand.h;h=6c4efd79e3989593dcf464c830f3ccecf46c75de;hb=e208ad853d689b2b6110bf4012f7c02478c9c4be;hp=2ab497ae27fb105629a9f7af49ae1eca8109e508;hpb=2c1727f98a042cd7277d8dc1c42c6d902f81e15a;p=util-vserver.git diff --git a/util-vserver/lib_internal/command.h b/util-vserver/lib_internal/command.h index 2ab497a..6c4efd7 100644 --- a/util-vserver/lib_internal/command.h +++ b/util-vserver/lib_internal/command.h @@ -27,18 +27,24 @@ struct Command { char const * filename; - struct Vector params; + union { + struct Vector v; + char const ** d; + } params; pid_t pid; int rc; int err; struct rusage rusage; + + enum { parNONE, parVEC, parDATA } params_style_; }; -void Command_init(struct Command *, size_t param_count); +void Command_init(struct Command *); void Command_free(struct Command *); void Command_reset(struct Command *); bool Command_exec(struct Command *, bool do_fork); void Command_appendParameter(struct Command *, char const *); +void Command_setParams(struct Command *, char const **); /** * \args do_hang when true, do not return before command exited, or * an error (e.g. signal) occured