chiark / gitweb /
nspawn: Fix erroneous OOM when building group list
[elogind.git] / src / nspawn / nspawn.c
index 9a9ed9dc6e0f7e3e6d2759b6ce50711697c194d9..0bd52da56843df40b31cd6227f4a6747491b6c8c 100644 (file)
@@ -1486,13 +1486,7 @@ static int setup_veth(pid_t pid, char iface_name[IFNAMSIZ]) {
                 return r;
         }
 
-        r = sd_rtnl_message_append_string(m, IFLA_INFO_KIND, "veth");
-        if (r < 0) {
-                log_error("Failed to append netlink kind: %s", strerror(-r));
-                return r;
-        }
-
-        r = sd_rtnl_message_open_container(m, IFLA_INFO_DATA);
+        r = sd_rtnl_message_open_container_union(m, IFLA_INFO_DATA, "veth");
         if (r < 0) {
                 log_error("Failed to open netlink container: %s", strerror(-r));
                 return r;
@@ -1757,13 +1751,7 @@ static int setup_macvlan(pid_t pid) {
                         return r;
                 }
 
-                r = sd_rtnl_message_append_string(m, IFLA_INFO_KIND, "macvlan");
-                if (r < 0) {
-                        log_error("Failed to append netlink kind: %s", strerror(-r));
-                        return r;
-                }
-
-                r = sd_rtnl_message_open_container(m, IFLA_INFO_DATA);
+                r = sd_rtnl_message_open_container_union(m, IFLA_INFO_DATA, "macvlan");
                 if (r < 0) {
                         log_error("Failed to open netlink container: %s", strerror(-r));
                         return r;
@@ -2378,7 +2366,7 @@ static int change_uid_gid(char **_home) {
         _cleanup_fclose_ FILE *f = NULL;
         _cleanup_close_ int fd = -1;
         unsigned n_uids = 0;
-        size_t sz, l;
+        size_t sz = 0, l;
         uid_t uid;
         gid_t gid;
         pid_t pid;