aboutsummaryrefslogtreecommitdiffstats
path: root/main/lxc/0001-lxc-start-add-option-p-pidfile-FILE-for-use-with-dae.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/lxc/0001-lxc-start-add-option-p-pidfile-FILE-for-use-with-dae.patch')
-rw-r--r--main/lxc/0001-lxc-start-add-option-p-pidfile-FILE-for-use-with-dae.patch142
1 files changed, 0 insertions, 142 deletions
diff --git a/main/lxc/0001-lxc-start-add-option-p-pidfile-FILE-for-use-with-dae.patch b/main/lxc/0001-lxc-start-add-option-p-pidfile-FILE-for-use-with-dae.patch
deleted file mode 100644
index 50e6cccf1c..0000000000
--- a/main/lxc/0001-lxc-start-add-option-p-pidfile-FILE-for-use-with-dae.patch
+++ /dev/null
@@ -1,142 +0,0 @@
-From 3f3c1b2ad94338ba974477f53b2ee6f462aa77ae Mon Sep 17 00:00:00 2001
-From: Natanael Copa <ncopa@alpinelinux.org>
-Date: Tue, 13 Nov 2012 13:48:57 +0100
-Subject: [PATCH] lxc-start: add option -p, --pidfile=FILE for use with
- --daemon
-
-Add option to create a pidfile for lxc-start daemon. This is helpful
-for init scripts and process monitors.
-
-Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
----
- doc/lxc-start.sgml.in | 12 ++++++++++++
- src/lxc/arguments.h | 1 +
- src/lxc/lxc_start.c | 24 ++++++++++++++++++++++++
- 3 files changed, 37 insertions(+)
-
-diff --git a/doc/lxc-start.sgml.in b/doc/lxc-start.sgml.in
-index 2b6778f..bd875d6 100644
---- a/doc/lxc-start.sgml.in
-+++ b/doc/lxc-start.sgml.in
-@@ -53,6 +53,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- <arg choice="opt">-f <replaceable>config_file</replaceable></arg>
- <arg choice="opt">-c <replaceable>console_file</replaceable></arg>
- <arg choice="opt">-d</arg>
-+ <arg choice="opt">-p <replaceable>pid_file</replaceable></arg>
- <arg choice="opt">-s KEY=VAL</arg>
- <arg choice="opt">-C</arg>
- <arg choice="opt">command</arg>
-@@ -109,6 +110,17 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
- <varlistentry>
- <term>
-+ <option>-p, --pidfile <replaceable>pid_file</replaceable></option>
-+ </term>
-+ <listitem>
-+ <para>
-+ Create a pidfile when running as daemon.
-+ </para>
-+ </listitem>
-+ </varlistentry>
-+
-+ <varlistentry>
-+ <term>
- <option>-f, --rcfile <replaceable>config_file</replaceable></option>
- </term>
- <listitem>
-diff --git a/src/lxc/arguments.h b/src/lxc/arguments.h
-index 40f0d6c..789ccd9 100644
---- a/src/lxc/arguments.h
-+++ b/src/lxc/arguments.h
-@@ -45,6 +45,7 @@ struct lxc_arguments {
- int daemonize;
- const char *rcfile;
- const char *console;
-+ const char *pidfile;
-
- /* for lxc-checkpoint/restart */
- const char *statefile;
-diff --git a/src/lxc/lxc_start.c b/src/lxc/lxc_start.c
-index 81a5774..a031ee1 100644
---- a/src/lxc/lxc_start.c
-+++ b/src/lxc/lxc_start.c
-@@ -62,6 +62,7 @@ static int my_parser(struct lxc_arguments* args, int c, char* arg)
- case 'f': args->rcfile = arg; break;
- case 'C': args->close_all_fds = 1; break;
- case 's': return lxc_config_define_add(&defines, arg);
-+ case 'p': args->pidfile = arg; break;
- }
- return 0;
- }
-@@ -72,6 +73,7 @@ static const struct option my_longopts[] = {
- {"define", required_argument, 0, 's'},
- {"console", required_argument, 0, 'c'},
- {"close-all-fds", no_argument, 0, 'C'},
-+ {"pidfile", required_argument, 0, 'p'},
- LXC_COMMON_OPTIONS
- };
-
-@@ -85,6 +87,7 @@ lxc-start start COMMAND in specified container NAME\n\
- Options :\n\
- -n, --name=NAME NAME for name of the container\n\
- -d, --daemon daemonize the container\n\
-+ -p, --pidfile=FILE Create pidfile when daemonized\n\
- -f, --rcfile=FILE Load configuration file FILE\n\
- -c, --console=FILE Set the file output for the container console\n\
- -C, --close-all-fds If any fds are inherited, close them\n\
-@@ -95,6 +98,7 @@ Options :\n\
- .parser = my_parser,
- .checker = NULL,
- .daemonize = 0,
-+ .pidfile = NULL,
- };
-
- int main(int argc, char *argv[])
-@@ -200,6 +204,7 @@ int main(int argc, char *argv[])
- }
-
- if (my_args.daemonize) {
-+ FILE *pid_fp;
- /* do an early check for needed privs, since otherwise the
- * user won't see the error */
-
-@@ -208,10 +213,26 @@ int main(int argc, char *argv[])
- return err;
- }
-
-+ if (my_args.pidfile != NULL) {
-+ pid_fp = fopen(my_args.pidfile, "w");
-+ if (pid_fp == NULL) {
-+ SYSERROR("failed to create '%s'", my_args.name);
-+ return err;
-+ }
-+ }
-+
- if (daemon(0, 0)) {
- SYSERROR("failed to daemonize '%s'", my_args.name);
- return err;
- }
-+
-+ if (my_args.pidfile != NULL) {
-+ if (fprintf(pid_fp, "%d\n", getpid()) < 0) {
-+ SYSERROR("failed to write '%s'", my_args.pidfile);
-+ return err;
-+ }
-+ fclose(pid_fp);
-+ }
- }
-
- if (my_args.close_all_fds)
-@@ -230,6 +251,9 @@ int main(int argc, char *argv[])
- err = -1;
- }
-
-+ if (my_args.daemonize && my_args.pidfile)
-+ unlink(my_args.pidfile);
-+
- return err;
- }
-
---
-1.8.0
-