]> git.proxmox.com Git - mirror_lxc.git/blobdiff - src/lxc/start.h
refactor AppArmor into LSM backend, add SELinux support
[mirror_lxc.git] / src / lxc / start.h
index 4b2e2b54e16da4645373f954f510010b5d14a211..c35c5c481d791fa617dd524bcf2139dc1042bc6e 100644 (file)
@@ -4,7 +4,7 @@
  * (C) Copyright IBM Corp. 2007, 2008
  *
  * Authors:
- * Daniel Lezcano <dlezcano at fr.ibm.com>
+ * Daniel Lezcano <daniel.lezcano at free.fr>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
  *
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 #ifndef __lxc_state_h
 #define __lxc_state_h
 
+#include "config.h"
+
 #include <lxc/state.h>
 #include <sys/param.h>
 
@@ -35,6 +37,8 @@ struct lxc_operations {
        int (*post_start)(struct lxc_handler *, void *);
 };
 
+struct cgroup_desc;
+
 struct lxc_handler {
        pid_t pid;
        char *name;
@@ -46,21 +50,20 @@ struct lxc_handler {
        struct lxc_operations *ops;
        void *data;
        int sv[2];
-#if HAVE_APPARMOR
-       int aa_enabled;
-#endif
+       int pinfd;
+       const char *lxcpath;
+       struct cgroup_process_info *cgroup;
 };
 
-extern struct lxc_handler *lxc_init(const char *name, struct lxc_conf *);
+extern struct lxc_handler *lxc_init(const char *name, struct lxc_conf *, const char *);
 extern int lxc_spawn(struct lxc_handler *);
 
 extern int lxc_poll(const char *name, struct lxc_handler *handler);
 extern void lxc_abort(const char *name, struct lxc_handler *handler);
-extern void lxc_fini(const char *name, struct lxc_handler *handler);
 extern int lxc_set_state(const char *, struct lxc_handler *, lxc_state_t);
 extern int lxc_check_inherited(struct lxc_conf *conf, int fd_to_ignore);
 int __lxc_start(const char *, struct lxc_conf *, struct lxc_operations *,
-               void *);
+               void *, const char *);
 
 #endif