Quoting Dwight Engen (dwight.en...@oracle.com): > pclose returns the exit status from wait, we need to check that to see if > the script itself failed or not. Tested a script that returned 0, 1, and > also one that did a sleep and then was killed by a signal. > > Signed-off-by: Dwight Engen <dwight.en...@oracle.com>
Acked-by: Serge E. Hallyn <serge.hal...@ubuntu.com> Thanks, Dwight! > --- > src/lxc/conf.c | 11 ++++++++++- > 1 file changed, 10 insertions(+), 1 deletion(-) > > diff --git a/src/lxc/conf.c b/src/lxc/conf.c > index c416da5..43cbbd8 100644 > --- a/src/lxc/conf.c > +++ b/src/lxc/conf.c > @@ -299,6 +299,7 @@ static int run_buffer(char *buffer) > { > FILE *f; > char *output; > + int ret; > > f = popen(buffer, "r"); > if (!f) { > @@ -318,9 +319,17 @@ static int run_buffer(char *buffer) > > free(output); > > - if (pclose(f) == -1) { > + ret = pclose(f); > + if (ret == -1) { > SYSERROR("Script exited on error"); > return -1; > + } else if (WIFEXITED(ret) && WEXITSTATUS(ret) != 0) { > + ERROR("Script exited with status %d", WEXITSTATUS(ret)); > + return -1; > + } else if (WIFSIGNALED(ret)) { > + ERROR("Script terminated by signal %d (%s)", WTERMSIG(ret), > + strsignal(WTERMSIG(ret))); > + return -1; > } > > return 0; > -- > 1.7.12.3 > > ------------------------------------------------------------------------------ Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis & visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter _______________________________________________ Lxc-devel mailing list Lxc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-devel