Adding a couple of upstream fixes for lxc:
- follow symlinks when determining if Busybox is statically linked
- don't fail for lxc.network.type = none
- don't fail if no default macvlan mode is specified

More details are available in the individual patches.

Signed-off-by: Bogdan Purcareata <[email protected]>
---
 ...ork_type-set-macvlan-default-mode-to-priv.patch | 43 ++++++++++++++++++++++
 ...-follow-symlinks-when-inspecting-busybox-.patch | 27 ++++++++++++++
 ...-Add-missing-LXC_NET_NONE-option-refactor.patch | 38 +++++++++++++++++++
 recipes-containers/lxc/lxc_1.0.0.bb                |  5 ++-
 4 files changed, 112 insertions(+), 1 deletion(-)
 create mode 100644 
recipes-containers/lxc/files/config_network_type-set-macvlan-default-mode-to-priv.patch
 create mode 100644 
recipes-containers/lxc/files/lxc-busybox-follow-symlinks-when-inspecting-busybox-.patch
 create mode 100644 
recipes-containers/lxc/files/network.c-Add-missing-LXC_NET_NONE-option-refactor.patch

diff --git 
a/recipes-containers/lxc/files/config_network_type-set-macvlan-default-mode-to-priv.patch
 
b/recipes-containers/lxc/files/config_network_type-set-macvlan-default-mode-to-priv.patch
new file mode 100644
index 0000000..8cb321b
--- /dev/null
+++ 
b/recipes-containers/lxc/files/config_network_type-set-macvlan-default-mode-to-priv.patch
@@ -0,0 +1,43 @@
+From 261658e80014c031852a024f8794dd7f2a2351ad Mon Sep 17 00:00:00 2001
+From: Bogdan Purcareata <[email protected]>
+Date: Fri, 28 Mar 2014 10:31:41 -0400
+Subject: [PATCH] config_network_type: set macvlan default mode to private
+
+If a default mode is not set, the container requires an explicit
+mode specified in the config file, otherwise creating the
+container fails.
+
+Signed-off-by: Bogdan Purcareata <[email protected]>
+Signed-off-by: Serge Hallyn <[email protected]>
+---
+ src/lxc/confile.c | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/src/lxc/confile.c b/src/lxc/confile.c
+index d6cf151..90fb344 100644
+--- a/src/lxc/confile.c
++++ b/src/lxc/confile.c
+@@ -303,6 +303,8 @@ out:
+       return ret;
+ }
+ 
++static int macvlan_mode(int *valuep, const char *value);
++
+ static int config_network_type(const char *key, const char *value,
+                              struct lxc_conf *lxc_conf)
+ {
+@@ -337,8 +339,10 @@ static int config_network_type(const char *key, const 
char *value,
+ 
+       if (!strcmp(value, "veth"))
+               netdev->type = LXC_NET_VETH;
+-      else if (!strcmp(value, "macvlan"))
++      else if (!strcmp(value, "macvlan")) {
+               netdev->type = LXC_NET_MACVLAN;
++              macvlan_mode(&netdev->priv.macvlan_attr.mode, "private");
++      }
+       else if (!strcmp(value, "vlan"))
+               netdev->type = LXC_NET_VLAN;
+       else if (!strcmp(value, "phys"))
+-- 
+1.9.rc1
+
diff --git 
a/recipes-containers/lxc/files/lxc-busybox-follow-symlinks-when-inspecting-busybox-.patch
 
b/recipes-containers/lxc/files/lxc-busybox-follow-symlinks-when-inspecting-busybox-.patch
new file mode 100644
index 0000000..6882c16
--- /dev/null
+++ 
b/recipes-containers/lxc/files/lxc-busybox-follow-symlinks-when-inspecting-busybox-.patch
@@ -0,0 +1,27 @@
+From 50dbb8209bf65e4d24ccd06d3ca05004d0ddc63c Mon Sep 17 00:00:00 2001
+From: Bogdan Purcareata <[email protected]>
+Date: Mon, 24 Mar 2014 12:43:03 -0400
+Subject: [PATCH] lxc-busybox: follow symlinks when inspecting busybox binary
+
+Signed-off-by: Bogdan Purcareata <[email protected]>
+Signed-off-by: Serge Hallyn <[email protected]>
+---
+ templates/lxc-busybox.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/templates/lxc-busybox.in b/templates/lxc-busybox.in
+index e5a512a..246e743 100644
+--- a/templates/lxc-busybox.in
++++ b/templates/lxc-busybox.in
+@@ -187,7 +187,7 @@ configure_busybox()
+         return 1
+     fi
+ 
+-    file $(which busybox) | grep -q "statically linked"
++    file -L $(which busybox) | grep -q "statically linked"
+     if [ $? -ne 0 ]; then
+         echo "warning : busybox is not statically linked."
+         echo "warning : The template script may not correctly"
+-- 
+1.9.rc1
+
diff --git 
a/recipes-containers/lxc/files/network.c-Add-missing-LXC_NET_NONE-option-refactor.patch
 
b/recipes-containers/lxc/files/network.c-Add-missing-LXC_NET_NONE-option-refactor.patch
new file mode 100644
index 0000000..81fde83
--- /dev/null
+++ 
b/recipes-containers/lxc/files/network.c-Add-missing-LXC_NET_NONE-option-refactor.patch
@@ -0,0 +1,38 @@
+From b343592b45c91db8c18e863fac5ab8eeb94445d6 Mon Sep 17 00:00:00 2001
+From: Bogdan Purcareata <[email protected]>
+Date: Wed, 26 Mar 2014 11:35:09 -0400
+Subject: [PATCH] network.c: Add missing LXC_NET_NONE option + refactor
+
+Add LXC_NET_NONE to known lxc_network_types, so parsing a config
+file with lxc.network.type = none does not result in failure
+(e.g. doc/examples/lxc-no-netns.conf). Options have also been
+reordered to match the enum in conf.h.
+
+Signed-off-by: Bogdan Purcareata <[email protected]>
+Signed-off-by: Serge Hallyn <[email protected]>
+---
+ src/lxc/network.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/lxc/network.c b/src/lxc/network.c
+index 090b9bd..a9900de 100644
+--- a/src/lxc/network.c
++++ b/src/lxc/network.c
+@@ -1202,11 +1202,12 @@ int lxc_bridge_attach(const char *bridge, const char 
*ifname)
+ }
+ 
+ static const char* const lxc_network_types[LXC_NET_MAXCONFTYPE + 1] = {
++      [LXC_NET_EMPTY]   = "empty",
+       [LXC_NET_VETH]    = "veth",
+       [LXC_NET_MACVLAN] = "macvlan",
+-      [LXC_NET_VLAN]    = "vlan",
+       [LXC_NET_PHYS]    = "phys",
+-      [LXC_NET_EMPTY]   = "empty",
++      [LXC_NET_VLAN]    = "vlan",
++      [LXC_NET_NONE]    = "none",
+ };
+ 
+ const char *lxc_net_type_to_str(int type)
+-- 
+1.9.rc1
+
diff --git a/recipes-containers/lxc/lxc_1.0.0.bb 
b/recipes-containers/lxc/lxc_1.0.0.bb
index 36ac78d..d5fc680 100644
--- a/recipes-containers/lxc/lxc_1.0.0.bb
+++ b/recipes-containers/lxc/lxc_1.0.0.bb
@@ -3,7 +3,7 @@ SECTION = "console/utils"
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
 PRIORITY = "optional"
-PR = "r3"
+PR = "r4"
 DEPENDS = "libxml2 libcap"
 RDEPENDS_${PN} = " \
                rsync \
@@ -23,6 +23,9 @@ RDEPENDS_${PN} = " \
 
 SRC_URI = "http://linuxcontainers.org/downloads/${BPN}-${PV}.tar.gz \
        file://lxc-1.0.0-disable-udhcp-from-busybox-template.patch \
+       file://config_network_type-set-macvlan-default-mode-to-priv.patch \
+       file://lxc-busybox-follow-symlinks-when-inspecting-busybox-.patch \
+       file://network.c-Add-missing-LXC_NET_NONE-option-refactor.patch \
        "
 SRC_URI[md5sum] = "87a9d168a6e55326303cce3b2cb7f82e"
 SRC_URI[sha256sum] = 
"0992212ddaad01dfe8c048e130566b73dd5f34191585f36bdac07a4f8a91f3bd"
-- 
1.9.rc1


-- 
_______________________________________________
meta-virtualization mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/meta-virtualization

Reply via email to