It doesn't make sense to error out when an app container doesn't pass explicit
arguments through c->start{l}(). This is especially true since we implemented
lxc.execute.cmd. However, even before we could have always relied on
lxc.init.cmd and errored out after that.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
return false;
}
- /* Is this app meant to be run through lxcinit, as in lxc-execute? */
- if (useinit && !argv)
- return false;
-
if (container_mem_lock(c))
return false;
conf = c->lxc_conf;
if (!handler)
return false;
- /* If no argv was passed in, use lxc.init_cmd if provided in the
- * configuration
- */
if (!argv)
argv = init_cmd = split_init_cmd(conf->init_cmd);
/* ... otherwise use default_args. */
- if (!argv)
- argv = default_args;
+ if (!argv) {
+ if (useinit)
+ return false;
+ else
+ argv = default_args;
+ }
/* I'm not sure what locks we want here.Any? Is liblxc's locking enough
* here to protect the on disk container? We don't want to exclude