chiark / gitweb /
systemctl: sort local host entry before container in list-machines output
[elogind.git] / src / nspawn / nspawn.c
index b637b51f61b8739575ec4c35239644cb793cbb2e..bb33de3b7fc7fbe90f42f44a16f28ec59ab59e0c 100644 (file)
@@ -1581,6 +1581,12 @@ static int setup_bridge(const char veth_name[]) {
                 return r;
         }
 
+        r = sd_rtnl_message_link_set_flags(m, IFF_UP, IFF_UP);
+        if (r < 0) {
+                log_error("Failed to set IFF_UP flag: %s", strerror(-r));
+                return r;
+        }
+
         r = sd_rtnl_message_append_string(m, IFLA_IFNAME, veth_name);
         if (r < 0) {
                 log_error("Failed to add netlink interface name field: %s", strerror(-r));
@@ -2368,8 +2374,6 @@ static int spawn_getent(const char *database, const char *key, pid_t *rpid) {
 }
 
 static int change_uid_gid(char **_home) {
-
-        _cleanup_strv_free_ char **passwd = NULL;
         char line[LINE_MAX], *w, *x, *state, *u, *g, *h;
         _cleanup_free_ uid_t *uids = NULL;
         _cleanup_free_ char *home = NULL;
@@ -2543,7 +2547,7 @@ static int change_uid_gid(char **_home) {
         }
 
         r = mkdir_safe(home, 0755, uid, gid);
-        if (r < 0) {
+        if (r < 0 && r != -EEXIST) {
                 log_error("Failed to make home directory: %s", strerror(-r));
                 return r;
         }