From: Christian Brauner Date: Fri, 7 Aug 2015 23:31:21 +0000 (+0200) Subject: Make LXC_CLONE_KEEPNAME work X-Git-Tag: lxc-2.0.0.beta1~191^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=eab218fbf7c70ab3143440ef1165e5bdd4f51a71;p=thirdparty%2Flxc.git Make LXC_CLONE_KEEPNAME work Passing the LXC_CLONE_KEEPNAME flag to do_lxcapi_clone() was not respected. We wrap clear_unexp_config_line() and set_config_item_line() in an appropriate if-condition. Signed-off-by: Christian Brauner --- diff --git a/src/lxc/lxccontainer.c b/src/lxc/lxccontainer.c index 1c103e828..bf942ac1f 100644 --- a/src/lxc/lxccontainer.c +++ b/src/lxc/lxccontainer.c @@ -2906,12 +2906,15 @@ static struct lxc_container *do_lxcapi_clone(struct lxc_container *c, const char if (ret < 0) goto out; - clear_unexp_config_line(c2->lxc_conf, "lxc.utsname", false); // update utsname - if (!set_config_item_locked(c2, "lxc.utsname", newname)) { - ERROR("Error setting new hostname"); - goto out; + if (!(flags & LXC_CLONE_KEEPNAME)) { + clear_unexp_config_line(c2->lxc_conf, "lxc.utsname", false); + + if (!set_config_item_locked(c2, "lxc.utsname", newname)) { + ERROR("Error setting new hostname"); + goto out; + } } // copy hooks